成果 | 智能体互联网(IoA):编织异构智能体的协同智能网络

学术   2024-07-16 22:23   北京  


互联网改变了人们的协作和知识共享方式,连接了世界各地拥有不同技能和背景的个体。这个全球网络促成了诸如维基百科和Linux操作系统等协作项目的创建,这些项目单凭任何个人都难以完成。可以说,互联网极大地促进了人们之间的协作,推动了人类成就的边界。


有鉴于此,我们产生了一个疑问:能否为基于LLM的自主智能体同样创建一个类似的平台来促进他们彼此之间的协作?随着LLMs的迅猛发展,我们现在已经拥有能够在广泛任务上实现接近人类表现的自主智能体。这些智能体可能有不同的架构、运行于不同的设备、有不同的能力。随着这些由不同开发者开发的智能体能力不断增长,我们希望他们不再继续单兵作战,而是即使身处异地,彼此独立,也能通过网络平台进行沟通,取长补短,协同工作。


为了解决这一挑战,我组提出了LLM驱动的智能体互联网(Internet of Agents, IoA)的概念,这是一个受互联网启发的智能体通信和协作通用框架。IoA旨在解决现有多智能体框架的三个根本限制:生态系统隔离单设备模拟固定的沟通机制。通过引入一个能够集成不同第三方智能体的协议,以及类似即时通讯应用的框架来促进智能体在平台上发现其他智能体并动态组队。IoA为异构智能体的协作提供了一个灵活且高效的平台。


论文信息


 ➤  论文地址 

 🔗https://www.arxiv.org/abs/2407.07061


 ➤  GitHub 地址 

 🔗https://github.com/OpenBMB/IoA



框架概述

IoA 被设计为一个类似即时通讯应用的平台,使得各种不同的自主智能体能够无缝通信和协作。受互联网概念的启发,IoA 尝试解决目前大多数多智能体系统中的三个问题:


1. 生态系统隔离:大多数多智能体系统只允许接入框架内部定义的智能体,而IoA允许开发者通过为现有智能体实现一个adapter接入到IoA的客户端中并注册到IoA服务端,扩展系统内智能体的能力多样性。


2. 单设备模拟:大多数多智能体系统在一个设备上模拟多个智能体,这与现实场景相悖。IoA 支持分布在多个设备和位置的智能体通过网络进行协作。


3. 固定的沟通机制:大多数多智能体系统的沟通机制单一,或者需要用户进行指定。IoA将沟通阶段抽象为5个阶段:讨论、同步任务分配、异步任务分配、暂停等待任务完成、总结,通过有限状态自动机实现了自主会话流程控制机制,允许智能体根据任务需求和进展自适应调整协作策略。


IoA 的核心由两个主要组件组成:服务器和客户端。服务器作为中心枢纽,管理智能体注册、发现和消息路由,确保具备不同能力的智能体能够互相发现并发起通信。客户端则作为单个智能体的包装,提供必要的通信功能,并适应指定的沟通协议。


客户端与服务端的层级结构,从上到下分别为交互层、数据层与基础层


如上图,服务端和客户端均包括三层架构:


1. 交互层:负责团队组建和智能体通信等上层功能实现。

2. 数据层:管理智能体、群聊和任务相关的信息。

3. 基础层:提供智能体集成、数据管理和网络通信的基础设施。



关键机制

为了使得智能体在IoA框架中能达成高效的协作,我们设计了几个关键机制:


 ➤  智能体注册与发现 

为了实现分布式的异构智能体协作,我们借鉴了即时通信软件中用户可以进行注册并被其他用户通过关键词搜索到的机制,提出了智能体注册与发现机制。


  • 智能体注册:当一个新智能体加入 IoA 时,他所属的客户端需要向服务器发送注册请求。在注册中,我们要求智能体应提供其能力、技能和专长领域的详细描述。这些描述被存储在服务器的数据层中的智能体仓库模块中。


  • 智能体发现:智能体发现功能利用存储在智能体仓库模块中的信息,使智能体可以为特定任务找到合适的协作者。当一个智能体需要组建团队或寻求帮助时,它可以使用服务器的智能体查询模块进行搜索。通过匹配搜索条件和智能体描述,确保相关能力的智能体能够被发现。


 ➤  自主嵌套团队组建 

自主嵌套团队组建机制实现了根据任务需求动态灵活地组合合适的智能体。该机制允许智能体根据任务需求自适应地组建团队,并为复杂、多方面的任务创建嵌套子团队。


  • 团队组建过程:当一个智能体被分配任务时,它可以使用服务器提供的智能体查询功能寻找合适的协作者。一旦找到合适的智能体,它会发起一个新的群组聊天,形成团队。

  • 嵌套组队:嵌套组队允许形成团队和子团队的层级结构。在任务执行过程中,如果智能体被分配了任务,且他识别到需要额外的专长,它可以再次搜索合适的智能体,并发起一个新的子群组聊天,从而形成树状的团队结构。如下图所示。

嵌套组队机制


 ➤  自主会话流程控制 

有效的通信对于成功的协作至关重要。受言语行为理论(Speech Act Theory)启发,我们在 IoA 中引入了自主会话流程控制机制。该机制使智能体能够协调其通信,并保持结构化对话,提升协作的效率和效果。


  • 顺序发言机制:为管理潜在的冲突并确保清晰的沟通,IoA 采用了基本的顺序发言机制。在任何给定时间内,只有一个智能体可以发言,防止混乱并保持通信顺序。尽管简单,但当搭配上下面的有限状态机,仍可以构成灵活但相对可控的自主对话流程。


  • 群组聊天状态的有限状态机:如下图所示,我们将会话流程形式化为一个有限状态机,每个状态对应协作过程的不同阶段。通过状态转换,智能体能够根据任务需求和进展灵活调整会话状态。

完成任务过程的有限状态转移示意图


通过实现这些关键机制,IoA 实现了智能体之间的结构化、高效的通信和协作。这种方法允许智能体根据协作需求动态调整,促进在复杂多智能体场景中的更有效的问题解决和决策。


 ➤  任务分配与执行 

任务分配与执行机制旨在高效地在智能体之间分配工作,并管理简单和复杂任务的执行。该机制与团队组建和会话流程控制机制协同工作,确保协作和任务完成。


  • 任务表示:在 IoA 中,一个任务被表示为一个元组,包括任务描述和任务可以分解成的子任务集。


  • 任务分配:任务分配在群组沟通中进行,分为同步任务分配和异步任务分配两种类型。同步任务分配暂停群组聊天直到分配的任务完成,而异步任务分配不打断正在进行的讨论,允许任务并行执行。


  • 任务执行:任务分配后,负责的智能体开始执行。执行过程取决于任务的性质和智能体的能力。集成的第三方智能体通过客户端的智能体集成模块处理任务执行。


通过集成任务分配与执行与团队组建和会话流程控制机制,IoA 提供了一种灵活和高效的方法来管理复杂的多智能体协作。该方法允许动态任务分解、专门智能体分配和协调执行,使系统能够有效地解决各种问题。




实验与结果

为了展示 IoA 在整合异构智能体方面的有效性,我们在多种任务上进行了全面的实验。这些实验旨在展示智能体异质性的不同方面,包括工具多样性、架构多样性、不同的观察和动作空间,以及不同的知识基础。我们的目标有两个:一是展示 IoA 在促进异构智能体协作中的熟练程度,二是突出其在各种问题领域中的适应性。


 ➤  异构工具:GAIA基准测试 

GAIA是Meta提出的一个Agent能力benchmark,包含需要推理能力、网页浏览、代码计算等多方面能力的多样化任务。通过仅接入最基础的4个ReAct智能体(分别配备有网页浏览器、代码解释器、wikidata查询工具以及Youtube字幕下载器),IoA 在 GAIA 基准测试中的表现显著优于现有方法。尽管仅使用了基本的 ReAct 智能体,IoA 在整体性能上仍然达到最高,并在需要高级推理和复杂协作的更高难度级别中表现尤为突出。


GAIA结果表现


 ➤  异构架构:开放式指令基准测试 

GAIA中大部分包含的是问答题,为了评测IoA在更为现实的开放式问题下的表现,我们通过self-instruct的方式构建了一个涵盖代码、数学、生活助手以及搜索报告四类任务共150条数据。并在IoA中接入了AutoGPT与Open Interpreter——两个最知名的智能体——通过GPT-4对IoA的输出与AutoGPT、Open Interpreter两者的输出分别进行对比。


实验结果显示,IoA 在协调 AutoGPT 和 Open Interpreter 的协作方面表现卓越,显著优于单独使用这些智能体。IoA 在所有四个任务类别中均表现出色,相比于AutoGPT与Open Interpreter来说,总体胜率分别为76.5%和63.4%。


接入了AutoGPT + Open Interpreter的IoA与两者分别的对比


 ➤  异构观察和动作空间:具身智能体任务 

为了考察IoA在智能体所处环境与动作空间不同的情况下,能否使智能体高效协同完成任务,我们在Rocobench上进行了测试,这是一个虚拟具身的benchmark,在每个任务中,两个或三个具身智能体需要通过沟通协作完成共同的目标。


我们将 IoA 与两个基准进行了对比:Central Plan 和 Roco Dialog。结果显示,IoA 在具身AI任务中表现出色,成功率显著高于专为此任务设计的 Roco Dialog 框架。在多个任务中,IoA 的成功率甚至超过了拥有完整环境可见性的 Central Plan 基准。


具身任务中,IoA与其他基准的对比


IoA完成Rocobench任务


 ➤  异构知识:检索增强生成 

在多智能体系统中,一个常见情况是不同的智能体具备不同的知识,例如挂载了不同的知识库,或是在不同的领域数据集上进行过训练。为了观察在知识异构的情况下IoA是否能够使得不同智能体有效沟通并完成回答,我们提出在RAG问答场景下进行测试,我们设置了三种场景:


  1. 2个异构智能体场景:分别能够访问Google和Wikipedia

  2. 2个同构智能体:两者都能访问两个知识源,用于作为IoA在信息完备情况下的对比实验

  3. 3个同构智能体:三者都能访问两个知识源,用于衡量IoA在知识冗余情况下是否仍有可扩展性。


实验结果显示,基于GPT 3.5的IoA在所有数据集上的RAG表现能够达到或超越单个GPT-4的表现,同时在异构知识场景下,IoA 的表现也较为出色,在两个数据集上超过了之前一个同构的多智能体RAG框架。同时,IoA的同构表现也体现了IoA有着较高的能力上限。


IoA在RAG任务上与其他基线框架的对比



总结与展望

在本论文中,我们提出了IoA,这是一个受互联网启发的智能体通信和协作框架,旨在解决现有多智能体框架中的关键限制。IoA 引入了智能体集成协议、类似即时通讯的架构设计,以及动态的团队组建和会话流程控制机制。这些创新使 IoA 能够灵活且高效地整合异构智能体,促进跨设备的分布式协作。


尽管 IoA 已经展示了强大的性能和广泛的适用性,但仍有许多研究方向值得探索:


1. 通信效率的优化:尽管基于OpenAI GPT的IoA在通信和协作方面表现优异,但仍存在进一步优化的空间,例如我们正在训练开源模型,希望通过使用开源模型作为客户端中的沟通模型,来摆脱IoA对GPT的依赖,提高沟通效率,也使得框架可本地部署。

2. 真实世界应用场景的测试:我们期望有更多真实世界中的场景能够真正展示IoA连接不同设备智能体的潜力,例如将手机与电脑上运行的智能体进行连接,构成更完备的个人助手系统。

3. 更大规模智能体的测试:受限于当前智能体benchmark的发展,没有benchmark足够复杂到需要成百上千智能体进行协作。我们期望能将更大规模的智能体注册到IoA的服务器上,从而实现更大规模的多智能体协作。

 

我们期待在未来的工作中,进一步优化和扩展 IoA,使其在更多实际应用中发挥重要作用,并推动智能体协作和通信的研究。



作者介绍

从左至右依次为:李燃、陈纬泽、游孜明、管义彤

陈纬泽:清华大学自然语言处理实验室3年级博士生,曾主导或参与AgentVerse、ChatDev等多智能体系统的研究与开发。

游孜明:北京大学软件与微电子学院2年级硕士生。

李燃:清华大学自然语言处理实验室科研助理。

管义彤:北京大学软件与微电子学院3年级硕士生。




关于我们

清华大学自然语言处理与社会人文计算实验室(TsinghuaNLP)成立于 20 世纪七十年代末,是国内开展自然语言处理研究最早、深具影响力的科研单位,也是中国中文信息学会计算语言学专业委员会及中国人工智能学会因果与不确定性人工智能专业委员会的挂靠单位。实验室在学术总体带头人孙茂松教授及学术方向带头人刘洋教授刘知远副教授的带领下,围绕以中文为核心的自然语言处理,在语言大模型、跨模态大模型、中文信息处理、机器翻译、知识图谱、智慧教育、社会人文和艺术计算等方面开展系统深入的研究,在国内外具有较大的学术影响。近年来,实验室承担了国家 973 项目、国家重点研发项目、国家社会科学基金重大项目等多项重要研究任务,并与腾讯、华为等企业建立密切的学术合作关系。


Website:http://nlp.csai.tsinghua.edu.cn/

Email:thunlp@163.com

GitHub:https://github.com/thunlp

               https://github.com/OpenBMB

Twitter:https://twitter.com/TsinghuaNLP

THUNLP 长期开放招聘

TsinghuaNLP
清华大学自然语言处理与社会人文计算实验室,是中国中文信息学会计算语言专业委员会和中国人工智能学会不确定性专业委员会的挂靠单位。负责人为清华大学计算机科学与技术系孙茂松教授,核心骨干为刘洋教授,刘知远副教授。
 最新文章