Voyager utiliza o GPT-4 para guiar um agente de aprendizado do Minecraft através do mundo pixelado. Em vez de aprendizado por reforço, o Voyager depende da geração de código.
Pesquisadores da Nvidia, Caltech, UT Austin, Stanford e ASU apresentam o Voyager, o primeiro agente de aprendizado contínuo que joga Minecraft. Ao contrário de outros agentes do Minecraft que utilizam técnicas clássicas de aprendizado por reforço, o Voyager utiliza o GPT-4 para se aprimorar continuamente. Ele faz isso escrevendo, aprimorando e transferindo código armazenado em uma biblioteca externa de habilidades.
Isso resulta em pequenos programas que ajudam na navegação, abertura de portas, mineração de recursos, fabricação de uma picareta ou luta contra um zumbi. “O GPT-4 desbloqueia um novo paradigma”, diz Jim Fan, pesquisador da Nvidia, que orientou o projeto. Nesse paradigma, o “treinamento” é a execução de código e o “modelo treinado” é a base de código de habilidades que o Voyager monta de forma iterativa.
O Voyager é composto por três componentes principais:
- Um mecanismo iterativo de instruções que incorpora o feedback do jogo, erros de execução e autoverificação para refinar programas.
- Uma biblioteca de habilidades com código para armazenar e recuperar comportamentos complexos.
- Um currículo automatizado para maximizar a exploração.
O agente Voyager do Minecraft aprende em contexto
O agente do Minecraft Voyager aprende de forma iterativa: ele escreve um programa com o GPT-4 para alcançar um objetivo e usa o feedback do ambiente do jogo e possíveis erros de Javascript para refinar o programa com o GPT-4. Dessa forma, o Voyager constrói gradualmente uma biblioteca de habilidades e armazena programas bem-sucedidos em um banco de dados vetorial. Habilidades complexas são construídas a partir de habilidades mais simples.
Para explorar o diverso mundo do Minecraft, a equipe utiliza um currículo automatizado que sugere tarefas de exploração apropriadas com base nas habilidades atuais do agente e no estado atual do mundo. Por exemplo, o agente aprende a coletar areia e cactos em um deserto antes de escavar em busca de ferro.
Juntos, isso cria um agente que está constantemente aprendendo e pode realizar uma variedade de tarefas. A equipe realiza todos os experimentos no ambiente MineDojo.
No momento, o Voyager só consegue construir casas com feedback humano. A equipe compara o Voyager a outros agentes baseados em modelos de linguagem, como ReAct, Reflection ou Auto-GPT, no Minecraft. O Voyager descobriu 63 objetos diferentes com 160 iterações de prompts – 3,3 vezes mais do que a abordagem seguinte, segundo a equipe.
Atualmente, o Voyager só consegue construir casas com o auxílio de feedback humano
A equipe compara o Voyager a outros agentes baseados em modelos de linguagem, como ReAct, Reflection ou Auto-GPT, no Minecraft. O Voyager descobriu 63 objetos diferentes com 160 iterações de prompt – 3,3 vezes mais do que a abordagem seguinte, segundo a equipe.
A busca automatizada por objetos desconhecidos previamente faz com que o Voyager viaje extensivamente: no geral, o agente do Minecraft percorre mais que o dobro da distância e visita mais biomas. Por outro lado, o Auto-GPT e outros métodos frequentemente ficam presos em suas áreas locais.
A biblioteca de habilidades construída pelo Voyager também é compatível com o Auto-GPT: o agente de IA no Minecraft alcança resultados significativamente melhores com ele, mas ainda fica atrás do Voyager.
Atualmente, o Voyager é apenas baseado em texto e não consegue ver o que está acontecendo no mundo dos blocos. Portanto, ele não pode construir casas. No entanto, em um experimento inicial, a equipe utilizou seres humanos para fornecer feedback visual ao agente – assim, o Voyager pode aprender a construir casas e portais do Nether, por exemplo.
Mais informações e exemplos estão disponíveis na página do projeto Voyager. O código está disponível no GitHub.