谷歌发布 Agent2Agent (A2A) 协议,未来 “MCP+A2A“ 成标配?

昨晚,谷歌在Google Cloud Next 25大会上,开源了首个标准智能体交互协议——Agent2Agent Protocol(简称A2A)。

announce-a2a

A2A 将彻底打破系统孤岛,对智能体的能力、跨平台、执行效率产生质的改变,A2A 协议当前有 50 多家著名企业参与共建。随着加入的企业越来越多,会极大提升A2A的商业价值以及推动整个智能体生态的快速发展。

不出意外,本次大会重点在 AI Agent 上,除了 A2A 之外,谷歌还效仿 OpenAI 开源了 Agent 开发套件 ADK,内部测试工具 Agent Engine。

什么是 A2A

A2A 是一种开放协议,为 Agent 提供了一种标准的交互方式,使它们能够相互协作,无论底层框架或供应商是什么。

例如,一家大型电商公司使用了多种企业平台和服务。Atlassian 用于团队项目管理,Box 用于文件存储和共享,Salesforce 用于客户关系管理,Workday 用于人力资源管理。

以前这些平台上的 Agent 无法自由通信。现在通过 A2A 协议,这些企业平台可以安全、自由地自动化交互数据。

A2A 设计原则

A2A 是一种开放协议,为代理之间的协作提供了一种标准方式,与底层框架或供应商无关。协议遵循以下几个核心原则:

  • 拥抱 Agentic 能力。A2A 专注于使 agent 能够以自然、非结构化的方式进行协作,即使它们不共享内存、工具和上下文。我们正在实现真正的 multi-agent 场景,而不会将 agent 限制为 “工具”。谷歌正在启用真正的多 Agent 场景,而不是限制 Agent 成为一个工具。
  • 建立在现有标准之上。该协议建立在现有的流行标准之上,包括 HTTP、SSE、JSON-RPC,这意味着它更容易与企业日常使用的现有 IT 栈集成。
  • 默认安全。A2A 旨在支持企业级身份验证和授权,在发布时与 OpenAPI 的身份验证方案具有同等效力。
  • 支持长时间运行的任务。我们设计了 A2A,使其具有灵活性,并支持从快速任务到深度研究的各种场景,当人类处于循环中时,这些场景可能需要数小时甚至数天才能完成。在整个过程中,A2A 可以向用户提供实时反馈、通知和状态更新。
  • 模态无关。代理世界不仅限于文本,这就是为什么我们设计了 A2A 来支持各种模态,包括音频和视频流。

A2A 工作原理

A2A 的工作原理是通过促进客户端Agent和远程Agent之间的通信来实现的。客户端Agent负责制定和传达任务,而远程Agent则根据这些任务采取行动,以提供正确的信息或执行相应的操作。在这个过程中,A2A协议有以下几个关键能力。

首先,Agent 可以通过“Agent卡”来宣传它们的能力。这些“Agent卡”是以JSON格式存在的,它们能够让客户端Agent识别出哪个远程Agent最适合执行特定的任务。

一旦确定了合适的远程Agent,客户端Agent就可以利用A2A协议与之进行通信,将任务分配给它。

A2A Architecture

然后,任务管理是A2A协议中的一个重要环节。客户端和远程Agent之间的通信都是围绕完成任务展开的。协议定义了一个“任务”对象,这个对象具有自己的生命周期。

对于一些简单的任务,可能可以立即完成;而对于一些复杂的、长期的任务,Agent们可以相互沟通,以保持对任务完成状态的同步。当任务完成时,其输出被称为“工件”。

此外,A2A还支持Agent之间的协作。Agent们可以相互发送消息,这些消息可以包含上下文信息、回复、工件或者用户指令。通过这种方式,Agent们能够更好地协同工作,共同完成复杂的任务。

A2A Architecture

最后,A2A还具备用户体验协商的功能。每条消息都包含“部分”,这些部分是完整的内容片段,例如,生成的图像。

每个部分都有指定的内容类型,这使得客户端和远程Agent能够协商所需的正确格式,并且明确包括用户界面能力的协商,比如iframe、视频、网络表单等。这样,A2A就能够根据用户的需求和设备的能力,提供最佳的用户体验。

Spring AI Alibaba 已经支持了 MCP 协议发布于接入,目前正在推进 multi-agent 框架开发,并将于近期完成版本发布。