技术指南

Voyager Minecraft 代理和技能库

Voyager 是一款由 LLM 驱动的 Minecraft 代理,它学习可重用的技能库,让它通过终身学习来解决新任务,而不是每次都从头开始。

听听这个指南AI叙述 · ~7 min

在本页阅读需 8 分钟
  1. 主要要点
  2. 深入探讨
  3. Tracing how Voyager learns to craft an iron pickaxe
  4. 现实世界的实施
  5. Voyager Minecraft 代理和技能库的未来
  6. 付诸实践
  7. 资料来源与延伸阅读
  8. 不断探索
  9. 常见问题

主要要点

  1. Voyager is a 2023 Minecraft agent that uses GPT-4 to write, test and store reusable JavaScript skills without fine-tuning any model.
  2. Its three parts are an automatic curriculum, an iterative prompting loop with self-verification, and an embedding-indexed skill library.
  3. Voyager found 3.3 times more unique items and unlocked tech-tree tiers up to 15.3 times faster than ReAct, Reflexion and AutoGPT baselines.
  4. Removing self-verification cut discovered items by 73 percent, and a random curriculum cut them by 93 percent, in the paper's ablations.
  5. Storing skills as code outside the model lets an agent add abilities without overwriting old ones.

深入探讨

A skill-library agent is an AI agent that saves successful behaviors as reusable units, usually small programs, and retrieves them later instead of solving every problem from scratch. Voyager is the best-known example. It was introduced in the paper 'Voyager: An Open-Ended Embodied Agent with Large Language Models' by Guanzhi Wang, Yuqi Xie, Yunfan Jiang, Ajay Mandlekar, Chaowei Xiao, Yuke Zhu, Linxi 'Jim' Fan and Anima Anandkumar, posted to arXiv on 25 May 2023, with authors from NVIDIA, Caltech, UT Austin, Stanford and other universities. The authors describe it as the first large-language-model-powered lifelong learning agent in Minecraft, meaning it keeps acquiring skills over a long session without a human setting goals.

Minecraft suits this research because it is open-ended. A player starts with nothing, gathers wood, crafts tools, mines stone and iron, and eventually reaches diamond tools, a sequence called the tech tree. There is no single score to maximize. Voyager does not see pixels or press keys. It controls the game through Mineflayer, a JavaScript library for Minecraft bots, on top of the MineDojo research framework. Its actions are programs: GPT-4 writes JavaScript functions that call Mineflayer commands such as mining a block or crafting an item.

Voyager has three components that run in a loop. The first is an automatic curriculum. GPT-4 receives the agent's inventory, equipment, nearby blocks, biome, time of day and lists of completed and failed tasks, and proposes the next task under the overall goal of discovering as many diverse things as possible. If the agent is in a desert, it might learn to harvest sand and cactus before iron. The second is the iterative prompting mechanism. GPT-4 writes a program for the task, the program runs, and three kinds of feedback come back: in-game messages, for example a note that a stone shovel cannot be crafted until two more sticks are available, JavaScript error traces, and a verdict from a second GPT-4 instance acting as a critic that checks whether the task succeeded. The code is revised with that feedback, for up to four rounds, before the curriculum moves on.

The third component is the skill library. When the critic confirms success, the program is stored. Its key is an embedding, a numeric vector capturing meaning, of a short description of the program written by GPT-3.5 and embedded with OpenAI's text-embedding-ada-002. When a new task arrives, Voyager embeds the task plus a GPT-3.5 suggestion for solving it, and retrieves the five most similar stored skills to place in GPT-4's prompt. New programs can call old ones, so a function like crafting an iron pickaxe can reuse smelting and stick-crafting skills. Because skills are saved code rather than changed model weights, learning a new skill cannot overwrite an old one, which the authors present as a way around catastrophic forgetting.

The paper's results are large relative to its baselines, which were prompting agents adapted to the same setup: ReAct, which interleaves reasoning and actions; Reflexion, which adds self-reflection; and AutoGPT, a popular autonomous task loop. Voyager obtained 3.3 times more unique items, traveled 2.3 times longer distances, and unlocked the wooden, stone and iron tool tiers 15.3, 8.5 and 6.4 times faster in prompting iterations. ReAct and Reflexion unlocked no tier within 160 iterations. In a new world with an empty inventory, Voyager solved all four unseen tasks (diamond pickaxe, golden sword, lava bucket, compass) in three of three trials each, while the baselines solved none within 50 iterations. Ablations showed that replacing the automatic curriculum with a random one cut discovered items by 93 percent, removing self-verification cut them by 73 percent, and using GPT-3.5 instead of GPT-4 for code produced 5.7 times fewer unique items.

The comparison with other agent designs clarifies what is new. Reinforcement learning agents for Minecraft learn low-level control from rewards or videos and adjust neural network weights; Voyager uses a frozen model through an API and learns only by accumulating text and code. Pure prompting agents such as ReAct reason and act step by step but keep no durable library, so each episode starts fresh. Later Minecraft agents took other routes: JARVIS-1, posted in November 2023, uses a multimodal memory of past experience with pixel-level perception and reports completing over 200 tasks. The common thread is that memory outside the model weights lets an agent improve with experience.

The limitations are spelled out in the paper. GPT-4 was 15 times more expensive than GPT-3.5 at the time, yet weaker models could not write good enough code. The agent sometimes gets stuck, and the critic occasionally misjudges success, for example failing to treat spider string as proof of beating a spider. The curriculum can hallucinate impossible goals such as a 'copper sword', and the code writer sometimes uses invalid game logic, such as burning cobblestone as fuel, or calls functions that do not exist. Voyager also depends on Mineflayer's high-level text interface, so it sidesteps the hard perception and motor-control problems that physical robots face.

Running Voyager yourself requires Python 3.9 or later, Node.js 16.13 or later, a Minecraft Java installation with specific Fabric mods (tested on version 1.19), and an OpenAI API key with GPT-4 access, according to the GitHub repository. Saved skill libraries can be reloaded to run new tasks without relearning.

03工作示例

Tracing how Voyager learns to craft an iron pickaxe

  1. Start with an inventory holding a stone pickaxe, a furnace, sticks and four raw iron, as in an example from the paper.

  2. The curriculum reads this state and proposes 'Smelt 4 raw iron' as the next task, then later 'Craft 1 iron pickaxe'.

  3. For the pickaxe, Voyager asks GPT-3.5 how to craft one, embeds the task and answer, and retrieves the top five skills such as smelting iron ingots and crafting sticks.

  4. GPT-4 writes a craftIronPickaxe function that calls those skills and Mineflayer's crafting primitive.

  5. The program runs; if the game reports missing sticks or the code throws an error, that message goes back into the prompt for a revised program.

  6. A separate GPT-4 critic checks the new inventory, confirms an iron pickaxe is present and returns success.

  7. The function is stored under an embedding of its description, ready to be called by later skills such as mining diamonds.

它显示了什么

The library now contains a verified, readable craftIronPickaxe program that composes earlier skills. A learner can check the trace by confirming each step's input and output: the state fed to the curriculum, the five retrieved skills, the error feedback, and the critic's success flag.

现实世界的实施

In the original experiments, Voyager discovered 63 unique Minecraft items within 160 prompting iterations, 3.3 times as many as the ReAct, Reflexion and AutoGPT baselines it was compared against.

Voyager was the only tested method to reach diamond tools on the Minecraft tech tree, succeeding in one of three runs at about 102 prompting iterations.

Researchers reuse the open-source MineDojo/Voyager code, MIT licensed, to load a saved skill library into a fresh world and solve a new task such as crafting a compass.

Plugging Voyager's learned skill library into AutoGPT let AutoGPT solve unseen tasks such as a golden sword and a compass that it failed without the library.

Anthropic's Agent Skills, announced in October 2025, package instructions and scripts as folders that Claude loads on demand, a human-authored relative of Voyager's code-based skill library.

Voyager Minecraft 代理和技能库的未来

The Voyager paper itself names cost, stuck runs, critic mistakes and hallucinated tasks or functions as open issues, and it frames its method as compatible with gradient-based controllers such as video-pretrained models, provided they expose a code interface. Work since then has extended the memory idea in different directions, for example JARVIS-1's multimodal memory in late 2023. Outside games, the skill-library pattern has moved into commercial agent tooling. Anthropic's October 2025 post on Agent Skills describes folders of instructions and scripts that an agent loads only when relevant, and says the company hopes to let agents create, edit and evaluate such skills themselves, which would close the loop Voyager demonstrated. Open questions include how to verify that a self-written skill is safe before reuse, how to prune or repair a library as it grows, and how well retrieval holds up with thousands of skills. The same post warns that malicious or untrusted skills could cause data exfiltration, so auditing reusable skills is an active practical concern.

付诸实践

为什么这很重要

  • 成本与预算. 多年来,架构决策决定着性能和运营成本。
  • 更清晰的判决. 技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。
  • 质量控制. 更好的工程选择可以减少生产中的可靠性事故。

留意

  • 优化一项基准测试可以隐藏更广泛的系统弱点。
  • 基础设施和维护成本常常被低估。
  • 随着系统变得更加复杂,安全性和可观察性差距可能会扩大。

后续步骤

  1. 在实施之前定义延迟、质量和成本目标。
  2. 在实际负载和数据条件下进行基准测试。
  3. 仪器监控错误、漂移和用户影响。
  4. 在扩展之前准备回滚和事件响应路径。

资料来源与延伸阅读

  1. arXivVoyager: An Open-Ended Embodied Agent with Large Language Models
  2. MineDojoVoyager project page
  3. GitHubMineDojo/Voyager
  4. arXiv (ICLR 2023)ReAct: Synergizing Reasoning and Acting in Language Models
  5. arXivJARVIS-1: Open-World Multi-task Agents with Memory-Augmented Multimodal Language Models
  6. AnthropicEquipping agents for the real world with Agent Skills

不断探索

免费通讯

获取每日AI简报

每个工作日早晨提供三条经过验证的AI故事,使用简明英文撰写。永久免费,无广告。

每个工作日发送一封邮件。一键退订。我们永不出售或分享您的地址。

测试一下自己

Take the Voyager Minecraft Agent and Skill Library quiz

每个答案即时反馈,课程通过后可获得可验证ID的可分享证书。

开始测验

支持免费AI教育。AI Understanding是一家501(c)(3)非营利组织——无广告,无付费墙,永不收费。 捐款

常见问题

什么是航海家号Minecraft Agent and Skill Library?

Voyager 是一款由 LLM 驱动的 Minecraft 代理,它学习可重用的技能库,让它通过终身学习来解决新任务,而不是每次都从头开始。

随着时间的推移,Voyager 如何提高其功能?

Voyager 无需梯度更新即可学习:它将经过验证的技能存储为代码,并根据旧技能构建新技能,因此能力在上下文中复合。

Voyager 的技能以什么形式体现?

每个技能都是一个可执行代码片段,向 Minecraft 机器人发出操作,使技能可运行且可组合。

Voyager自动课程的作用是什么?

自动课程建议适合代理当前状态的越来越具有挑战性的任务,推动开放式探索。

Voyager 在面临新任务时如何检索相关技能?

技能通过嵌入其自然语言描述来索引,因此语义相关的技能可以作为新任务的构建块进行检索。

当生成的代码失败时,Voyager 的迭代提示循环会做什么?

Voyager 执行其代码,观察执行错误和游戏状态反馈,并提示模型修复代码,不断重复,直到技能发挥作用。