Google: Genau wie Agenten können Umgebungen ebenfalls über Harness verfügen.
Wir haben viel Zeit darauf verwendet, LLM mit Harness auszustatten, um LLM zu helfen, als Agent Aufgaben in komplexen Umgebungen besser zu erledigen. Wie steht es aber auf der Seite der Umgebung?
Ob Destillation, verstärkendes Lernen oder Selbstevolution – wir brauchen Agenten, die mit der Umgebung interagieren, aber wir haben keine Kontrolle darüber, wie die Umgebung mit dem Agenten interagiert. Analog zum Agent-Harness stellt der Artikel Envharness vor, eine neuartige Komponente zur Steuerung der Interaktionsweise zwischen Umgebung und Agent, die der Umgebung hilft, dem Agenten bessere Trainingssignale in verschiedenen Trainingsszenarien bereitzustellen.
Papiertitel: EnvHarness: Awakening Static Worlds for Agent Learning
Link zum Papier: https://arxiv.org/abs/2608.19880
Projektcode: https://github.com/google-research/envharness
Projekt-Homepage: https://envharness.com/
Umgebungs-Harness und Agent-Harness
In üblichen Szenarien für intelligente Agenten muss der Agent Aufgaben in einer Umgebung erledigen. Diese Umgebung kann eine Webseite, ein Code-Repository oder sogar ein Raum sein.
In den heutigen üblichen Einstellungen ist der Kern des Agenten ein unveränderliches großes Sprachmodell. Wir fügen um ihn herum Harness (Gerüste) wie Speicher, Fähigkeitsbibliotheken usw. hinzu, um ihm zu helfen, Aufgaben besser zu erledigen.
Als anderes Ende des Frameworks kann auch die Umgebung ihr eigenes Harness haben, um das Verhalten der Umgebung zu steuern, wenn der Agent mit ihr interagiert.
Weder Envharness noch Agent-Harness greifen in den Kern der externen Interaktion (das große Sprachmodell und die Umgebung selbst) ein, aber beide können nur durch die Interaktion mit Ein- und Ausgabeschnittstellen die Art und Weise ändern, wie der Kerninhalt nach außen ausgegeben wird, um unsere gewünschten Ziele zu erreichen. Für die Umgebung bedeutet ein besseres Umfeld, dass es bessere Trainingssignale für das Training des Agenten bereitstellen kann.
Was ist EnvHarness
In den Vorgaben entspricht Envharness einem einfachsten Schnittstellenprotokoll, um sicherzustellen, dass sie problemlos übereinander gestapelt werden können. Einfach ausgedrückt: Nach Hinzufügen eines Environment-Harness zu einer Umgebung ändert sich die nach außen gerichtete Schnittstelle überhaupt nicht.
- Standardumgebung: Folgt drei Standard-Schnittstellen: reset() zum Initialisieren der Umgebung, step(a) zum Ausführen einer Aktion in der Umgebung und obs() zum Erkennen des internen Zustands der Umgebung durch Beobachtung
Dieser Artikel stellt drei relativ einfache Envharness-Komponenten vor
- Umgebungskonfiguration: Ausführen einer Reihe von Aktionen nach der Initialisierung der Umgebung, um den Anfangszustand der Umgebung zu ändern
- Interaktionsregeln: Abbilden der vom Agenten durchgeführten Aktionen und Beobachtungen auf neue Aktionen oder Beobachtungen
- Verknüpfung von Umgebungen: Automatischer Wechsel zu einer anderen Umgebung, wenn die aktuelle Umgebung bestimmte Bedingungen erfüllt
Da alle Operationen auf den Standardschnittstellen der zugrunde liegenden Umgebung basieren, kann Envharness verlustfrei in jeder geeigneten Umgebung installiert werden, ohne dass berücksichtigt werden muss, ob die zugrunde liegende Umgebung eine Website oder Docker ist, für das Robotertraining oder GUI-Training gedacht ist.
Wie man EnvHarness entwirft
Kehren wir zum Zweck von Envharness zurück: Es soll sichergestellt werden, dass die Umgebung bessere Trainingssignale bereitstellen kann. Inspiriert von selbstevolutionären Agenten, die tatsächliche Trajektorien lesen, um Harness zu optimieren, schlägt der Artikel vor, einen Agenten zur Beobachtung von Trajektorien einzusetzen, um Envharness zu generieren.
Der gesamte Prozess besteht aus einem Zyklus mit vier einfachen Schritten
- Zuerst liest man die n Trajektorien des Agenten in der ursprünglichen Umgebung
- Anhand dieser Trajektorien wird ermittelt, ob der Agent Probleme oder Verbesserungspotenziale aufweist
- Anschließend versucht man, ein erstes Envharness zu erstellen
- Man lässt den Agenten auf der Umgebung mit dem oben genannten Envharness erneut eine Reihe von Trajektorien generieren. Nach der Beobachtung wird das Envharness akzeptiert, wenn es dem Agenten hilft, das Problem zu lösen. Andernfalls kehrt man mit diesen Trajektorien zum vorherigen Schritt zurück
Durch einen solchen zyklischen Prozess (Loop Engineering) können wir das entsprechende Envharness entsprechend den aktuellen Fähigkeiten des Agenten bereitstellen.
Experimentelle Ergebnisse
Der Artikel untersucht, dass in Szenarien mit verstärkendem Lernen und selbstevolutionären Agenten die Umgebung nach der Hinzufügung von Envharness bessere Trainingssignale bereitstellen kann, um die Leistung des Agenten zu verbessern. Gleichzeitig zeigen die Effekte in verschiedenen Benchmarks wie verkörperter Intelligenz, Webseitennavigation und Codegenerierung die Allgemeingültigkeit dieser Methode.
Weitere Experimente diskutieren Richtungen wie die Koevolution mit Agenten und die gezielte Anpassung an Probleme mit langem Zeithorizont.
Kernbeschränkungen und zukünftige Aussichten
Der Artikel stellt viele bestehende Mängel und zukünftige Richtungen für den Bereich Envharness vor, zum Beispiel:
- So wie Agent-Harness verschiedene Komponenten umfasst, benötigt auch Envharness verschiedene spezielle Komponenten zur Lösung spezifischer Probleme wie Long-Horizon, Domänenwissen und langer Kontext, die noch von zukünftigen Forschern entwickelt werden müssen
- Effizientere Entwurfsmethoden für Envharness: Die derzeitigen Methoden sind auf mehrstufige Trajektorienabtastung angewiesen, sind relativ ineffizient und können keine großangelegten Umgebungsverbesserungsstudien durchführen
Der Erstautor dieses Artikels, Chengsong Huang, ist Doktorand an der Washington University in St. Louis. Er hat mehr als 1500 Zitationen bei Google Scholar. Seine aktuellen Forschungsinteressen konzentrieren sich auf selbstevolutionäre Agenten und Datensynthese. Die Arbeiten von ihm, Lorahub und R-zero, die zuvor von „Machine Heart“ berichtet wurden, haben jeweils mehr als 700 Stars auf GitHub erhalten.
Dieser Artikel stammt aus dem WeChat-Offiziellen Konto „Machine Heart“ und wird mit Genehmigung von 36kr veröffentlicht.