多智能体协作
单Agent框架VS多Agent框架
单Agent框架,主要关注智能体的感知、决策、学习,不涉及多个智能体的交互。
开发单智能体的常用策略包括:(1)LLM配备工具调用能力,如代码执行器、web浏览器等;(2)通过提示策略获取更好的推理和规划能力,提示策略包括:思维链提示、ReAct、少样本提示等。
多智能体系统在各个领域已展现出显著的成就,通过利用专业智能体之间的协作与协调来增强单个 LLM 的能力。这些系统将任务分配给智能体,允许智能体共享知识、执行子任务,并使其努力朝着共同目标对齐。多智能体系统的潜在益处是革命性的。它们在知识记忆方面表现出色,使分布式智能体能够保留和共享多样化的知识库,而不会使单个系统过载[51, 154]。它们通过在智能体之间分配任务来增强长期规划,支持在长时间交互中持续解决问题[58]。此外,多智能体系统通过整合多个模型的专业知识(使用专门的提示/角色),实现有效的泛化,使它们能够比独立模型更有效地解决多样化的问题。最后,多智能体系统通过让专业智能体同时管理子任务来提高交互效率,从而加速复杂、多步骤任务的解决。 MAS 致力于实现集体智能,其中多个智能体的综合能力超过其个体贡献的总和 [24]。
多Agent协作机制
多智能体协作机制促使传统、孤立的模型向强调交互的方法转变,使智能体能够连接、协商、做决策、规划并联合行动,推动集体环境中的 AI 能力发展
合作类型
合作
在合作机制,多个智能体互相协调目标为同一个目标工作。CAMEL、AutoGen等采用合作类型的协作机制。
优点:根据agents各自的优势分配子任务,设计简单并且能够执行明确的目标。
缺点:
Agent常见的一个挑战是偶尔无法利用关于物理世界的常识性知识,这种缺陷可能导致系统因重复错误而陷入循环。
AutoGen是通过引入一个能够提供关键常识的grounding agent来解决该问题。
竞争
通常在游戏策略中使用
《西部世界》这个虚拟世界可以。
竞合
合作结构
集中式
去中心化和分布式
分层式
合作策略
基于规则的合作策略
基于角色的合作策略
编程智能体通常基于角色合作。
基于模型的合作策略
协调和编排架构
静态架构
合作和任务执行是静态的,基于领域知识和预定义规则。例如:顺序链接通道,代理按顺序协作完成任务。
动态架构
合作和角色分配可以根据任务需求动态调整。例如:Solo performance Prompting(SPP)可以根据输入动态识别相关角色,并生成相应的LLM代理进行协作。
动态架构
挑战
集体推理和决策
多Agent框架和多Agent应用的区别
多智能体设计
智能体角色、每个角色的职责、提示词设计
每个Agent都有特定的角色和专业知识,遵循一些已确立的标准。
核心关注指标
当前的基于 LLM 的多智能体协作系统基准主要关注成功率、任务结果、成本效益和协作效率等指标。
相关概念
心智理论(Theory of Mind)
关键要点
- 协作模式设计不当的多智能体效果不如提示工程设计优良的单智能体。
- 将特定领域的知识融入协作架构设计和有效系统提示的制定中至关重要。通常情况下,这些case中协作渠道是预先定义的,以符合领域需求。
- 不同场景下的最优协作策略:对于需要严格遵循既定程序的任务,基于规则的协议确保一致性和公平性——避免其他协议中因角色重要性或固有概率性质导致的偏见。
基于角色的策略允许代理在需要职业专业化的(预)结构化任务中有效利用自身专业知识。
基于模型的协议则适用于需要适应性和基于上下文的决策的不确定或动态情况。 - 可扩展性考虑:随着代理数量的增加,维持协调变得更加复杂。实施可扩展的架构和算法对于在不降低性能的情况下处理更大的代理网络至关重要。
- 伦理和安全考虑:确保代理在伦理范围内运行且不参与有害行为至关重要。实施安全协议和伦理指南有助于防止意外后果。
Todo
智能体回放和调试
(智能研讨厅形式-3D)
用户可以方便的修改短期记忆、长期记忆、提示等以调整、优化agent的效果。
参考
AutoGen-GraphFlow示例
Multi-Agent Collaboration Mechanisms: A Survey of LLMs