本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
多代理协作
多代理协作是指一种模式,在这种模式中,多个自主代理通过协商解决复杂的任务,每个代理都有不同的角色、专业或目标。这些代理人可以通过共享信息、划分责任和共同推理目标来独立运作,也可以与其他代理人一起行动。
这种模式不同于工作流代理,后者在结构化流程中集中协调任务并将其委派给下属代理。相比之下,多主体协作通过实现适应性、平行性和认知分裂来强调 peer-to-peer紧急协调。下表比较了多代理与工作流代理的协作:
功能 |
工作流程代理 |
目的 |
|---|---|---|
控件 |
集中式协调员 |
去中心化、分布式或基于角色的 Peer 节点 |
交互 |
一个代理委托并跟踪执行情况 |
多个代理进行协商、共享和调整 |
设计 |
预定义的任务顺序 |
快速、灵活的任务分配 |
协调 |
程序编排 |
合作或竞争互动 |
使用案例 |
企业流程自动化 |
复杂的推理、探索和应急策略 |
Architecture
下图显示了多代理协作:
描述
-
启动任务
-
用户或系统发出高级目标或问题。
-
“经理” 代理或启动上下文定义了目标。
-
-
分配或发现角色
-
代理人自行分配(符号逻辑或推理)或被委托(事件经纪人)到其他角色,例如策划者、研究员、执行者、批评者或解释者。
-
-
与其他代理沟通
-
代理通过共享内存、消息队列或提示链进行通信。
-
他们可能会互相辩论、询问或提出子任务。
-
-
使用专门的推理
-
每个代理都使用自己的模型或域逻辑来解决自己的问题部分。
-
代理可以 LLMs 与角色特定的提示和内存一起使用。
-
-
协调产出或目标
-
代理人将贡献综合成最终答案、计划或行动。
-
(可选)监督代理可以验证或汇总合成后的输出。
-
功能
-
具有特殊角色或技能的同行级代理
-
通过沟通或谈判出现的紧急行为
-
并行处理复杂或多方面的问题
-
支持深思熟虑、自我纠正和反思性迭代
-
为社交动态、科学合作或企业团队角色建模
常见使用案例
-
自主研究团队(搜索代理、摘要器和验证器)
-
软件开发(规划员、编码员和测试员)
-
业务场景建模(财务、策略和合规)
-
谈判、竞标或多方推理
-
多模式任务(图像、文本和逻辑)
实施指导
您可以使用以下工具和 AWS 服务以下工具构建多代理系统:
组件 |
AWS 服务 |
目的 |
|---|---|---|
代理托管 |
亚马逊 Bedrock、亚马逊 SageMaker、 AWS Lambda |
托管个人 LLM 驱动的代理 |
通信层 |
亚马逊 SQS、亚马逊、 EventBridge AWS AppFabric |
代理之间的消息传递和协调 |
共享内存 |
亚马逊 DynamoDB、亚马逊 S3 或 OpenSearch |
多代理存储器或黑板系统 |
编排层 |
AWS Step Functions, AWS Lambda 管道 |
启动、超时、回退和重试逻辑 |
代理识别 |
亚马逊 Bedrock 代理(角色定义)和 AWS AppConfig 亚马逊 Bedrock converse API(亚马逊 Bedrock 以外的代理) |
基于角色的工具或代理调用和边界强制执行 |
紧急互动 |
Amazon EventBridge 渠道或代理注册表 |
启用动态任务路由或升级 |
Summary
多代理协作将问题解决任务分配给模块化、角色驱动的代理。与工作流程协调不同,协作模式使用的是反映人类解决问题的新兴智能、弹性和可扩展性。对于开放式领域、创造性任务、多模态推理和受益于不同视角的环境来说,它尤其有价值。
结论
前面讨论的模式说明了在现实世界中实现代理人工智能的基本方法。从基本推理到记忆增强智能,每种模式都针对基于自主性、异步性和代理性的感知、认知和行动进行了独特的配置。
这些模式共享用于构建智能、以目标为导向的系统的词汇和技术蓝图。无论模式是嵌入在用户界面中,还是通过云服务进行编排,还是跨代理团队进行协调,每种模式都具有适应性和模块化性。
外卖
-
代理模式是可组合的 — 大多数现实世界中的代理会混合两种或更多模式(例如,具有基于工具的推理和记忆的语音代理)。
-
代理设计是基于情境的 — 根据交互表面、任务复杂性、延迟容限和特定领域的限制来选择模式。
-
AWS原生实现是可以实现的 — 借助 Amazon Bedrock SageMaker AWS Lambda、、 AWS Step Functions、、和事件驱动架构,每种代理模式都可以大规模交付。