欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 创投人物 > AI知识补全(十六):A2A - 谷歌开源的agent通信协议是什么?

AI知识补全(十六):A2A - 谷歌开源的agent通信协议是什么?

2025/4/16 22:55:53 来源:https://blog.csdn.net/qq_51646682/article/details/147229942  浏览:    关键词:AI知识补全(十六):A2A - 谷歌开源的agent通信协议是什么?

名人说:一笑出门去,千里落花风。——辛弃疾《水调歌头·我饮不须劝》
创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊)


上一篇:AI知识补全(十五):AI可解释性与透明度是什么?

目录

    • 一、什么是A2A协议?
      • 1. A2A的定义与背景
      • 2. A2A的核心概念
      • 3.为什么需要A2A?
      • 4. 架构设计
      • 5. 关键功能
    • 三、A2A与其他协议的关系
      • 1. A2A与MCP的比较
      • 2. A2A与其他代理协议的生态位置
    • 四、A2A协议的应用场景
      • 1. 企业级应用
      • 2. 实际案例分析
    • 五、A2A协议的实现与开发
      • 1. 技术实现
      • 2. 开发路线图
    • 六、A2A的行业影响与前景
      • 1. 行业合作与影响
      • 2. 未来发展趋势
    • 七、结论与展望

很高兴你打开了这篇博客,更多AI知识,请关注我、订阅专栏《AI知识图谱》,内容持续更新中…

一、什么是A2A协议?

在这里插入图片描述
图片来源:A2A(Google)

1. A2A的定义与背景

A2A(Agent2Agent)是由谷歌(Google)开源的一种全新AI代理通信协议,旨在解决不同框架和供应商开发的AI代理之间通信互操作的问题。这个协议于2025年4月份正式发布,背后有包括Atlassian、Salesforce、Deloitte等50多家主要合作伙伴的支持。

通俗易懂些来理解,就是给AI助手们创造了一种"国际通用语言",让它们能够相互理解和协作。不管是谷歌、微软、亚马逊还是其他公司开发的AI,只要它们都遵循这个A2A协议,就能像人与人交谈一样互相沟通

在这里插入图片描述
图片来源:A2A(Google)

谷歌认为A2A协议将为客户带来显著价值,使他们的AI代理能够跨整个企业应用程序领域工作。这种协作努力标志着一个共同愿景的未来,即AI代理无论其底层技术如何,都能无缝协作,自动化复杂的企业工作流程,推动前所未有的效率和创新水平。

2. A2A的核心概念

A2A协议的核心在于促进独立AI代理之间的通信,其基本概念包括:

  • Agent Card(代理卡片):一个公共元数据文件(通常位于/.well-known/agent.json),描述代理的能力、技能、端点URL和身份验证要求。客户端使用它进行发现。
  • A2A Server(A2A服务器):一个暴露HTTP端点的代理,实现A2A协议方法(在json规范中定义)。它接收请求并管理任务执行。
  • A2A Client(A2A客户端):消费A2A服务的应用程序或另一个代理。它向A2A服务器的URL发送请求(如tasks/send)。
  • Task(任务):工作的中央单元。客户端通过发送消息(tasks/send或tasks/sendSubscribe)启动任务。任务有唯一ID并经历各种状态(提交、工作、需要输入、完成、失败、取消)。
  • Message(消息):代表客户端(角色:“user”)和代理(角色:“agent”)之间的通信回合。

在这里插入图片描述

3.为什么需要A2A?

想象一下这个场景:你要计划一次旅行,需要:

  • 查找并比较机票价格
  • 根据天气预报选择合适的目的地
  • 预订酒店和餐厅
  • 安排当地活动和交通

以前,你可能需要打开4-5个不同的应用,手动在它们之间复制粘贴信息有了A2A协议,你只需告诉你的主AI助手:“帮我计划下周去日本的旅行”,然后它就能自动与专门负责机票查询的AI、天气预报AI、酒店预订AI等进行沟通协作,共同完成这个任务。

所有这些AI助手虽然可能来自不同公司、基于不同技术,但因为都"说"A2A这种"通用语言",所以能无缝协作,就像一个高效的团队

4. 架构设计

A2A协议促进了"客户端代理"与"远程代理"之间的通信。客户端代理负责从最终用户那里制定和传达任务,而远程代理则根据这些任务采取行动。这种架构设计使得代理之间可以明确地交换信息,无需共享内部状态或记忆。

图1:A2A通信架构图

在这里插入图片描述

图2:A2A协议概念图 - 展示了客户端代理与远程代理之间的通信流程,以及任务(Task)和代理卡片(Agent Card)在协议中的核心地位

  • 独立运行:代理独立运行并明确沟通以交换信息。
  • 符合标准:该协议使用广泛采用的Web技术,如HTTP、JSON-RPC和服务器发送事件(SSE),以最大限度地减少开发人员的摩擦。
  • 默认安全:内置身份验证和授权措施旨在保护敏感交易和数据。
  • 处理短任务和长任务:A2A支持简短交互(如快速信息请求)和需要持续协作的扩展流程。
  • 模态无关:代理可以通过实时共享结构化任务更新来处理文本、视频、音频或其他数据类型。

在这里插入图片描述

5. 关键功能

A2A协议依赖于几个关键功能:

  1. 能力发现:代理可以通过JSON格式的Agent Card"发布其能力",使客户端代理能够确定最佳的远程代理来完成任务。
  2. 任务管理:确保代理之间的通信仅面向完成请求,并定义任务的生命周期。
  3. 协作:发送有关上下文回复、工件(任务输出)或指令的消息。
  4. 用户体验协商:允许客户端和远程代理协商响应最终用户请求所需的正确格式,以及了解用户的UI能力,如iframe、视频、Web表单等。

每条消息包括"部分",这是一个完全形成的内容片段,比如生成的图像。每个部分都有指定的内容类型,允许客户端和远程代理协商所需的正确格式,并明确包括对用户UI能力的协商。

三、A2A与其他协议的关系

1. A2A与MCP的比较

在发布A2A时,谷歌将其定位为与Anthropic的MCP(Model Context Protocol)互补的协议。在公告中,谷歌提到,“A2A是一个开放协议,补充了Anthropic的MCP,后者为代理提供有用的工具和上下文。

在这里插入图片描述

谷歌在标题为"A2A ❤️ MCP"的A2A文档页面中,提供了一个汽车修理店用例示例,以演示A2A和MCP如何协同工作。

如果用类比来解释:如果MCP是扳手,那么A2A就是机械师之间在诊断问题时的对话。A2A还专门设计为支持不透明代理——那些不暴露其内部推理或记忆的代理——这对于需要安全、模块化或供应商抽象的企业用例至关重要。代理不是同步内部状态,而是通过定义明确的"任务"共享上下文,这些任务包括输入、指令、结果(“工件”)和实时状态更新。

2. A2A与其他代理协议的生态位置

谷歌云业务应用平台副总裁兼总经理Rao Surapaneni告诉VentureBeat,A2A使具有不同专业化和数据节点的代理更容易获得所需的上下文。“每个人都有一定的专业化,因为他们拥有数据节点或逻辑节点,或者当前用户群体专注于特定任务”。

A2A协议与Anthropic的模型上下文协议(MCP)不同,但两者可以互补。虽然MCP专注于应用程序和生成式AI模型之间的交互,但A2A协议专注于不同AI代理之间的交互。“你可以将MCP视为提供垂直集成(应用程序到模型),而A2A提供水平集成(代理到代理)”。

四、A2A协议的应用场景

1. 企业级应用

A2A协议的一个突出特点是其企业级关注点。该协议支持延伸数天、数周甚至数月的长期运行任务——如供应链规划或多阶段招聘。它还支持多模态协作,因此AI代理可以在统一工作流程中共享和处理文本、音频和视频

如果A2A获得牵引力——早期支持表明它可能会——它可能会像Kubernetes标准化云原生应用或OAuth简化跨平台安全访问一样加速代理生态系统。通过在协议级别解决互操作性问题,A2A降低了企业混合搭配不同提供商的代理并最终将它们视为连贯数字劳动力的门槛。

2. 实际案例分析

通过A2A协作,可以显著简化招聘软件工程师的过程。在像Agentspace这样的统一界面中,用户(例如招聘经理)可以指派其代理寻找与工作列表、位置和技能集匹配的候选人。然后,该代理与其他专门的代理交互,寻找潜在的候选人。

A2A的一个真实应用例子是招聘过程。一个代理可能根据特定标准筛选候选人,另一个可能安排面试,而第三个可能管理背景调查。这些专业代理可以通过统一的界面进行通信,同步每个步骤的状态,并确保相关信息安全传递。

在这里插入图片描述

五、A2A协议的实现与开发

1. 技术实现

A2A协议基于几个核心概念构建:

  • Agent Card(代理卡片):一个公共元数据文件,通常位于/.well-known/agent.json,描述代理的能力、技能、端点URL和身份验证要求。客户端使用它进行发现。
  • A2A Server(A2A服务器):一个暴露HTTP端点的代理,实现A2A协议方法(在json规范中定义)。它接收请求并管理任务执行。
  • A2A Client(A2A客户端):消费A2A服务的应用程序或另一个代理。它向A2A服务器的URL发送请求(如tasks/send)。
  • Task(任务):工作的中央单元。客户端通过发送消息(tasks/sendtasks/sendSubscribe)启动任务。任务有唯一ID并经历各种状态(submitted、working、input-required、completed、failed、canceled)。
  • Message(消息):代表客户端(角色:“user”)和代理(角色:“agent”)之间的通信回合。

在这里插入图片描述
图片来源:How A2A works(Google)

2. 开发路线图

未来计划包括改进协议本身和增强示例:

- 正式纳入授权方案和可选凭证直接在AgentCard中。
- 研究QuerySkill()方法,用于动态检查不支持或未预期的技能。
- 支持任务内的动态UX协商(例如,代理在对话中途添加音频/视频)。
- 探索扩展对客户端发起方法的支持(超出任务管理)。
- 改进流式传输可靠性和推送通知机制。
- 简化"Hello World"示例。
- 包括与不同框架集成或展示特定A2A功能的其他示例。
- 为常见客户端/服务器库提供更全面的文档。
- 从JSON Schema生成人类可读的HTML文档。

六、A2A的行业影响与前景

1. 行业合作与影响

谷歌与超过50家技术合作伙伴合作推出了A2A协议,这些合作伙伴包括Atlassian、Box、Cohere、Intuit、Langchain、MongoDB、PayPal、Salesforce、SAP、ServiceNow、UKG和Workday;以及领先的服务提供商,包括Accenture、BCG、Capgemini、Cognizant、Deloitte、HCLTech、Infosys、KPMG、McKinsey、PwC、TCS和Wipro。

对于努力在不同系统上实施AI驱动自动化的企业来说,这一举措意义重大。通过实现专业代理之间的互操作性,A2A解决了扩展代理AI解决方案的关键障碍。德勤等行业领导者强调了它在统一工作流程和降低集成成本方面的潜力。

2. 未来发展趋势

该协议目前作为开源项目在GitHub上提供,谷歌计划在今年晚些时候推出面向生产的版本。对于希望未来保障其AI投资的企业来说,A2A值得认真关注。

Surapaneni表示,谷歌将A2A设计为开放协议,这意味着更大的开源社区可以为A2A项目做出贡献并提出代码更新。“我们将其作为一项社区驱动的努力开放,并且是真正的开源。有一个治理委员会,但我们确实希望它是真正开放和社区驱动的。”

在开发A2A时,谷歌专注于使代理能够"以其自然、非结构化的模式工作,即使它们不共享记忆、工具和上下文"。该协议还建立在HTTP和JSON等现有标准之上,因此它更容易与现有技术栈集成,并默认是安全的。

七、结论与展望

A2A协议代表了AI代理通信领域的重要进步,通过提供标准化的通信框架,它解决了企业AI采用的关键障碍。作为一个开源项目,A2A协议得到了众多技术巨头和咨询公司的支持,这表明行业对统一AI代理生态系统的强烈需求和认可。

随着企业越来越多地采用AI代理来执行从客户服务到供应链管理的任务,A2A代表了朝着充分实现多代理生态系统潜力的关键一步。通过使不同供应商和框架开发的代理能够无缝协作,A2A有望推动企业AI应用的下一波创新浪潮。

对于AI开发者和企业决策者来说,密切关注A2A协议的发展将是至关重要的,因为它有可能成为未来代理通信的事实标准。随着越来越多的组织采用这一协议,我们可能会看到前所未有的AI协作和自动化水平,进一步推动数字化转型和创新。

参考资料

  1. Google GitHub A2A仓库: https://github.com/google/A2A
  2. Google Developers Blog: https://developers.googleblog.com/en/a2a-a-new-era-of-agent-interoperability/
  3. VentureBeat: https://venturebeat.com/ai/googles-agent2agent-interoperability-protocol-aims-to-standardize-agentic-communication/
  4. MarkTechPost: https://www.marktechpost.com/2025/04/09/google-introduces-agent2agent-a2a-a-new-open-protocol-that-allows-ai-agents-securely-collaborate-across-ecosystems-regardless-of-framework-or-vendor/

创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊)

热搜词