Voyager verwendet GPT-4, um einen lernenden Minecraft-Agenten durch die Pixelwelt zu führen. Statt auf Reinforcement Learning setzt Voyager auf Codegenerierung.
Forschende von Nvidia, Caltech, UT Austin, Stanford und ASU stellen Voyager vor, den ersten "lebenslang lernenden Minecraft-Agenten". Im Gegensatz zu anderen Minecraft-Agenten, die beispielsweise klassische Reinforcement-Learning-Techniken verwenden, nutzt Voyager GPT-4, um sich kontinuierlich selbst zu verbessern. Dazu schreibt, verbessert und überträgt er Code, der in einer externen Skill-Bibliothek gespeichert ist.
So entstehen kleine Programme, die beim Navigieren helfen, Türen öffnen, Ressourcen abbauen, eine Spitzhacke basteln oder einen Zombie bekämpfen. "GPT-4 ermöglicht ein neues Paradigma", sagt Nvidia-Forscher Jim Fan, der das Projekt beraten hat. In diesem Paradigma ist "Training" die Ausführung von Code und das "trainierte Modell" die Codebasis von Fähigkeiten, die Voyager iterativ zusammensetzt.
Voyager besteht aus drei Hauptkomponenten:
- Ein iterativer Prompting-Mechanismus, der Feedback aus dem Spiel, Ausführungsfehler und Selbstüberprüfung zur Verfeinerung der Programme einbezieht.
- Eine Skill-Bibliothek mit Code zum Speichern und Abrufen komplexer Verhaltensweisen.
- Ein automatisches Kurrikulum zur Maximierung der Exploration.
Minecraft-Agent lernt im Kontext
Der Minecraft-Agent lernt in einem iterativen Prozess: Voyager schreibt mit GPT-4 ein Programm, um ein Ziel zu erreichen, und nutzt das Feedback aus der Spielumgebung sowie mögliche Javascript-Fehler, um das Programm mit GPT-4 zu verfeinern. Auf diese Weise baut Voyager schrittweise eine Skill-Bibliothek auf und speichert erfolgreiche Programme in einer Vektordatenbank. Komplexe Skills werden aus einfacheren Skills zusammengesetzt.
Um die vielfältige Welt von Minecraft zu erkunden, verwendet das Team ein automatisches Kurrikulum, das basierend auf den aktuellen Fähigkeiten des Agenten und dem aktuellen Zustand der Welt passende Erkundungsaufgaben vorschlägt. Beispielsweise lernt der Agent in einer Wüste Sand und Kakteen zu sammeln, bevor er nach Eisen gräbt.
Zusammen entsteht so ein Agent, der ständig lernt und vielfältige Aufgaben erfüllen kann. Alle Experimente führt das Team in der MineDojo-Umgebung durch.
Voyager kann Häuser aktuell nur mit menschlichem Feedback bauen
Das Team vergleicht Voyager mit anderen sprachmodellbasierten Agenten wie ReAct, Reflexion oder Auto-GPT in Minecraft. Voyager entdeckte 63 verschiedene Objekte mit 160 Prompt-Iterationen - 3,3 Mal mehr als der nächstbeste Ansatz, so das Team.
Die automatische Suche nach bisher unbekannten Objekten veranlasst Voyager zu ausgedehnten Reisen: Insgesamt legt der Minecraft-Agent mehr als die doppelte Strecke zurück und besucht dabei mehr Biome. Auto-GPT und andere Methoden bleiben dagegen oft in ihrem lokalen Bereich stecken.
Die von Voyager aufgebaute Skill-Bibliothek ist übrigens auch mit Auto-GPT kompatibel: Der KI-Agent erzielt damit in Minecraft deutlich bessere Ergebnisse, liegt aber immer noch hinter Voyager.
Derzeit ist Voyager nur textbasiert und kann nicht sehen, was in der Blockwelt passiert. Er kann also keine Häuser bauen. In einem ersten Experiment hat das Team jedoch Menschen eingesetzt, um dem Agenten visuelles Feedback zu geben - so kann Voyager lernen, beispielsweise Häuser und Nether-Portale zu bauen.
Mehr Informationen und Beispiele gibt es auf der Voyager-Projektseite. Den Code gibt es auf GhitHub.