英伟达(NVIDIA)的科学家范林曦(Linxi "Jim" Fan)在2023年5月26日晚11:15发布消息:
我很高兴地宣布我们创造了 Voyager(航海家),它是第一个能在 Minecraft 游戏里自我学习的工具。Voyager 通过编写、修改、提交代码和查找技能库里的代码来提升自身能力。
利用 GPT-4,我们找到了一种新方法:“训练”是指运行代码,而不是降低梯度。“经过训练的模型”现在指的是由 Voyager 一次次组合出来的技能代码库,而不是浮点矩阵。我们正在把这种无需降低梯度的架构发展到极致。
在 Minecraft 游戏中,Voyager 表现得就像一个有经验的探险者。它找到的独特物品数量超过以前的3.3倍,游戏里的行程距离增加了2.3倍,并且解锁关键技术树里程碑的速度比以前快15.3倍。
我们把所有这些都开源了。现在大家都可以在 Minecraft 里面看到全能代理人!
聪明且有自主能力的智能代理是人工智能的新目标。它们在开放世界里不断探索、规划,并且学习新技能,驱动力是生存和好奇心。
到目前为止,Minecraft 是最好的测试平台,它提供了无尽的代理机会。
Voyager 主要由三部分组成:
1)一个反复提示机制,通过游戏反馈、执行错误和自我验证来完善程序;
2)一个技能代码库,用于保存和查找复杂行为;
3)一个自动设定课程的机制,以最大限度地增加探索。
首先,Voyager 试图使用流行的 Minecraft JavaScript API(Mineflayer)编写一个程序以达到某个目标。第一次尝试可能会出错。游戏环境的反馈和 JavaScript 执行的错误(如果有)将帮助 GPT-4 改进程序。
然后,Voyager 通过把成功的程序保存在向量数据库里逐步建立技能库。每个程序都可以通过其文档字符串的嵌入进行检索。复杂的技能是由简单技能组合而成,这增加了航海家随着时间的推移所具备的能力。
最后,自动设定的课程会根据代理当前的技能水平和世界状态提出适当的探索任务,比如在沙漠里学习收集沙子和仙人掌,而不是在森林里找铁。可以把这看作是*新奇搜索*的一种形式。
把这些元素组合在一起,以下是完整的数据流设计,可以在一个大的3D像素世界中实现终身学习,而无需任何人工干预。
我们在 Minecraft 中系统地对 Voyager 与其他基于大语言模型(LLM)的代理技术,如 ReAct、Reflexion 和流行的 AutoGPT 进行了评估。
在160次提示迭代中,Voyager 找到了63个独特的物品,比下一个最好的方法多出3.3倍。
那么,经过这样的终身学习,我们的“训练模型”——技能库究竟有多强呢?
我们清空了代理程序的库存/装备,生成了一个新世界,并进行了未见过的任务测试。Voyager 解决这些问题的速度显著加快。我们的技能库甚至可以提升 AutoGPT,因为代码很容易转移。
目前,Voyager 只支持文字,但未来可能会加入视觉感知。我们进行了初步的研究,让人类像图像字幕模型一样行动,并给 Voyager 提供反馈。
这项工作是我和我的团队在NVIDIA共同完成的:
@guanzhi_wang(我们优秀的实习生),
@yuqi_xie5,
@YunfanJiang,
@AjayMandlekar,
@ChaoweiX,
@yukez,
@DrJimFan(也就是我,共同的指导者),
@AnimaAnandkumar(共同的指导者)。
林曦 "Jim" 范(Linxi "Jim" Fan)
研究科学家
NVIDIA AI
我在 NVIDIA AI 工作,做研究科学家。我主要的研究方向是开发可以自主学习的智能体。为了达到这个大目标,我的研究涵盖了基础模型、策略学习、机器人技术、多模态学习和大规模系统等领域。我在斯坦福 Vision Lab 获得了博士学位,我的导师是李飞飞教授。在这之前,我曾在 NVIDIA、Google Cloud AI、OpenAI、Baidu Silicon Valley AI Lab 和 Mila-Quebec AI Institute 实习过。我是哥伦比亚大学2016届的优秀毕业生,并获得了 Illig 奖章。欢迎关注我最新的研究动态和团队更新!
参考
- https://twitter.com/DrJimFan/status/1662115266933972993
- https://voyager.minedojo.org
- https://arxiv.org/abs/2305.16291
- https://github.com/MineDojo/Voyag
- https://scholar.google.com/citations?user=sljtWIUAAAAJ&hl=en