# 热门搜索 #
搜索
首个「创造式任务」基准来了!北大清华联手发布Creative Agents:专为想象力而生!
8667点击    2023-12-14 17:19


甲方说的话太模糊,让你全靠想象?最新模型Creative Agents帮你实现创造式任务!


近年来,许多研究通过训练服从自然语言指令的智能体,让智能体具有了解决各种开放式任务的能力。


例如,SayCan[1]利用语言模型实现了根据语言描述解决各种室内机器人任务的智能体,Steve-1[2]训练端到端的策略实现了能够在《我的世界》(Minecraft)中做出各种行为的智能体。


然而,在这些研究中提供给智能体的语言指令往往清晰明确地描述了任务,没有考虑让智能体发挥创造性、解决高自由度的任务。


例如,在Minecraft中,一些现有的智能体能够做「造钻石镐」、「用2个雪块和1个南瓜堆雪人」等流程明确的任务;但如果要求智能体「用沙子造一座城堡」,目前基于自然语言指令的智能体难以将这句话转化成一系列明确的建造城堡的动作。


这是因为,这句语言指令对任务的描述是抽象的,要求智能体能够自发地生成出复杂多样的城堡外观细节、并且推理出造城堡的过程。


而人类玩家得益于想象力和对复杂任务的规划能力,可以先想象出城堡最终的外观和结构,再以此规划出造城堡的顺序,从而创造性地完成这类任务。


目前的工作缺少对这类创造式任务的研究,这也是当前AI Agents研究面临的一个重要挑战。


北京大学和清华大学等机构组成的团队提出了一类解决创造式任务的智能体——Creative Agents,并推出了首个创造式任务的测试基准。



论文链接:https://arxiv.org/pdf/2312.02519.pdf

代码链接:https://github.com/PKU-RL/Creative-Agents

项目主页:https://sites.google.com/view/creative-agents 


作者认为完成创造式任务的关键是赋予智能体想象力,提出将智能体分为想象模块和控制器两部分:想象模块基于任务的语言描述,以文本或图像的形式生成任务的细节,为任务执行提供具体的目标;控制器基于前者生成的任务想象,规划执行的动作序列。


作者分别提出了想象模块和控制器的两种实现方式,实现了Creative Agents的多个变种。在Minecraft游戏中,作者用20个困难的建造任务建立创造式任务的测试基准,并提出了基于多模态模型GPT-4V的自动化评价指标。


实验结果表明,Creative Agents是首个能够创造复杂多样建筑的AI Agents。团队开源了任务集、评价指标、多个训练数据集以及Creative Agents的模型和代码,为具有创造性的AI Agents研究提供了一套基准。



Creative Agents完成《我的世界》中的创造式任务:“build a white pyramid-like house with windows, which is built of snow,” “build a sandstone palace with intricate details and towering minarets,” “build a wooden house made of oak planks and glass,” and “build a modern house with quartz blocks and glass.”


Minecraft建造任务和Creative Agents


传统的强化学习任务要求智能体在与环境的交互中最大化奖励。与之不同,开放式任务不通过人工定义的奖励函数来提供任务目标,而是由自然语言的指令提供任务描述。


开放式任务要求智能体能够服从任意的语言指令l,在环境M中做出与指令一致的行为。智能体的策略P(a|s, l)接收语言指令,根据环境的状态s做出动作a。


由于语言是抽象的,经常不能充分地描述任务细节,此时开放式智能体需要具有创造性来完成任务中不能被语言指令明确的部分。

作者将这类语言指令不足以充分描述任务细节的开放式任务称为创造式任务,其中一条简单的语言指令(如「造一座房子」)可以指代复杂、多样、新颖的任务目标(房子的具体样子)。创造式任务的语言指令为智能体的行为带来很大不确定性,要求智能体能够想象没有被详尽描述的任务细节,并规划动作来实现细节。


作者用开放世界Minecraft中造建筑的任务构建了一套创造式任务的测试基准。其中包含20条多样的语言指令,要求智能体在生存模式的游戏中用给定的材料建造符合语言描述的建筑(例子如下所示)。



为解决创造式任务带来的挑战,作者提出的Creative Agents框架,将智能体分解为想象模块和控制器:



其中g是对任务目标细节的想象,可以具有语言、图像等不同的模态。想象模块I从语言指令创造出细节丰富的任务目标,为控制器π提供更多任务信息、缓解任务的不确定性。同时,这种分解利于独立研究两部分模块、将它们任意组合在一起得到不同的智能体。


想象模块和控制器的实现 



用语言模型实现文本空间的想象(LLM CoT)


这种方法利用大语言模型GPT-4的文本推理能力,以文本形式生成对任务细节的想象。作者利用思维链推理(Chain-of-Thought),在提示词中设计与任务细节相关的五个问题(如下所示),要求GPT-4想象建筑不同方面的特征。



用扩散模型(Diffusion Model)实现图像空间的想象


在图像生成领域,扩散模型能够基于文本生成高质量、多样的图像,可以作为想象模块生成目标建筑的视觉形态,比文本形式的想象具有更丰富的细节。作者收集整理了14K带有语言描述的Minecraft建筑图像数据集,微调Stable Diffusion[3]模型,实现了从语言指令生成真实的Minecraft建筑图像。


基于模仿学习的控制器(BC Controller)


对专家行为的数据集做模仿学习是训练控制器的常用做法。作者在Minecraft建造任务上实现了一种分为两步的模仿学习控制器:首先收集了1M成对的建筑图像和建筑的3D体素数据集,通过训练Pix2Vox++模型,将想象模块生成的图像转换为建筑的蓝图(即3D体素);然后,作者收集了6M个在游戏中建造目标建筑体素的专家动作,用模仿学习得到了根据目标体素规划动作序列的控制器策略。


基于大模型生成代码的控制器(GPT-4(V) Code Gen.)


这个方法利用大模型GPT-4(V) 任务推理和写代码的能力,将底层控制转化为生成代码的问题。使用Mineflayer提供的对Minecraft中基本动作的封装,作者将文本/图像形式的想象输入给GPT-4(V),要求生成代码调用Mineflayer的接口、在游戏中创造相应建筑。


结合不同的想象模块和控制器,作者实现了Creative Agents的三个变体:CoT+GPT-4, Diffusion+GPT-4V, Diffusion+BC。此外,引入了一个不使用想象模块、直接根据语言指令生成建造代码的基线方法Vanilla GPT-4。


基于GPT-4V的评价指标


由于缺少奖励函数和任务成功的反馈,如何设置开放式任务的评价指标是待解决的问题。许多现有的工作通过问卷调研比较不同方法,比较费时费力、且容易受被试者主观偏好的影响。


作者提出用大模型GPT-4V实现自动的创造式任务评价,解决人类评价带来的问题。在Minecraft建造任务中,作者考虑从五个方面对智能体的表现进行评价:


1. 正确性:建筑是否与语言指令一致;

2. 复杂性:创造的建筑是否体积大、有复杂结构;

3. 质量:创造的建筑是否符合美学;

4. 功能性:创造的建筑是否具有必要的功能结构(如门窗、走廊等);

5. 鲁棒性:智能体在不同的任务上表现的稳定性。


基于GPT-4V的评价指标将任务的语言指令和智能体建造房屋的截图作为提示词,询问对各个方面表现的评价。


作者提出了两种不同的评价方式(如下所示):


1. 一对一比较的评价(左):将两种方法在同一个任务上创造建筑的图像并列,要求GPT-4V给出哪个更好。在对不同方法两两之间进行了多轮比较之后,使用Elo评分系统[4]对每个方法产生一个评分;


2. 直接打分的评价(右):给定一个方法造出建筑的一张图像,要求GPT-4V对各个方面进行0~10分的打分。



作者在实验中以同样的提示词制作问卷,收集了49名人类评审的评价结果,通过对比验证GPT-4V评价指标与人类评价的一致性。


实验结论


1. 相比不使用想象模块的方法,使用文本想象使建筑的细节更丰富:雷达图显示,CoT+GPT-4除鲁棒性外,所有方面表现超过Vanilla GPT-4,后者只能稳定地创造简单的建筑。Elo评分的结果显示Vanilla GPT-4弱于其他方法。



2. 使用图像想象的智能体表现好于使用文本想象的智能体:雷达图中的各个评价方面,Diffusion+GPT-4V表现略好于CoT+GPT-4,表明生成图像形式的想象效果更好。


3. Diffusion+GPT-4V相比其他方法具有最好的综合表现:它利用了扩散模型生成细节丰富的图像想象的优势,并且对扩散模型生成图像的噪声比较鲁棒。



4. GPT-4V评价和人类评价的一致性较好:在对各个方法的综合打分中,GPT-4V评价和人类评价对四个方法的性能排序基本一致。表1显示了GPT-4V和人类对每一对样本的评价具有良好的一致性,对两个样本的好坏关系做出一致评价的概率超过60%。



5. 受限于控制器的性能,目前Creative Agents能够创造的建筑比较简单:作者注意到GPT-4(V)倾向于生成简单的代码,而模仿学习的控制器存在过拟合的问题、建造的建筑不准确。下图显示了各种方法建造的结果与扩散模型想象的建筑图像均存在差距。



总结


作者对开放式智能体的创造性研究做出了第一步尝试,提出赋予智能体想象力、解决创造式任务的框架Creative Agents,并对若干种实现方案进行了实验分析。作者在Minecraft中构建了创造式任务的测试环境和数据集,提出了一套基于GPT-4V的评价指标,为后续相关领域的研究提供了基准。


创造性是人类区别于其他动物的重要特性之一。如何让智能体具备创造性、通过想象更好地完成开放式任务是实现通用人工智能的重要环节,也是学术界需要深入研究的问题。


参考资料:


[1] Anthony Brohan, et al. Do as I can, not as I say: Grounding language in robotic affordances. CORL, 2023. 


[2] Shalev Lifshitz, et al. Steve-1: A generative model for text-to-behavior in Minecraft. 2023. 


[3] Robin Rombach, et al. High-resolution image synthesis with latent diffusion models. CVPR, 2022. 


[4] Arpad Elo. The rating of chessplayers, past and present. 1986.


文章来自于微信公众号 “新智元”

AITNT资源拓展
根据文章内容,系统为您匹配了更有价值的资源信息。内容由AI生成,仅供参考
1
智能体

【开源免费】AutoGPT是一个允许用户创建和运行智能体的(AI Agents)项目。用户创建的智能体能够自动执行各种任务,从而让AI有步骤的去解决实际问题。

项目地址:https://github.com/Significant-Gravitas/AutoGPT


【开源免费】MetaGPT是一个“软件开发公司”的智能体项目,只需要输入一句话的老板需求,MetaGPT即可输出用户故事 / 竞品分析 / 需求 / 数据结构 / APIs / 文件等软件开发的相关内容。MetaGPT内置了各种AI角色,包括产品经理 / 架构师 / 项目经理 / 工程师,MetaGPT提供了一个精心调配的软件公司研发全过程的SOP。

项目地址:https://github.com/geekan/MetaGPT/blob/main/docs/README_CN.md

2
微调

【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。

项目地址:https://github.com/InternLM/xtuner

3
prompt

【开源免费】LangGPT 是一个通过结构化和模板化的方法,编写高质量的AI提示词的开源项目。它可以让任何非专业的用户轻松创建高水平的提示词,进而高质量的帮助用户通过AI解决问题。

项目地址:https://github.com/langgptai/LangGPT/blob/main/README_zh.md

在线使用:https://kimi.moonshot.cn/kimiplus/conpg00t7lagbbsfqkq0