Voyager utiliza GPT-4 para guiar un agente de aprendizaje de Minecraft a través del mundo pixelado. En lugar de aprendizaje por refuerzo, Voyager depende de la generación de código.

Investigadores de Nvidia, Caltech, UT Austin, Stanford y ASU presentan Voyager, el primer agente de aprendizaje continuo que juega Minecraft. A diferencia de otros agentes de Minecraft que utilizan técnicas clásicas de aprendizaje por refuerzo, Voyager utiliza GPT-4 para mejorarse continuamente. Lo hace escribiendo, mejorando y transfiriendo código almacenado en una biblioteca externa de habilidades.

Esto da como resultado pequeños programas que ayudan en la navegación, apertura de puertas, extracción de recursos, fabricación de una piqueta o lucha contra un zombi. «GPT-4 desbloquea un nuevo paradigma», dice Jim Fan, investigador de Nvidia, quien dirigió el proyecto. En este paradigma, el «entrenamiento» es la ejecución de código y el «modelo entrenado» es la base de código de habilidades que Voyager ensambla de manera iterativa.

Voyager consta de tres componentes principales:

  1. Un mecanismo iterativo de instrucciones que incorpora la retroalimentación del juego, errores de ejecución y autoverificación para refinar programas.
  2. Una biblioteca de habilidades con código para almacenar y recuperar comportamientos complejos.
  3. Un currículo automatizado para maximizar la exploración.
Vídeo: Wang, Xie, Jiang, Mandlekar y colaboradores.

El agente Voyager de Minecraft aprende en contexto

El agente Voyager de Minecraft aprende de manera iterativa: escribe un programa con GPT-4 para lograr un objetivo y utiliza la retroalimentación del entorno de juego y posibles errores de Javascript para refinar el programa con GPT-4. De esta manera, Voyager construye gradualmente una biblioteca de habilidades y almacena programas exitosos en una base de datos vectorial. Las habilidades complejas se construyen a partir de habilidades más simples.

Vídeo: Wang, Xie, Jiang, Mandlekar y otros.

Para explorar el diverso mundo de Minecraft, el equipo utiliza un currículo automatizado que sugiere tareas de exploración apropiadas basadas en las habilidades actuales del agente y el estado actual del mundo. Por ejemplo, el agente aprende a recolectar arena y cactus en un desierto antes de excavar en busca de hierro.

image 32

Juntos, esto crea un agente que está constantemente aprendiendo y puede realizar una variedad de tareas. El equipo lleva a cabo todos los experimentos en el entorno MineDojo.

Actualmente, Voyager solo puede construir casas con retroalimentación humana. El equipo compara a Voyager con otros agentes basados en modelos de lenguaje, como ReAct, Reflection o Auto-GPT, en Minecraft. Voyager descubrió 63 objetos diferentes con 160 iteraciones de indicaciones, lo cual es 3,3 veces más que el siguiente enfoque, según el equipo.

Actualmente, el Voyager solo puede construir casas con la ayuda de retroalimentación humana.

El equipo compara al Voyager con otros agentes basados en modelos de lenguaje, como ReAct, Reflection o Auto-GPT, en Minecraft. Según el equipo, el Voyager descubrió 63 objetos diferentes con 160 iteraciones de indicaciones, lo cual es 3,3 veces más que el enfoque siguiente.

image 33

La búsqueda automatizada de objetos desconocidos previamente hace que Voyager viaje extensivamente: en general, el agente de Minecraft recorre más del doble de distancia y visita más biomas. Por otro lado, Auto-GPT y otros métodos a menudo quedan atrapados en sus áreas locales.

image 34

La biblioteca de habilidades construida por Voyager también es compatible con Auto-GPT: el agente de IA en Minecraft logra resultados significativamente mejores con él, pero todavía se queda atrás de Voyager.

Actualmente, Voyager se basa únicamente en texto y no puede ver lo que está sucediendo en el mundo de los bloques. Por lo tanto, no puede construir casas. Sin embargo, en un experimento inicial, el equipo utilizó seres humanos para proporcionar retroalimentación visual al agente, de esta manera Voyager puede aprender a construir casas y portales del Nether, por ejemplo.

Más información y ejemplos están disponibles en la página del proyecto Voyager. El código está disponible en GitHub.