用途
bedrock-agentcore-multi-agent 用于在 Amazon Bedrock AgentCore 上构建复杂的多智能体系统,采用 Agent-to-Agent(A2A)协议实现智能体之间的通信与协作。其核心目标是编排多个 AI 智能体,以完成复杂的、跨领域任务。
资料说明它适合以下情况:任务需要多个专业领域;单一智能体变得过于复杂;需要为不同任务使用不同模型;希望构建故障隔离的智能体架构;构建企业级客户服务;实现复杂工作流。
资料同时指出不适合以下情况:简单的单领域任务;对成本敏感的应用(多跳会增加成本);低延迟要求(总耗时小于 1 秒)。
主要能力与架构模式
该技能采用基于工作流的方式,提供三种编排模式:
- 中心辐射(监督者)模式:监督者(路由器)接收用户查询,再分派给订单、退货、支持等专家智能体。
- 顺序流水线模式:受理、分析、解决、关闭等智能体依次串联。
- 分层模式:执行级监督者下辖销售、支持、账单等监督者,各自再下辖更细粒度的智能体(如 B2B、B2C、L1、L2、支付、发票)。
资料列出的关键原则(称经 AWS 于 2025 年 12 月验证)包括:监督者-工作者架构(路由智能体委派给专家)、A2A 协议(智能体间的标准通信)、上下文保留(会话历史在智能体间共享)、故障隔离(单个智能体失败不会导致系统崩溃)、模块化设计(每个智能体聚焦特定领域)、框架互操作性(可跨不同智能体框架工作)。
质量目标为:路由准确率≥95%、上下文保留 100%、故障隔离完全、每跳延迟开销<200ms。
使用方式
资料给出五个操作步骤及其时间与自动化程度:
操作 1:创建监督者智能体(15-30 分钟,自动化 80%)。构建路由/编排智能体。示例代码使用 BedrockAgentCoreApp、strands.Agent 与 boto3,定义协作者(orders、returns、support、billing)及其 ARN、描述与触发词,通过系统提示让路由智能体输出 JSON 路由结果,再调用 invoke_agent_runtime 委派给专家智能体;代码中还包含关键词回退路由 keyword_route 与异常回退处理。
操作 2:创建专家智能体(每个 10-20 分钟,自动化 85%)。构建领域特定的工作者智能体。示例包含 Orders Agent(处理订单状态、物流跟踪、订单修改,示例使用 anthropic.claude-sonnet-4-20250514-v1:0)与 Returns Agent(处理退货、退款、换货、破损索赔,示例使用 anthropic.claude-3-haiku-20240307-v1:0),并含 check_domain_boundary 领域边界检查函数。
操作 3:配置 A2A 协议(10-15 分钟,自动化 90%)。通过 bedrock-agentcore-control 的 update_agent_runtime 设置 collaborationConfig,启用协作者、设置 routingMode 为 SUPERVISOR_WITH_ROUTING,并配置上下文共享(shareConversationHistory: True、maxHistoryTurns: 10)。同时给出允许 bedrock-agentcore:InvokeAgentRuntime 的 IAM 策略示例,含基于 CallerAgentRuntimeArn 的条件限制。
操作 4:实现交接模式(15-30 分钟,自动化 70%)。处理智能体之间的平滑过渡。示例提供 AgentHandoff 类,包含 initiate_handoff(保存并传递交接上下文,含来源智能体、原因、摘要、客户情绪、会话历史、待办动作)与 escalate_to_supervisor(升级回监督者),并给出多轮交接的对话流程示例。
操作 5:多智能体监控(资料在此处截断,仅显示“15-20 mi”后无更多内容)。
前置条件
必需:已部署多个 AgentCore 智能体;具备路由能力的监督者智能体;启用 A2A 协议;跨智能体调用的 IAM 权限。
建议:定义清晰的领域边界;测试交接提示词;记录回退策略。
限制
资料未提供该技能的收费与价格信息;监控操作的完整内容在资料中未提供完整。