Una comparación de la Voyager de Nvidia con otros agentes automatizados que avanzan a través del llamado árbol tecnológico de logros del juego. El programa es considerablemente más rápido a la hora de realizar nuevas tareas y, hasta ahora, es la única automatización de Minecraft que puede desbloquear los preciados implementos de nivel diamante. Los números en la parte inferior del gráfico representan el número de iteraciones de los programas.

Guanzhi Wang y otros

Al igual que el jaque y el mate en el ajedrez, la capacidad de crear una herramienta de diamante en el videojuego Minecraft, uno de los desafíos de alto nivel del juego, se está volviendo mundana para la inteligencia artificial.

Y ahora, algo parecido a la memoria está llegando a la capacidad de la IA en el popular juego de ordenador.

Se han desarrollado ampliamente programas de IA para jugar a Minecraft sin intervención humana, con una enorme inversión en todo tipo de enfoques. Por ejemplo, OpenAI, el creador de ChatGPT, ha gastado enormes sumas de dinero para contratar jugadores humanos del juego con el fin de capturar imágenes de vídeo que puedan desarrollar la IA para jugar imitando los movimientos de las personas.

También: ¿Qué es GPT-4? Aquí tienes todo lo que necesitas saber

Un equipo dirigido por Zihao Wang de la Universidad de Pekín en Beijing describió en febrero lo que el equipo cree que es “el primer agente multitarea que puede realizar de manera sólida más de 70 tareas de Minecraft”.

Pero el estado del arte avanza rápidamente. Un equipo liderado por Nvidia dijo la semana pasada que habían creado el primer “agente de aprendizaje permanente” que refinó su enfoque del juego basándose en probar diferentes técnicas y luego guardar sus logros en una biblioteca de técnicas.

Comparada con otros sistemas automáticos, la tecnología logra consistentemente hitos en Minecraft más rápido.

También: OpenAI gastó 160.000 dólares en Upwork para que los jugadores de Minecraft entrenaran una red neuronal

El programa, llamado Voyager, se describe en un artículo, publicado en el servidor de preimpresión arXiv, escrito por Guanzhi Wang de Nvidia y Caltech, y colegas de UT Austin, Stanford y la Universidad Estatal de Arizona. Un asesor del equipo es el director senior de investigación de IA de Nvidia, Anima Anandkumar. (Nvidia también publica el artículo y el material adicional en un sitio web complementario).

Voyager utiliza GPT-4, el último “modelo de lenguaje grande” del creador de ChatGPT, OpenAI. GPT-4 se presentó en marzo, aunque OpenAI se negó a describir los aspectos técnicos del programa. El código GPT-4 es mejor que las versiones anteriores y mejor que muchos otros grandes modelos de lenguaje, o LLM, en muchas tareas para las que se utiliza ChatGPT, como responder desafíos de lenguaje natural y escribir código, según OpenAI.

GPT-4 se utiliza de tres formas en la Voyager. Una es tomar el inventario actual de posesiones en Minecraft y usarlos para proponer un nuevo desafío para el programa Voyager. Proporcione a GPT-4 una descripción del inventario cuando se le solicite en lenguaje natural, con formato para facilitar el análisis, como,

Inventario (5/36): {'oak_planks': 3, 'palo': 4, 'crafting_table': 1, 'piedra': 3, 'wooden_pickaxe': 1},

GPT-4 generará una descripción en lenguaje natural de un nuevo desafío, como fabricar un pico de piedra, junto con la declaración de por qué es una nueva tarea apropiada, como, por ejemplo,

Razonamiento: dado que tienes un pico de madera y algunas piedras, sería beneficioso actualizar tu pico a un pico de piedra para una mayor eficiencia.

Tarea: Elabora 1 pico de piedra.

Una segunda función de GPT-4 en Voyager es ingresar ese nuevo desafío y generar código para realizar el siguiente movimiento en Minecraft. GPT-4 escribe el código del programa para ejecutarlo en Minecraft, y cada bit de código se prueba en Minecraft, y la retroalimentación luego se devuelve a GPT-4, que luego refina el código.

También: Cómo ChatGPT puede reescribir y mejorar su código existente

Es bien sabido que GPT-4 puede refinar el código de un programa. Los autores describen este proceso de código de prueba y error como “solicitud iterativa”, debido al bucle de código/retroalimentación/recodificación a través del mensaje GPT-4. Se utiliza una segunda instancia de GPT-4 como crítico para probar cada invención de código y determinar si tiene éxito. Esto se conoce como “autoverificación”.

Por ejemplo, si el código inicial del programa es enviar instrucciones a Minecraft para que diseñe un “hacha de acacia”, un hacha hecha de la planta de acacia, fallará porque no existe un hacha de acacia en Minecraft. Voyager maneja el fallo de esa instrucción como un “error de ejecución”, y el programa revisa su código de Minecraft y vuelve a intentarlo.

La parte más interesante viene con lo que se llama una biblioteca, donde la Voyager almacena esos fragmentos de código que ha probado y encontrado exitosos, que se conocen como “habilidades”.

También: Los mejores chatbots con IA: ChatGPT y otras alternativas destacadas

De la misma manera que GPT-4 predice la siguiente palabra de una oración, la Voyager puede extraer esta biblioteca en busca de acciones sugeridas en el futuro. GPT-4 comienza con una “consulta”, algo así como “fabricar un pico de hierro”, luego busca en la biblioteca la “clave”, la descripción almacenada de una habilidad, y recupera la habilidad requerida como resultado. el “valor” de esa combinación de clave de consulta, muy parecido a una búsqueda en una base de datos.

Utilizando lo que se llama estudios de ablación (eliminando partes del programa), Wang y su equipo descubren que el elemento más crítico en toda la construcción de la Voyager es el crítico, la unidad de autoverificación.

Ejemplos de cómo la Voyager puede generar resultados más sofisticados cuando recibe retroalimentación humana durante el juego.

Guanzhi Wang y otros

“La autoverificación es el más importante entre todos los tipos de retroalimentación” que recibe la Voyager, escriben.

“La eliminación del módulo provoca una caída significativa (-73%) en el recuento de elementos descubiertos”, de lo que deducen que “la autoverificación sirve como un mecanismo crítico para decidir cuándo pasar a una nueva tarea o volver a intentar una que anteriormente no había tenido éxito”. tarea.”

Para probar Voyager con lo último en Minecraft automatizado, los autores improvisan algunos otros programas de inteligencia artificial porque, como dicen, “no hay LLM que jueguen Minecraft de forma inmediata”.

También: Enfrentamiento de consolas de juegos: PS5, Xbox, Nintendo Switch y más

Los programas con los que prueban, que constituyen su punto de referencia, incluyen MineDojo, un programa desarrollado por algunos de los mismos contribuyentes el año pasado que ganó un “premio al trabajo destacado” en la conferencia NeurIPS AI; ReAct, un invento de Google presentado este año que impulsa un modelo de lenguaje grande para “realizar razonamiento dinámico” en la resolución de problemas, en este caso, Minecraft; y AutoGPT, una adaptación de GPT-4 que automatiza la siguiente acción del modelo de lenguaje, publicada en GitHub, desarrollada por la casa de desarrollo por contrato Significant Gravitas.

En comparación con estos otros enfoques, escriben los autores, la Voyager alcanza sus objetivos mucho más rápido. “La superioridad de la Voyager es evidente en su capacidad para lograr nuevos avances constantemente, descubriendo 63 elementos únicos en 160 iteraciones, 3,3 veces más elementos novedosos en comparación con sus contrapartes”, escriben. “La Voyager desbloquea el nivel de madera 15,3 veces más rápido (en términos de iteraciones de indicaciones), el nivel de piedra 8,5 veces más rápido, el nivel de hierro 6,4 veces más rápido”.

También: GPT-4 presentado: la próxima gran actualización de ChatGPT ya está aquí

Y “la Voyager es la única que desbloquea el nivel de diamante del árbol tecnológico”. (Obtener un pico de diamante es una de las tareas más difíciles en Minecraft. Las herramientas basadas en diamantes duran más y pueden causar más daño, y su poder en otros aspectos se vuelve importante para las actividades finales del juego, como encantar mesas y fabricar equipos netherite).

También descubrieron que existe una capacidad residual del programa para progresar en el juego incluso cuando se vacía su biblioteca de habilidades.

Para probar lo que se llama “generalización de disparo cero”, escriben, “limpiamos el inventario del agente, lo reiniciamos en un mundo recién creado y lo probamos con tareas invisibles”, frente a un GPT-4 simple. “La Voyager puede resolver consistentemente todas las tareas, mientras que las líneas de base no pueden resolver ninguna tarea dentro de 50 iteraciones”.

Hay mucho por hacer en direcciones futuras, escriben Wang y su equipo. Por un lado, GPT-4 aún no puede procesar imágenes. Si pudiera, la Voyager podría obtener información visual de los gráficos del juego, suponen.

También: Con GPT-4, OpenAI opta por el secreto frente a la divulgación

Otra dirección es utilizar la retroalimentación humana en tiempo real como “crítica”, “curriculum” o ambos, para avanzar en las decisiones que toma la Voyager. De hecho, en los experimentos que realizan, “demostramos que, dada la retroalimentación humana, la Voyager es capaz de construir estructuras 3D complejas en Minecraft, como un Portal Abisal y una casa”.

Observan que la Voyager es cara desde el punto de vista informático. “La API GPT-4 genera costos significativos. Es 15 veces más cara que GPT-3.5. Sin embargo, Voyager requiere un salto cuántico en la calidad de generación de código de GPT-4, que GPT-3.5 y los LLM de código abierto no pueden proporcionar”.

También: Los 5 mayores riesgos de la IA generativa, según un experto

Y sí, la Voyager es propensa a sufrir alucinaciones en esta tarea, al igual que en todo lo que hacen los modelos de lenguaje. El hacha de acacia es un ejemplo, y a la Voyager se le ocurren otras “tareas inalcanzables”, señalan, como fabricar una “espada de cobre” o una “placa pectoral de cobre”, que, señalan, “son elementos que no existen dentro del juego.”

Además, señalan, “también ocurren alucinaciones durante el proceso de generación del código”, como “usar adoquines como combustible, a pesar de ser una fuente de combustible no válida en el juego”.