
Ganz gleich, ob Sie als Wissenschaftler Forschungsideen sammeln oder als CEO eine Aufgabe im Private- oder Finanzwesen automatisieren möchten: Sie werden feststellen, dass Werkzeuge der künstlichen Intelligenz zu Assistenten werden, von denen Sie nicht wussten, dass Sie sie brauchen. Insbesondere viele Fachleute sind es die Talente erschließen von halbautonomen Softwaresystemen, sogenannten KI-Agenten, die an bestimmten Stellen auf KI zurückgreifen können, um Probleme zu lösen und Aufgaben zu erledigen.
KI-Agenten sind besonders effektiv, wenn sie große Sprachmodelle (LLMs) verwenden, da diese Systeme leistungsstark, effizient und anpassungsfähig sind. Eine Möglichkeit, eine solche Technologie zu programmieren, besteht darin, im Code zu beschreiben, was Ihr System tun soll (den „Workflow“), einschließlich der Verwendung eines LLM. Wenn Sie als Softwareunternehmen versuchen würden, Ihre alte Codebasis zu überarbeiten, um für bessere Optimierungen und Sicherheit eine modernere Programmiersprache zu verwenden, könnten Sie ein System erstellen, das ein LLM verwendet, um die Codebasis Datei für Datei zu übersetzen und dabei jede Datei zu testen.
Aber was passiert, wenn LLMs Fehler machen? Sie möchten, dass der Agent einen Rückzieher macht und einen weiteren Versuch unternimmt und dabei die Lehren aus früheren Fehlern einbezieht. Die Codierung kann genauso viel Aufwand erfordern wie die Implementierung des ursprünglichen Agenten. Wenn Ihr System zum Übersetzen einer Codebasis Tausende von Zeilen Code enthalten würde, würden Sie Tausende Zeilen Codeänderungen oder -ergänzungen vornehmen, um die Logik für das Backtracking zu unterstützen, wenn LLMs Fehler machen.
Um Programmierern Zeit und Mühe zu sparen, haben Forscher des Pc Science and Synthetic Intelligence Laboratory (CSAIL) des MIT und von Asari AI dies getan entwickelte ein Framework namens „EnCompass“.
Mit EnCompass müssen Sie diese Änderungen nicht mehr selbst vornehmen. Stattdessen führt EnCompass beim Ausführen Ihres Programms automatisch einen Backtrack aus, wenn LLMs Fehler machen. EnCompass kann auch Klone der Programmlaufzeit erstellen, um auf der Suche nach der besten Lösung mehrere Versuche parallel durchzuführen. Generell durchsucht EnCompass die verschiedenen möglichen Pfade, die Ihr Agent aufgrund der unterschiedlichen möglichen Ausgaben aller LLM-Aufrufe einschlagen könnte, und sucht nach dem Pfad, auf dem der LLM die beste Lösung findet.
Anschließend müssen Sie nur noch die Orte mit Anmerkungen versehen, an denen Sie die Programmlaufzeit möglicherweise zurückverfolgen oder klonen möchten, und alle Informationen aufzeichnen, die für die Strategie nützlich sein könnten, mit der die verschiedenen möglichen Ausführungspfade Ihres Agenten durchsucht werden (die Suchstrategie). Anschließend können Sie die Suchstrategie separat festlegen – Sie können entweder eine verwenden, die EnCompass standardmäßig bereitstellt, oder bei Bedarf Ihre eigene benutzerdefinierte Suchstrategie implementieren.
„Mit EnCompass haben wir die Suchstrategie vom zugrunde liegenden Arbeitsablauf eines KI-Agenten getrennt“, sagt Hauptautor Zhening Li ’25, MEng ’25, ein Doktorand in Elektrotechnik und Informatik (EECS) am MIT, CSAIL-Forscher und Forschungsberater bei Asari AI. „Mit unserem Framework können Programmierer problemlos mit verschiedenen Suchstrategien experimentieren, um diejenige zu finden, die dem KI-Agenten die beste Leistung bringt.“
EnCompass wurde für Agenten verwendet, die als Python-Programme implementiert wurden, die LLMs aufrufen, und zeigte dort spürbare Codeeinsparungen. EnCompass reduzierte den Codierungsaufwand für die Implementierung der Suche über Agenten hinweg um bis zu 80 Prozent, beispielsweise einen Agenten zum Übersetzen von Code-Repositorys und zum Ermitteln von Transformationsregeln digitaler Raster. In Zukunft könnte EnCompass es Agenten ermöglichen, umfangreiche Aufgaben zu bewältigen, darunter die Verwaltung riesiger Codebibliotheken, das Entwerfen und Durchführen wissenschaftlicher Experimente sowie die Erstellung von Bauplänen für Raketen und andere {Hardware}.
Verzweigung
Wenn Sie Ihren Agenten programmieren, markieren Sie bestimmte Vorgänge – z. B. Anrufe bei einem LLM –, bei denen die Ergebnisse variieren können. Diese Anmerkungen werden „Verzweigungspunkte“ genannt. Wenn Sie sich vorstellen, dass Ihr Agentenprogramm einen einzelnen Handlungsstrang einer Geschichte generiert, verwandelt das Hinzufügen von Verzweigungspunkten die Geschichte in ein Story-Spiel, bei dem Sie Ihr eigenes Abenteuer wählen können, wobei Verzweigungspunkte Orte sind, an denen sich die Handlung in mehrere zukünftige Handlungsstränge verzweigt.
Anschließend können Sie die Strategie festlegen, mit der EnCompass durch das Story-Spiel navigiert, um das bestmögliche Ende der Story zu finden. Dies kann das Starten paralleler Ausführungsthreads oder das Zurückverfolgen zu einem vorherigen Verzweigungspunkt umfassen, wenn Sie in einer Sackgasse stecken.
Benutzer können auch einige gängige Suchstrategien, die EnCompass standardmäßig bereitstellt, per Plug-and-Play nutzen oder ihre eigene benutzerdefinierte Strategie definieren. Sie könnten sich beispielsweise für die Monte-Carlo-Baumsuche entscheiden, die einen Suchbaum durch den Ausgleich von Erkundung und Ausbeutung aufbaut, oder für die Strahlsuche, die bei jedem Schritt die besten Ergebnisse behält. Mit EnCompass können Sie ganz einfach mit verschiedenen Ansätzen experimentieren, um die beste Strategie zu finden und die Wahrscheinlichkeit einer erfolgreichen Erledigung Ihrer Aufgabe zu maximieren.
Die Codierungseffizienz von EnCompass
Wie codeeffizient ist EnCompass additionally beim Hinzufügen von Suchfunktionen zu Agentenprogrammen? Den Erkenntnissen der Forscher zufolge hat das Framework den Aufwand, den Programmierer für die Suche in ihren Agentenprogrammen hinzufügen mussten, drastisch reduziert und ihnen dabei geholfen, mit verschiedenen Strategien zu experimentieren, um diejenige zu finden, die die beste Leistung erbringt.
Beispielsweise wandten die Forscher EnCompass auf einen Agenten an, der ein Code-Repository aus der Programmiersprache Java, die häufig zum Programmieren von Apps und Unternehmenssoftware verwendet wird, in Python übersetzt. Sie fanden heraus, dass die Implementierung der Suche mit EnCompass – hauptsächlich das Hinzufügen von Verzweigungspunktanmerkungen und Anmerkungen, die aufzeichnen, wie intestine jeder Schritt funktioniert hat – 348 Codezeilen weniger (etwa 82 Prozent) erforderte als die manuelle Implementierung. Sie demonstrierten auch, wie EnCompass es ihnen ermöglichte, problemlos verschiedene Suchstrategien auszuprobieren, wobei ein zweistufiger Beam-Suchalgorithmus die beste Strategie conflict und eine Genauigkeitssteigerung von 15 bis 40 Prozent über fünf verschiedene Repositorys hinweg bei einem Suchbudget erreicht wurde, das dem 16-fachen der vom Agenten ohne Suche getätigten LLM-Anrufe entspricht.
„Da LLMs immer integralerer Bestandteil alltäglicher Software program werden, wird es immer wichtiger zu verstehen, wie man effizient Software program entwickelt, die ihre Stärken nutzt und ihre Grenzen umgeht“, sagt Co-Autor Armando Photo voltaic-Lezama, MIT-Professor für EECS und CSAIL-Hauptforscher. „EnCompass ist ein wichtiger Schritt in diese Richtung.“
Die Forscher fügen hinzu, dass EnCompass auf Agenten abzielt, bei denen ein Programm die Schritte des übergeordneten Arbeitsablaufs festlegt; Die aktuelle Model ihres Frameworks ist weniger auf Agenten anwendbar, die vollständig von einem LLM gesteuert werden. „Bei diesen Agenten gibt es kein Programm, das die Schritte spezifiziert und dann ein LLM zur Ausführung dieser Schritte verwendet, sondern das LLM selbst entscheidet alles“, sagt Li. „Es gibt keinen zugrunde liegenden programmatischen Workflow, sodass Sie die Inferenzzeitsuche für alles ausführen können, was das LLM im Handumdrehen erfindet. In diesem Fall besteht weniger Bedarf an einem Device wie EnCompass, das die Ausführung eines Programms durch Suche und Backtracking verändert.“
Li und seine Kollegen planen, EnCompass auf allgemeinere Suchframeworks für KI-Agenten auszuweiten. Sie planen, ihr System auch an komplexeren Aufgaben zu testen, um es für den realen Einsatz, auch in Unternehmen, weiterzuentwickeln. Darüber hinaus bewerten sie, wie intestine EnCompass Agenten bei der Zusammenarbeit mit Menschen bei Aufgaben wie dem Brainstorming von {Hardware}-Designs oder der Übersetzung viel umfangreicherer Codebibliotheken unterstützt. Derzeit ist EnCompass ein leistungsstarker Baustein, der es Menschen ermöglicht, einfacher mit KI-Agenten herumzubasteln und so ihre Leistung zu verbessern.
„EnCompass kommt zum richtigen Zeitpunkt, da KI-gesteuerte Agenten und suchbasierte Techniken beginnen, die Arbeitsabläufe in der Softwareentwicklung neu zu gestalten“, sagt Professor Yiming Yang von der Carnegie Mellon College, der nicht an der Forschung beteiligt conflict. „Durch die saubere Trennung der Programmierlogik eines Agenten von seiner Inferenzzeit-Suchstrategie bietet das Framework eine prinzipielle Möglichkeit zu untersuchen, wie strukturierte Suche die Codegenerierung, -übersetzung und -analyse verbessern kann. Diese Abstraktion bietet eine solide Grundlage für systematischere und zuverlässigere suchgesteuerte Ansätze für die Softwareentwicklung.“
Li und Photo voltaic-Lezama haben das Papier zusammen mit zwei Asari-KI-Forschern geschrieben: Caltech-Professor Yisong Yue, einem Berater des Unternehmens; und der leitende Autor Stephan Zheng, der Gründer und CEO ist. Ihre Arbeit wurde von Asari AI unterstützt.
Die Arbeit des Groups wurde im Dezember auf der Convention on Neural Data Processing Programs (NeurIPS) vorgestellt.
