Administrator
发布于 2026-02-28 / 32 阅读
0
0

A2A 初理解:让 AI Agent 真正“互相协作”的通用协议

A2A 初理解:让 AI Agent 真正“互相协作”的通用协议

最近在补 Agent 方向时,我发现一个很关键但容易被忽略的问题:

我们现在能很快做出“单个 Agent”,但真正难的是让多个 Agent 跨框架、跨团队、跨系统稳定协作

A2A (Agent2Agent) 就是为这个问题设计的。

它可以简单理解为:给 Agent 之间定义一套“通用对话和协作协议”,让不同实现的 Agent 能互相发现能力、分配任务、流式回传结果,而不需要暴露彼此内部实现。

---

1. A2A 是什么

一句话版本:

A2A 是一个面向 Agent-to-Agent 通信的开放协议标准。

按官方文档的描述,它的目标是让不同框架、不同厂商、不同部署环境下的 Agent 互通协作,而不是把 Agent 只能当“工具调用”。

我自己理解它的价值在三点:

  1. 互操作:你用你的框架,我用我的框架,仍然能协同。
  2. 解耦:只约定协议,不要求共享内部 memory / tool / prompt 细节。
  3. 可工程化:可做发现、鉴权、状态管理、流式输出和异步通知。

2. 为什么现在需要 A2A

单 Agent 时代,主要是“用户 -> 一个 Agent -> 若干工具”。

但真实业务里越来越常见的是:

  1. 规划 Agent 负责拆任务。
  2. 检索 Agent 拉取知识。
  3. 执行 Agent 调系统 API。
  4. 审核 Agent 做校验与合规判断。

如果这些 Agent 没有统一通信协议,就会出现大量私有对接、重复适配和状态不一致问题。

A2A 的出现,本质上是在做一件基础设施级的事:

把“多 Agent 协作”从项目级 hack 变成可以复用的标准能力。

3. A2A 的核心对象(通俗版)

这块我用最工程化的方式记:

  1. Agent Card:Agent 的“名片”。

它会声明自己是谁、提供什么能力、入口 URL、鉴权要求、技能列表等。

  1. Task:任务对象,带生命周期状态(例如提交中、执行中、完成、失败等)。
  2. Message:交互中的一轮消息(user/agent 角色)。
  3. Part:消息/产物里的最小内容单元,可放 text、file、JSON 等。
  4. Artifact:任务产物(文档、结构化结果、文件等),可增量输出。

从建模上看,A2A 把“协作流程”和“数据载体”拆得比较清楚,这点对调试和观测非常重要。

4. 它怎么通信

从官方仓库和规范看,A2A 的通信基线比较务实:

  1. 基于 HTTP(S) + JSON-RPC 2.0
  2. 支持同步请求/响应。
  3. 支持 SSE 流式返回(长任务可以持续回传进度/增量结果)。
  4. 支持 Push/Webhook 异步通知(任务可能跑几分钟、几小时甚至更久)。

这套组合的好处是:

实现门槛不高,但能覆盖“快请求 + 长任务 + 断连场景”三种常见模式。

5. A2A 和 MCP 是什么关系

这是我最开始容易混淆的点。

可以这样记:

  1. MCP 主要解决 Agent 如何接工具和上下文(agent-to-tool)。
  2. A2A 主要解决 Agent 和 Agent 怎么协作(agent-to-agent)。

它们不是替代关系,而是互补关系:

你可以让每个 Agent 内部用 MCP 接工具,然后让多个 Agent 之间用 A2A 协作。

6. 一个最小落地思路(面向工程)

如果你准备把 A2A 引入现有系统,我建议按这个顺序做:

  1. 先选 1 个高价值跨域流程(例如“需求解析 -> 代码生成 -> 安全检查”)。
  2. 给每个 Agent 补齐 Agent Card,把 skills 和 auth 说清楚。
  3. 先跑通同步 + SSE,不要一开始就上复杂推送链路。
  4. 引入任务状态观测(taskId、contextId、状态流转日志)。
  5. 最后再接 TCK 或兼容性测试,确保协议行为可验证。

这条路径的目标不是“立刻做大”,而是先得到一个能稳定复用的协作骨架。

7. 我目前的判断

我对 A2A 的判断是:值得尽早理解,但要渐进落地

  1. 在多 Agent 场景里,它解决的是“结构性问题”而不是单点优化。
  2. 对中小团队最现实的收益,是减少私有对接成本、提升协作可维护性。
  3. 真正的难点不在协议本身,而在任务边界设计、状态治理和安全策略。

参考资料(官方)

  1. Google Developers Blog(A2A 首次发布,2025-04-09)

https://developers.googleblog.com/a2a-a-new-era-of-agent-interoperability/

  1. Google Developers Blog(Google Cloud 将 A2A 捐赠至 Linux Foundation,2025-06-23)

https://developers.googleblog.com/google-cloud-donates-a2a-to-linux-foundation/

  1. A2A 官方文档站(Linux Foundation 托管)

https://a2a-protocol.org/latest/

  1. A2A GitHub 主仓库

https://github.com/a2aproject/A2A

  1. A2A TCK(兼容性测试套件)

https://github.com/a2aproject/a2a-tck

  1. Vertex AI Agent Builder:Use an Agent2Agent agent(文档页标注 Preview)

https://docs.cloud.google.com/agent-builder/agent-engine/use/a2a

扩展阅读(社区索引)

  1. awesome-a2a(GitHub,生态清单)

https://github.com/ai-boost/awesome-a2a

  1. awesome-a2a(zdoc 中文镜像)

https://www.zdoc.app/zh/ai-boost/awesome-a2a


评论