Voyager是第一个由LLM驱动的体现性终身学习代理,它利用GPT-4不断探索世界,发展越来越复杂的技能,并在没有人类干预的情况下不断做出新发现。Voyager 在发现新物品、解锁 Minecraft 技术树、穿越不同的地形以及将其学到的技能库应用于新实例化世界中的未见任务方面表现出卓越的性能。Voyager 可以作为一个起点,在不调整模型参数的情况下开发强大的通用代理。以下是原文翻译,原文、项目链接和开源地址在文末。
我们介绍 Voyager,这是 Minecraft 中第一款LLM驱动的嵌入式终身学习代理,它在没有人为干预的情况下不断探索世界,获得各种技能,并做出新的发现。Voyager 由三个关键组成部分组成:1)最大化探索的自动课程,2)用于存储和检索复杂行为的可执行代码的不断增长的技能库,以及3)一种新的迭代提示机制,该机制结合了环境反馈、执行错误和程序改进的自我验证。
Voyager 通过黑盒查询与GPT-4交互,从而绕过了模型参数微调的需要。Voyager 开发的技能是暂时扩展的、可解释的和合成的,这迅速增强了代理的能力,缓解了灾难性的遗忘。从经验上讲,Voyager 表现出了强大的情境终身学习能力,并在玩 Minecraft 方面表现出了非凡的熟练度。它获得的独特物品是之前的3.3倍,旅行距离是之前的2.3倍,解锁关键技术树里程碑的速度是之前的SOTA的15.3倍。Voyager 能够在一个新的 Minecraft 世界中利用学到的技能库从头开始解决新的任务,而其他技术则难以推广。
构建能够在开放世界中不断探索、规划和发展新技能的具有普遍能力的具体代理,对人工智能社区来说是一个巨大的挑战。经典方法采用了对原始动作进行操作的强化学习(RL)和模仿学习,这可能对系统探索、可解释性和泛化具有挑战性。基于大型语言模型(LLM)的代理的最新进展利用预先训练的LLM中封装的世界知识来生成一致的行动计划或可执行策略。它们被应用于游戏和机器人等具体任务,以及没有具体化的NLP任务。然而,这些代理人并不是终身学习者,他们可以在较长的时间内逐步获得、更新、积累和转移知识。
让我们以 Minecraft 为例。与人工智能研究的大多数其他游戏不同,Minecraft 没有强加预先定义的最终目标或固定的故事情节,而是提供了一个具有无尽可能性的独特游乐场。一个有效的终身学习代理应该具有与人类玩家类似的能力:(1)根据其当前的技能水平和世界状态提出合适的任务,例如,如果它发现自己在沙漠而不是森林中,就要学会在打铁之前先收割沙子和仙人掌;(2) 根据环境反馈完善技能,并将掌握的技能保存在记忆中,以备将来在类似情况下重复使用(例如,与僵尸作战类似于与蜘蛛作战);(3) 以自我驱动的方式不断探索世界并寻找新的任务。
我们介绍了 Voyager,这是第一款LLM驱动的嵌入式终身学习代理,可以在无需人工干预的情况下推动探索,掌握广泛的技能,并不断做出新发现。Voyager 是通过三个关键模块实现的:1)最大化探索的自动课程;2) 用于存储和检索复杂行为的技能库;以及3)新的迭代提示机制,其生成用于具体控制的可执行代码。我们选择使用代码作为行动空间,而不是低级的运动指令,因为程序可以自然地表示时间扩展和合成的动作,这对 Minecraft 中的许多长期任务至关重要。Voyager 通过提示和上下文学习与黑盒LLM(GPT-4)进行交互。我们的方法绕过了对模型参数访问和基于显式梯度的训练或微调的需要。
Voyager 由三个关键组成部分组成:用于开放式探索的自动课程,用于日益复杂的行为的技能库,以及使用代码作为动作空间的迭代提示机制。
自动课程
自动课程考虑了探索的进展和主体的状态,以最大限度地进行探索。该课程由GPT-4基于“发现尽可能多的不同事物”的总体目标编制。这种方法可以被视为一种上下文中的新颖性搜索形式。
技能库
上图:添加新技能。每项技能都通过嵌入其描述进行索引,这些描述可以在未来类似的情况下检索。
下图:技能检索。当面对自动课程提出的新任务时,我们进行查询以识别前五名的相关技能。复杂的技能可以通过编写更简单的程序来综合,随着时间的推移,Voyager的能力会迅速增强,并缓解灾难性的遗忘。
迭代提示机制
左图:环境反馈。GPT-4意识到在制作木棒之前还需要2块木板。
右图:执行错误。GPT-4意识到它应该制作一把木斧,而不是一把洋槐斧,因为 Minecraft 中没有洋槐斧。
自我验证。通过向GPT-4提供代理的当前状态和任务,我们要求它作为一个批评者,告知我们程序是否实现了任务。此外,如果任务失败,它还会通过建议如何完成任务来提供批评。
我们系统地评估了 Voyager 和基线的探索性能、技术树的掌握情况、地图覆盖率以及对新世界中的新任务的 zero-shot 概括能力。
明显改善的探索
如第一张图所示,Voyager 的优势体现在它能够不断取得新的进展,在160次提示迭代中发现了63个独特的项目,与同类项目相比是其3.3倍的新项目。另一方面,AutoGPT 在发现新项目方面明显滞后,而 ReAct 和 Reflexion 则难以取得重大进展。
技术树的掌握
Minecraft 技术树测试代理人制作和使用工具层次的能力。通过这棵树(木制工具→石制工具→铁制工具→钻石工具)的进展需要代理人掌握系统性和构成性的技能。在这个表格中,分数表示三次总运行中的成功试验次数。数字是三次试验中平均的提示迭代次数。迭代次数越少,方法就越有效。与基线相比,Voyager 解锁木质等级的速度快了15.3倍(就提示迭代而言),石质等级快了8.5倍,铁质等级快了6.4倍,Voyager 是唯一能解锁科技树中钻石等级的人。
广泛的地图遍历
Minecraft 地图的两个鸟瞰图。与基线相比,Voyager 能够通过穿越各种地形而航行2.3倍的距离,而基线代理经常发现自己被限制在局部区域,这大大阻碍了他们发现新知识的能力。
对未知任务的高效零样本泛化
对未见过的任务进行零样本概括。我们清除代理人的库存,将其重置到一个新的实例化的世界,然后用未见过的任务进行测试。在上表中,分数表示三次总运行中的成功试验的数量。数字是三次试验中平均的提示迭代次数。迭代次数越少,方法的效率就越高。Voyager 可以持续地解决所有的任务,而基线在50次提示迭代中不能解决任何任务。值得注意的是,我们从终身学习中构建的技能库不仅增强了 Voyager 的性能,而且也给 AutoGPT 带来了提升。这表明,技能库作为一种多功能的工具,可以随时被其他方法所采用,有效地作为一种即插即用的资产来提高性能。
消融研究(Ablation Studies)
GPT-3.5意味着用GPT-3.5代替GPT-4进行代码生成。Voyager的性能优于所有替代方案,表明了每个组件的关键作用。此外,GPT-4在代码生成方面明显优于GPT-3.5。
在这项工作中,我们介绍了 Voyager,第一个由LLM驱动的体现性终身学习代理,它利用GPT-4不断探索世界,发展越来越复杂的技能,并在没有人类干预的情况下不断做出新发现。Voyager 在发现新物品、解锁 Minecraft 技术树、穿越不同的地形以及将其学到的技能库应用于新实例化世界中的未见任务方面表现出卓越的性能。Voyager 可以作为一个起点,在不调整模型参数的情况下开发强大的通用代理。
原文链接/项目地址:https://voyager.minedojo.org/
开源地址:https://github.com/MineDojo/Voyager
本文由 https://helloai.wiki 分享