将大型语言模型模块化打造协作智能体

news2024/11/27 20:32:17
B UILDING C OOPERATIVE E MBODIED A GENTS MODULARLY WITH L ARGE L ANGUAGE M ODELS
论文链接: https://arxiv.org/abs/2307.02485icon-default.png?t=N7T8https://arxiv.org/abs/2307.02485

1.概述

        在去中心化控制及多任务环境中,多智能体合作问题因原始感官观察、高昂的通信成本以及多目标任务的复杂性而显得尤为棘手。过往研究往往基于无成本通信的假设,或依赖于具备共享观察能力的集中控制器。

        LLMs在自然语言理解、对话生成、世界知识的丰富性以及复杂推理能力方面展现出了卓越的性能。尽管已有研究证明,LLMs能够借助零样本或少样本提示驱动具身智能体完成单智能体任务,但在去中心化设置下,特别是在通信成本高昂的情况下,构建合作智能体仍面临巨大挑战。

        本研究的核心目标是探讨如何有效利用LLMs来构建合作的具身智能体,这些智能体应能在充满挑战的去中心化环境中高效合作,与人类进行顺畅交流,并成功完成长期的多目标任务。

      因此,本研究提出了一种名为CoELA(Cooperative Embodied Language Agent)的认知启发模块化框架,该框架利用LLMs的强大推理能力及自然语言理解与生成能力,集成了感知、记忆、通信、规划和执行五大核心模块。

  •  感知模块:该模块负责处理从环境中接收到的复杂视觉观察,并从中提取有用信息。
  • 记忆模块:此模块模拟人类的长期记忆功能,用于维护智能体对物理环境及其他智能体的理解。
  • 通信模块:利用LLMs的能力,该模块负责生成有效的对话,并决定何时以及发送何种信息。
  • 规划模块:根据所有可用信息,该模块负责制定高层次的计划,包括通信时机的选择。
  • 执行模块:此模块负责通过生成原始动作来执行已制定的计划。

2.整体框架

        如图所示,CoELA由五个核心组件组成,包括:(a) 感知、(b) 记忆、(c) 通信、(d) 规划、(e) 执行。在每一次交互过程中,CoELA首先运用(a) 感知组件从环境中获取原始感官数据,随后更新(b) 记忆组件中的信息,该组件储存了智能体关于世界及其他智能体的知识与经验。接下来,CoELA通过两步法克服高效通信的难题:首先确定传递的信息内容,再判断是否发送此信息或选择其他方案,通过(c) 通信组件从(b) 中检索相关信息,并借助LLM生成最佳消息。之后,借助(d) 规划组件,CoELA运用强大的推理能力,根据(b) 中的相关信息和当前状态所提出的可行行动进行决策。生成的计划用于更新(b2) 情景记忆。最后,(e) 执行组件从(b3) 中检索存储的程序知识,将高层次计划转化为环境中可执行的原始动作。

(1)感知组件(Perception Component)

        为确保具身智能体在现实世界中的实用性,它们必须通过传感器捕获原始观察并提取对后续高阶推理有益的信息。我们通过训练一个Mask-RCNN模型(He et al., 2017),使其直接处理从环境中接收的复杂视觉数据,预测RGB图像中的分割掩码,并利用RGB-D图像构建3D点云,提取高层次有用信息,如关键对象的状态,并构建局部语义地图。

(2)记忆组件(Memory Component)

        对于智能体而言,维护其对世界及其他智能体的知识和经验的记忆至关重要。我们参考人类的长期记忆机制(Atkinson & Shiffrin, 1968; Wang & Laird, 2006; Nuxoll & Laird, 2012),为CoELA设计了语义记忆、情景记忆和程序记忆。

        语义记忆:储存CoELA关于世界的知识,涵盖语义地图、任务进度、自我状态及他人状态。每当新的观察被感知并处理后,语义记忆将相应更新。值得注意的是,由于其他智能体可能在CoELA不知情的情况下与对象互动并改变其状态,处理记忆与其他智能体描述的世界之间的不一致性增加了挑战。

        情景记忆:储存CoELA过去的经验,包括动作历史和对话历史。每当CoELA执行新动作(包括发送或接收消息),相关信息将被添加至情景记忆中。

        程序记忆:包含如何在特定环境中执行特定高层次计划的知识,涵盖实现这些计划的代码和神经模型参数。

(3)通信组件(Communication Component)

        为应对“发送什么”的问题,我们设计了一个通信组件,利用LLMs强大的自由形式语言生成能力作为消息生成器。为更好地调整LLMs以适应合作任务并避免无效的随意聊天,通信组件首先从记忆组件中检索相关信息(包括语义地图、任务进度、智能体状态、他人状态、动作和对话历史),然后使用模板将这些信息转换为文本描述,最终提示LLMs生成待发送的消息。为更好地约束LLMs生成的消息,我们在提示的结尾添加了一个注释,并在对话历史的开头附加了两个种子消息,以引导产生预期的有效通信行为。

(4)规划组件(Planning Component)

        CoELA需要一个强大的规划组件来决定在利用所有收集和存储的可用信息的基础上采取何种行动,以最大限度地提升合作效率。从头开始设计这样的组件需要大量的专业人力资源,且难以普遍化。因此,我们直接利用强大的LLMs作为规划组件,首先从记忆组件中检索相关信息并将其转换为文本描述,然后根据当前状态和存储的程序知识编制所有可用高层次计划的行动列表,以供LLMs选择。这种形式化的过程使LLMs能更集中地进行推理并生成可执行计划,无需任何少样本演示。我们还采用Kojima等人(2022)介绍的零样本链式推理技术,鼓励LLMs在给出最终答案之前进行更多推理。

(5)执行组件(Execution Component)

        如(Deitke et al., 2022)所述,解决具有挑战性的具身任务需要模块化方法来应对任务的复杂性。我们发现,尽管LLMs在制定高层次计划方面表现卓越,但在制定低层次控制方面表现不佳。为实现不同环境中有效且通用的合作决策,我们设计了一个执行组件,将高层次计划转化为环境中可执行的原始动作,使规划组件能够泛化并专注于利用LLMs丰富的世界知识和强大的推理能力解决整体任务。从实际角度来看,这种设计还能减少LLMs的推理时间,节省时间和成本。CoELA从其记忆组件中检索与计划相关的程序知识,然后执行适合环境的原始动作。

3.实验

(1)实验设置

  •  ThreeDWorld Multi-Agent Transport (TDW-MAT)任务:该任务源自ThreeDWorld Transport Challenge的扩展,旨在通过增加对象与容器类型、优化对象放置的真实性,以及强化智能体间通信功能,进一步推进多智能体协同运输的研究。智能体需运用容器作为运输工具,将尽可能多的目标对象运送至指定位置。智能体以自我中心的512×512 RGB-D图像为观察依据,在低层次导航控制、互动与通信等多个动作空间中作出决策。我们选择了TDW-House数据集中的6个场景,并结合食物与物品两大任务类型,共构建24个测试集场景,每个场景包含3000帧。
  • Communicative Watch-And-Help (C-WAH)任务:C-WAH任务源于Watch-And-Help Challenge的扩展,基于VirtualHome-Social模拟平台,专注于智能体合作能力与通信机制的研究。任务涵盖五种常见的家庭活动,每种活动均设定了具体的谓词与满足条件。我们从中选取了10个测试集场景,每种活动类型各占2个,每个场景包含250步操作。

(2)基线方法:

  •  MCTS-based Hierarchical Planner (MHP):该方法沿用了原Watch-And-Help Challenge中的顶尖基线,结合了基于MCTS的高层次规划与基于回归规划的低层次规划策略。
  • Rule-based Hierarchical Planner (RHP):此方法继承自ThreeDWorld Transport Challenge的优质基线,结合基于启发式规则的高层次规划与A*算法的低层次规划,并采用了前沿探索策略。
  • Multi-Agent Transformer (MAT):MAT是基于多智能体强化学习(MARL)的基线方法,通过集中决策转换器从共享观察中生成动作。为适应本实验设置,MAT将语义地图与智能体状态作为观察对象,并采用50帧堆叠作为强化学习步骤。

(3)实现细节:

        在感知模块训练中,我们采用了Mask-RCNN。同时,通过OpenAI API实例化了顶尖LLM GPT-4,并设置了温度参数为0.7,top-p为1,最大tokens数为256。此外,我们还进行了使用LoRA技术微调LLAMA-2的实验。

(4)度量标准:

- 运输率(TR):用于评估TDW-MAT任务中子目标的完成比例。

- 平均步数(L):衡量C-WAH任务完成的效率。

- 合作智能体效率改进(EI):以量化方式反映智能体合作所带来的效果提升。

(5)实验结果

与AI智能体合作

        CoELA与基线智能体在合作中展现出更优的效果。据表1数据显示,相较于RHP单独完成任务的情况,与CoELA合作显著提升了运输率(TR)和效率提升(EI),分别为0.69(36%)和0.61(29%)。这充分表明,即便在不深入了解其他智能体内部工作机制的条件下,CoELA亦能有效推理其他智能体的状态。

        在C-WAH任务中,如表2所示,与CoELA合作实现的效率提升高达45%,而与MHP合作仅提升33%。进一步在符号观察和视觉观察的场景下,CoELA+CoELA的组合表现优于其他智能体组合。

        对于CoLLAMA与GPT-4的对比,当采用开源模型LLAMA-2替代GPT-4时,性能出现明显下降。然而,经过微调的CoLLAMA在TDW-MAT任务中取得了0.70的TR,并在部分子任务上超越了GPT-4。

        针对CoELA的合作表现,进行了定性分析。结果表明,CoELA能够有效分享进展与信息,适时请求帮助并响应他人请求,根据合作对象的情况调整计划,并明智地选择通信时机。

与人类合作

        关于与人类合作的重要性,我们进行了一项人类实验。在C-WAH环境中,让8位受试者与智能体Alice进行合作。实验涵盖了四种场景:与MHP合作、与CoELA合作、无通信的CoELA合作以及单独完成任务。受试者可通过点击可见对象并选择动作与智能体进行交互,包括导航至各个房间以及通过聊天框进行通信。

        每次实验后,受试者根据与智能体的合作情况进行了7点Likert量表的评分,评估标准涵盖通信的有效性、智能体对信息的理解与分享程度、帮助程度以及信任度。

        实验结果如图4a所示,CoELA在与人类合作时表现优于MHP,即便在无通信条件下,CoELA的表现亦优于MHP。图4b进一步显示,人类更倾向于信任与他们进行自然语言交流的CoELA(信任评分6.3对比无通信CoELA的4.7,p=0.0003),从而实现了更佳的合作效果。与采用模板语言交流的MHP相比,人类更倾向于与能够理解和响应人类对话的CoELA进行合作。

 (6)分析        

我们需要强大的LLM用于规划和通信模块吗?

  • 如图4c所示,当我们用GPT-3.5替换GPT-4来驱动CoELA时,智能体需要更多的步骤来完成任务。GPT-3.5在状态推理方面犯的错误更多,因此生成的计划不太合理,导致CoELA完成任务的时间更长。GPT-3.5也倾向于更频繁地生成无用信息。性能差距可以归因于GPT-4更高级的推理和理论心智能力,这一点也在Bubeck et al. (2023)中有所观察。

通信是否有效?

  • 尽管在某些情况下通信仍然失败,但如图3所示,我们的智能体表现出有效的通信行为,如分享信息、请求帮助、响应请求以及知道何时不进行通信。更重要的是,自然语言通信为我们提供了一种透镜,用于理解人类和AI之间的决策,这可能导致更好的合作。如图4c所示,在禁用智能体之间的通信时没有观察到显著的性能下降,因为在我们的设置中,进行高效通信非常具有挑战性,要求智能体准确建模他人并理解自然语言的模糊性,这对当前LLMs来说仍然难以做到稳健。

记忆模块和执行模块是否有效?

  • 如图4c所示,智能体在没有记忆模块的情况下完成任务所需的步骤几乎翻倍,这表明记忆模块在存储和更新对场景和其他智能体的知识和经验方面的重要性。我们还尝试移除执行模块并让规划模块进行低层次控制,发现同样效果不佳。

(7)LLM的失败案例和局限性

        尽管使用最先进的LLMs构建的CoELA表现出色并取得了令人印象深刻的结果,但我们发现智能体在几个基本能力上仍然存在不足。我们提供了对这些局限性的深入分析,并分享了一些关于未来设计更好合作具身智能体的见解。

        限制3D空间信息的使用

  • CoELA没有有效引入对象和房间的空间信息到纯文本语言模型中,这可能导致智能体提出的探索计划在语义上合理但实际上耗时。利用能够有效处理视觉模态并生成自然语言的多模态大型模型可以克服这一局限性,构建更好的具身智能体(Huang et al., 2023; Driess et al., 2023; Lu et al., 2022)。

        缺乏对低层次动作的有效推理

  • 为了帮助LLMs更好地专注于解决总体任务,我们抽象出高层次计划供LLMs直接推理,但这也使得LLMs无法执行低层次动作的推理,可能导致看似合理但实际上无效的决定。例如,在图5a中,Alice看到Bob同时拿着一个容器和一个目标物体,并认为他可能不知道如何使用容器,于是发送消息指示他将物体放入容器,尽管Bob实际上已经在执行这一动作。开发能够直接进行低层次控制的智能体对于构建更好的合作智能体至关重要。

在复杂推理上的不稳定表现

  • 尽管LLMs在大多数情况下能做出正确的推理,但它们仍偶尔犯错,包括误解环境规则和对未满足目标的错误推理(如图5b所示)。这些错误可能导致任务失败,这呼吁我们开发具有更强指令遵循和推理能力的LLMs。

              

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1903229.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

穿梭印度风情记:维乐 Angel Revo Halo坐垫,让每一寸旅程闪耀光辉!

想象骑乘在印度的万花筒世界中,斑斓色彩与悠久历史交织,每一转轮都是对神秘东方的深刻探索。在这样的骑行之旅中,维乐Angel Revo Halo坐垫不仅是你的坐骑上的宝石,更是舒适与探险的完美媒介。    探索印度的色彩与灵魂&#x…

每日一题~oj(贪心)

对于位置 i来说,如果 不选她,那她的贡献是 vali-1 *2,如果选他 ,那么她的贡献是 ai. 每一个数的贡献 是基于前一个数的贡献 来计算的。只要保证这个数的前一个数的贡献是最优的,那么以此类推下去,整体的val…

【项目设计】负载均衡式——Online Judge

负载均衡式——Online Judge😎 前言🙌Online Judge 项目一、项目介绍二、项目技术栈三、项目使用环境四、项目宏观框架五、项目后端服务实现过程1、comm模块设计1.1 Log.hpp实现1.2 Util.hpp实现 2、compiler_server 模块设计2.1compile.hpp文件代码编写…

【QT】容器类控件

目录 概述 Group Box 核心属性 Tab Widget 核心属性 核心信号 核心方法 使用示例: 布局管理器 垂直布局 核心属性 使用示例: 水平布局 核⼼属性 (和 QVBoxLayout 属性是⼀致的) 网格布局 核心属性 使用示例: 示例&#x…

【C++ OpenCV】机器视觉-二值图像和灰度图像的膨胀、腐蚀、开运算、闭运算

原图 结果图 //包含头文件 #include <opencv2/opencv.hpp>//命名空间 using namespace cv; using namespace std;//全局函数声明部分//我的腐蚀运算 Mat Erode(Mat src, Mat Mask, uint32_t x0, uint32_t y0) {uint32_t x 0, y 0;Mat dst(src.rows, src.cols, CV_8U…

设计模式之状态机模式

一、状态机模式介绍 状态机模式&#xff08;State Machine Pattern&#xff09;是一种用于描述对象行为的软件设计模式&#xff0c;属于行为型设计模式。在状态机模式中&#xff0c;对象的行为取决于其内部状态&#xff0c;并且在不同的状态下&#xff0c;对象可能会有不同的行…

RAG 案框架(Qanything、RAGFlow、FastGPT、智谱RAG)对比

各家的技术方案 有道的QAnything 亮点在&#xff1a;rerank RAGFLow 亮点在&#xff1a;数据处理index 智谱AI 亮点在文档解析、切片、query改写及recall模型的微调 FastGPT 优点&#xff1a;灵活性更高 下面分别按照模块比较各框架的却别 功能模块QAnythingRAGFLowFastG…

【手写数据库内核组件】01 解析树的结构,不同类型的数据结构组多层的链表树,抽象类型统一引用格式

不同类型的链表 ​专栏内容&#xff1a; postgresql使用入门基础手写数据库toadb并发编程 个人主页&#xff1a;我的主页 管理社区&#xff1a;开源数据库 座右铭&#xff1a;天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物. 文章目录 不同类型…

Day05-04-持续集成总结

Day05-04-持续集成总结 1. 持续集成2. 代码上线目标项目 1. 持续集成 git 基本使用, 拉取代码,上传代码,分支操作,tag标签 gitlab 用户 用户组 项目 , 备份,https,优化. jenkins 工具平台,运维核心, 自由风格工程,maven风格项目,流水线项目, 流水线(pipeline) mavenpom.xmlta…

Android 10年,35岁,该往哪个方向发力

网上看到个网友发的帖子&#xff0c;觉的这个可能是很多开发人员都会面临和需要思考的问题。 不管怎样&#xff0c; 要对生活保持乐观&#xff0c;生活还是有很多的选择和出路的。 &#xff08;内容来自网络&#xff0c;不代表个人观点&#xff09; 《Android Camera开发入门》…

关闭vue3中脑瘫的ESLine

在创建vue3的时候脑子一抽选了ESLine,然后这傻卵子ESLine老是给我报错 博主用的idea开发前端 ,纯粹是用不惯vscode 关闭idea中的ESLine,这个只是取消红色波浪线, 界面中的显示 第二步,在vue.config.js中添加 lintOnSave: false 到这里就ok了,其他的我试过了一点用没有

专业140+总分420+天津大学815信号与系统考研经验天大电子信息与通信工程,真题,大纲,参考书。

顺利上岸天津大学&#xff0c;专业课815信号与系统140&#xff0c;总分420&#xff0c;总结一些自己的复习经历&#xff0c;希望对于报考天大的同学有些许帮助&#xff0c;少走弯路&#xff0c;顺利上岸。专业课&#xff1a; 815信号与系统&#xff1a;指定教材吴大正&#xf…

飞书 API 2-4:如何使用 API 将数据写入数据表

一、引入 上一篇创建好数据表之后&#xff0c;接下来就是写入数据和对数据的处理。 本文主要探讨数据的插入、更新和删除操作。所有的操作都是基于上一篇&#xff08;飞书 API 2-4&#xff09;创建的数据表进行操作。上面最终的数据表只有 2 个字段&#xff1a;序号和邮箱。序…

(完整音频)DockerHub、OpenAI、GitCode,脱钩时代,我们该如何自处?

本期主播 朱峰&#xff1a;「津津乐道播客网络」创始人&#xff0c;产品及技术专家。&#xff08;微博&#xff1a;zhufengme&#xff09;高春辉&#xff1a;「科技乱炖」主播。“中国互联网站长第一人”&#xff0c;科技、互联网领域的连续创业者。&#xff08;微博&#xff1…

SCI一区TOP|准随机分形搜索算法(QRFS)原理及实现【免费获取Matlab代码】

目录 1.背景2.算法原理2.1算法思想2.2算法过程 3.结果展示4.参考文献5.代码获取 1.背景 2024年&#xff0c;LA Beltran受到分形几何、低差异序列启发&#xff0c;提出了准随机分形搜索算法&#xff08;Quasi-random Fractal Search, QRFS&#xff09;。 2.算法原理 2.1算法思…

内容营销专家刘鑫炜:网站排名需考虑哪些SEO优化技巧?

网站排名的SEO优化技巧包括&#xff1a; 1. 关键词研究&#xff1a;了解目标受众的搜索关键词&#xff0c;将这些关键词合理地应用在网站的标题、描述、正文和标签中&#xff0c;有助于提高网站排名。 2. 内容优化&#xff1a;创建高质量、有价值的内容&#xff0c;可以吸引搜…

【leetcode52-55图论、56-63回溯】

图论 回溯【56-63】 46.全排列 class Solution:def permute(self, nums):result []self.backtracking(nums, [], [False] * len(nums), result)return resultdef backtracking(self, nums, path, used, result):if len(path) len(nums):result.append(path[:])returnfor i …

【HBZ】高性能zeroCopy零拷贝与普通IO差距与原理

简介 随着IO不断地发展&#xff0c;无论哪种拷贝方式&#xff0c;DMA从磁盘拷贝数据到内核缓冲区&#xff0c;都会拷贝多一些数据, 不会只拷贝用户态的指定size的数据&#xff0c;而是会将目标数据的临近数据也都拷贝到内核缓冲区&#xff0c;以便下次IO操作可以直接从内核缓冲…

【python】python客户信息审计风险决策树算法分类预测(源码+数据集+论文)【独一无二】

&#x1f449;博__主&#x1f448;&#xff1a;米码收割机 &#x1f449;技__能&#x1f448;&#xff1a;C/Python语言 &#x1f449;公众号&#x1f448;&#xff1a;测试开发自动化【获取源码商业合作】 &#x1f449;荣__誉&#x1f448;&#xff1a;阿里云博客专家博主、5…

unity3d:Shader知识点,矩阵,函数,坐标转换,Tags,半透明,阴影,深度,亮度,优化

基本结构 Shader "MyShaderName" {Properties {// 属性}SubShader {// 针对显卡A的SubShaderPass {// 设置渲染状态和标签Tags { "LightMode""ForwardBase" }// 开始Cg代码片段CGPROGRAM// 该代码片段的编译指令&#xff0c;例如&#xff1a;#p…