
亚马逊宣布 Amazon Bedrock AgentCore Runtime 已支持 Agent-to-Agent(A2A)协议,使基于不同框架构建的智能体能够相互通信。遵循 A2A 协议,使用 Strands Agents、OpenAI Agents SDK、LangGraph、Google ADK 或 Claude Agents SDK 构建的智能体能够“以通用、可验证的格式共享上下文、能力和推理过程”。Bedrock AgentCore Runtime 作为基础设施层,负责处理这些智能体间的通信。A2A 协议为多智能体系统引入了互操作性,使开发者能够编排跨越不同智能体框架的工作流。
智能体系统要有效运行,离不开若干基础组件的支持。双层记忆:短期记忆在活动会话期间维持对话上下文,长期记忆则跨多个会话累积洞察。工具层:通过原生集成或 Model Context Protocol(MCP)服务器为智能体提供各种功能性能力。身份管理:支持“更安全的认证与权限管理,允许智能体代表用户或自主访问资源”。护栏:实现安全控制,旨在“检测有害内容、抑制幻觉,并确保输出符合策略与事实”。
来源:Bedrock AgentCore Platform
A2A 协议解决的问题与 MCP 不同。MCP 将单个智能体连接到各种工具和数据源,而 A2A 让多个智能体能够彼此协调。这一区别对系统架构来说至关重要:MCP 解决智能体到资源的连接问题,而 A2A 解决多智能体部署中的智能体间通信问题。
来源:多智能体系统交互
A2A 协议实现了松耦合与模块化,每个智能体都可作为独立单元运行。开发者可以单独开发、测试、部署和升级智能体,而不会干扰整个系统。新的智能体可加入到现有的部署中,智能体故障被隔离在明确定义好的交互边界内。
该协议支持动态智能体发现和编排。智能体通过标准化的模式发布自身能力,形成功能注册表。编排智能体可根据实时任务需求发现并调用专业智能体,实现可随条件变化且自适应的工作流。
A2A 服务器(即远程智能体)公开实现了协议规范的 HTTP 端点。这些服务器接收请求、处理任务并将结果返回给调用智能体,支持基于 JSON-RPC 2.0 over HTTP/S 或 Server-Sent Events 的同步和异步交互。
每个智能体需要发布一张 Agent Card(智能体卡片),这是一个 JSON 元数据文件,用于说明其身份、能力、端点和认证要求。有了这些元数据,动态发现机制得以实现,智能体在委派任务前找到相关智能体并确定其能力。Agent Card 作为合约规范,向其他智能体提供实现交互所需的信息。
Task Object(任务对象)代表流经系统的工作单元。每个任务都有唯一的标识符,并在智能体之间移动时维护自身的生命周期。任务可以是涉及多次交互回合、跨多个智能体协作的长时间运行操作。协议会在智能体协调过程中跟踪任务状态,使得编排智能体能够监控进度,并在分布式智能体协作中处理故障或超时问题。
在社区方面,Palo Alto Networks 的 Unit42 指出该协议的有状态设计存在潜在漏洞。Unit42 的分析指出,
A2A 协议的有状态行为能够让智能体记住最近的交互并保持对话的连贯性。会话走私攻击(Session Smuggling Attack)正好利用这一特性将恶意指令注入对话中,将其隐藏在看似无害的客户端请求和服务器响应中。
有兴趣实现基于 A2A 系统的开发者可以从阅读这些技术资源开始入手。Amazon Bedrock AgentCore 开发者指南提供了全面的文档,包含运行操作、记忆管理和智能体部署身份处理等方面的内容。A2A 协议合约规范定义了实现智能体间通信和交互模式的技术要求,符合规范的智能体必须支持这些要求。InfoQ 早前对 Bedrock AgentCore 公告的报道提供了更多有关该平台能力的信息。
【声明:本文由 InfoQ 翻译,未经许可禁止转载。】
查看英文原文:https://www.infoq.com/news/2025/11/a2a-amazon-bedrock-agentcore/







评论