Google A2A的野心:AI Agent全球大一统

上一篇文章刚刚初步介绍了一下MCP协议(Model Context Protocol),我本人还在学习MCP的时候就发现Google放大招,推出了A2A(Agent2Agent)技术

今天我们来跟上时代,研究A2A

一. 简介:


A2A是谷歌主导开发的开放协议,旨在实现不同厂商、框架的AI Agent(智能体)之间的标准化通信与协作,解决智能体生态中的“信息孤岛”问题。

之前文章类比MCP是“秦始皇的车同轨,书同文”,那A2A则可以看作是“全世界共同使用同一种世界语言和同一种度量衡等等“——一个实实在在的升级版。说简个不太恰当的臂于,MCP增强了单个智能体的能力,A2A则让智能体开始有效沟通协作,增强了“种群”能力,就MCP就好像人类学会了用工具增加了个体能力,A2A则是像人类拥有了统一语言,增加了“种群”能力/

虽然Google明确A2A是Anthropic的MCP协议的补充,而非替代但是笔者自己根据过往对商业历史研究认为两者最终会走到一起,会发展成一个整体互相配合,而不会一直“不越雷池”般的独立配合,只是不知道最后谁成功融合了谁而已。不过目前二者还是有很大差异,且真实互补的。

两者的差异如下:

  • MCP:解决单个Agent如何调用工具和API,目的是通过调用外部工具和获取外部数据,增强Agent自身的能力,是练自身专业能力。

  • A2A:解决多个Agent如何协作,是用其他Agent,帮自己”干活“,通过其他Agent增强自身,是“我不会的我雇专家”强调智能体之间的任务协调。

换句话说,A2A位于更高抽象层,负责Agent间协作,MCP则专注于底层工具与资源的连接。 例如,一个任务可能由A2A协调多个Agent,而这些Agent通过MCP调用外部工具完成子任务。

目前来说,A2A与MCP两者是互补关系,而非竞争关系。A2A和MCP可以协同工作,共同构建复杂的多智能体系统。在同一系列任务中,二者的任务分工是:A2A协调多个Agent分工,MCP为每个Agent提供工具支持。 例如,销售Agent通过MCP调用CRM数据,再通过A2A与物流Agent协作处理订单等。

谷歌的Agent开发套件(ADK)同时支持A2A和MCP,开发者可构建既能跨平台协作又能无缝接入工具的多模态协作智能体,这也给现在合作提供了可能,更为未来的融合提供了空间

目前来说,二者的出现,是在共同推动智能体生态的开放性和互操作性,也标志着AI产业从“各自为战”转向“合成军队作战”,加速企业智能化进程,这绝对是飞跃式的进步。

二. A2A的一些初衷和解读


对比完二者的差异(笔者在二者差异上迷惑了很大一会,跟技术大神请教的时候,都给人整的想用家传绝学打我了),我们再着重看看A2A,先摘录几个Google发布时自己说的一些要点和我对这些要点的一些看法:


1.”AI Agent 为我们提供了一个独特的机会,通过自主处理许多日常重复性或复杂的任务,帮助人们提高生产力。如今,企业正越来越多地构建和部署自主 Agent,以帮助扩展、自动化和优化整个工作流程——从订购新笔记本电脑,到协助客服代表,再到辅助供应链规划。“

从中我们不难看出大公司对未来趋势的判断:

越来越多的行业和企业,会部署自己行业的、专业的Agent,以帮助行业优化整个工作流程,提升效率,降低成本。正如我之前文章所说,提高生产力是人类发展史的一直以来的大势所趋。

Google大概率是比我们更有科技视野,才会推出这样一个东西来。所以大家肯定要留意行业Agent的机会,这很难,非常难,所以护城河很高,有能力有决心的人,真的可以开始了。

2.”今天,我们正式推出一项全新的开放协议——Agent2Agent (A2A)。该协议得到了超过 50 家技术合作伙伴的支持和贡献,包括 AtlassianBoxCohereIntuitLangchainMongoDBPayPal, Salesforce, SAPServiceNow, UKG 和 Workday;以及领先的服务提供商,包括 Accenture, BCG, Capgemini, Cognizant, Deloitte, HCLTech, Infosys, KPMG, McKinsey, PwC, TCS, 和 Wipro。A2A 协议将允许 AI Agent 相互通信,安全地交换信息,并在各种企业平台或应用程序之上协调行动。我们相信 A2A 框架将为客户带来巨大价值,他们的 AI Agent 将能够跨越其整个企业应用环境进行工作。“

这里的核心是什么?

我认为是Google背书的数据安全这非常重要。因为各个Agent以前在提供数据的时候,自身并没有可见到的增益,同时反而面临着可能的数据泄露的风险,所以很难推进他们的协作,只能各自为战。但是Google的背书可就不一样了,又有”流量“,还告诉你这很安全

就像我之前文章说的,我腾讯给你流量,给你安全,你做小程序,干不干?闭着眼睛干啊。Google这个承诺,这不就是阿里巴巴推出了支付宝保障交易安全一样的吗?所以说这里程碑式的产品,他真的不是随便说说的。

三.A2A的实现


来看看A2A的技术创新,要点是组件的设定,我们逐一介绍:

组件一:Agent Card(代理卡)

在A2A规范中,每个Agent都要公开一份“Agent Card”,相当于一份”自我和自我能力申明“,描述自身的能力、技能、端点 URL 和认证要求,方便其他Agent进行了解、选择和使用。

客户端用它来发现代理服务(当然,发现和选择代理服务是现在最大的技术难点,尤其是对代理服务的选择是现在最前沿在攻克的技术,不便透露细节)

组件二:Agent Server (A2A服务器)

暴露HTTP端点并实现A2A协议方法的代理,它接收请求并管理任务执行。

组件三:A2A Client (A2A客户端)

用来发送请求,如:

TaskSend , TasksSendSubscribe,TaskStatusUpdateEvent(任务状态更新)或 TaskArtifactUpdateEvent(任务工件更新)。

组件四:Task(任务)

A2A中最核心的概念之一是Task,当Agent1想通过另一个Agent2去完成某件事情,Agent1就会向Agent2发一个”合约邀约申请“(TaskSend),Agent2同意并返回同意后(Task状态变更),双方建立链接,并创建一个Task ID,用以追踪项目进度、交换数据、实时更新任务进度直到该Task完成为止。

组件五:Streaming (流式传输)和Push Notifications(推送通知)

如果一个Task是长时间项目,或者任务复杂需要Agent之间需要较长时间很多轮沟通,又或者远程Agent需要较长执行时间,就可以通过推送通知机制向发起方定时更新进度,”告知“发起方”别担心,我还在干“。

对于长时间运行的任务,支持Streaming功能的Server可以使用tasks/sendSubscribe向发起方发送信息,发起方接收该SSE(Server-Sent Events )信息后就保持长期链接,其中包含TaskStatusUpdateEvent或TaskArtifactUpdateEvent消息,提供实时进度更新。

这能大幅提升异步协作的能力,以免发起方Agent空等,或者以为远程Agent没有执行就又去找其他远程Agent造成不必要消耗。

组件六:Artifacts(工件)

Artifacts,用来展示最终成果。他可能是生成的一份报告、一张图片或其他形式。

组件七:Message (消息)和Part (部分)

Part 是消息或工件中的基本内容单元,他是TextPart(文本)、FilePart(带有内联字节或URI的文件)、DataPart(结构化JSON的数据,如表单)等。

Message (消息)则是用于任务过程中的各种多轮彼此沟通。它包含对任务细节的补充说明、修正、进一步要求等。

Message中包含多个Part 。

四.A2A 的典型工作流程如下:


1 发现:客户端通过其他Agent的 Agent Card,了解其能力。

2 启动:客户端发送任务请求:

  • 使用 tasks/send 处理即时任务,返回最终 Task 对象。

  • 使用 tasks/sendSubscribe 处理长期任务,服务器通过 SSE 事件发送更新


3 处理:服务器处理任务

  • 即时任务,直接返回结果

  • 长期任务,流式更新


4 交互(非必须项目,需要时用):若任务状态为 input-required,客户端可发送更多消息,使用相同 Task ID 提供输入

5 完成:任务达到终端状态,可以是 completed、failed 或 canceled。

ps:此流程支持简单任务和需要多次交互的复杂任务,非常适合多模态通信环境。

五.补充:


对于如何使用A2A,有以下选择:

Google的 A2A协议(Agent2Agent Protocol) 主要面向开发者与企业级应用场景,其核心交互逻辑通过协议定义的标准接口实现,普通用户无需单独下载客户端。若需在电脑上实现与A2A智能体的交互,需根据具体角色选择以下工具:

1.开发者工具

首选Google ADK(Agent Development Kit)

  • 支持语言:Python、Java、Go

2.终端用户交互方式

  1. 浏览器访问

    1. 场景:通过集成A2A协议的Web应用与智能体交互

  2. 桌面客户端

  • 下载微软开发者中心

  • 功能:支持A2A协议的本地客户端,提供可视化对话界面

  1. 微软Bot Framework

  • 命令行工具(CLI)

    1. 适用场景:开发者调试或自动化脚本调用,普通用户可以考虑前面两个方式

    2. 安装命令: pip install google-a2a-cli

    3.企业级部署方案

    1. A2A Server

      1. 功能:作为智能体通信的枢纽,管理任务分发与状态同步

      2. 部署要求:需企业服务器或云主机(推荐配置4核8GB以上)

    2. 安全工具

      1. OAuth 2.1客户端:用于智能体身份认证(如Keycloak、Auth0)

      2. 国密算法支持:需下载国密SSL库(如gmssl)


    六、展望


    当A2A和MCP这样的开放协议逐渐统一通信标准后,大家所有人发力一出,那么一个全新的AI Agent的全生态的出现,几乎是必然的


    每个Agent都不断丰富自己的知识,加强自身的能力,可能是行业能力,可能是企业能力,总之一定是垂直领域的能力,那么Agent整体的能力就能提升好几个数量级。而这个过程,就是我们普通人最佳的入局机会,无论是什么行业,只要你对行业是专业的,就可以把行业AI化,做一个行业Agent。正如当年给所有行业或者企业都做一个网页,又如当年给所有行业或者企业都做app一样,当时觉得好难啊,但是是不是真的努力就有机会?搞大模型我们都没有机会,但是行业知识沉淀是我们已经沉淀了无数个个日夜的成果,而把它们AI化,则是我们绝佳的机会。

    我们从只能看效果展示,到真的用起来Agent的时代,已经越来越临近了。正如我写Manus时候说的,每个人都能拥有“钢铁侠的贾维斯”,AI加持人类的时代,即将来临。


    前沿技术新闻资讯

    我对扣子空间与Manus的产品的思考

    2025-4-20 23:04:17

    前沿技术新闻资讯

    一文读懂英伟达世界模型平台 Cosmos

    2025-4-21 3:52:24

    0 条回复 A文章作者 M管理员
      暂无讨论,说说你的看法吧
    购物车
    优惠劵
    搜索