当前位置: 首页 > news >正文

【转载】【翻译】图解智能体到智能体 (A2A) 协议

【资料网址】
https://blog.dailydoseofds.com/p/a-visual-guide-to-agent2agent-a2a


图解智能体到智能体 (A2A) 协议

(它不与 MCP 竞争)
作者:Avi Chawla
2025年4月17日


图解智能体到智能体 (A2A) 协议

智能体应用(Agentic applications)同时需要 A2A 和 MCP

在这里插入图片描述

  • MCP 为智能体提供访问工具的途径。
  • A2A 则允许智能体连接到其他智能体并进行团队协作。

今天,让我们清晰地理解什么是 A2A 以及它如何能与 MCP 协同工作。

如果您不了解 MCP 服务器,我们最近在新闻通讯中介绍了它们:

  • 图解 MCP 服务器
  • 构建 MCP 服务器
  • 由 MCP 驱动的 Agentic RAG

简而言之:

  • 智能体到智能体 (A2A) 协议 让 AI 智能体连接到其他智能体
  • 模型上下文协议 (MCP) 让 AI 智能体连接到工具/API

所以,使用 A2A 时,虽然两个智能体可能在互相交谈… 它们自身可能正在与 MCP 服务器通信。

[图片:展示两个 A2A 连接的智能体各自也通过 MCP 连接到工具的图示]

从这个意义上说,它们并不相互竞争


更进一步解释,智能体到智能体 (A2A) 使多个 AI 智能体能够协同完成任务,而无需直接共享其内部记忆、思考过程或工具

在这里插入图片描述

相反,它们通过交换上下文、任务更新、指令和数据进行通信。

本质上,AI 应用可以将 A2A 智能体建模为 MCP 资源,通过它们的智能体名片 (AgentCard) 来表示(稍后详述)。

在这里插入图片描述

利用这一点,连接到 MCP 服务器的 AI 智能体可以发现新的智能体进行协作,并通过 A2A 协议进行连接。

在这里插入图片描述


支持 A2A 的远程智能体必须发布一个 “JSON 智能体名片”,详细说明其能力和身份验证方式。

客户端使用这个名片来查找并与最适合某个任务的智能体进行通信。

在这里插入图片描述

有几点让 A2A 变得强大:

  • 安全协作
  • 任务和状态管理
  • 能力发现
  • 来自不同框架(LlamaIndex、CrewAI 等)的智能体可以协同工作
  • 此外,它可以与 MCP 集成

虽然它仍然很新,但标准化智能体之间的协作是件好事,类似于 MCP 为智能体与工具交互所做的那样。

您对此有何看法?

我们很快将从实现的角度来探讨这个主题。

敬请期待!

感谢您的阅读!

【来源】
https://blog.dailydoseofds.com/p/a-visual-guide-to-agent2agent-a2a

【以下是大模型补充内容】
好的,根据您提供的已翻译内容,以下是对智能体到智能体(A2A)协议的详细介绍:

智能体到智能体(A2A)协议详解

1. 核心定义与目的

A2A(Agent2Agent)协议是一种专门设计用于让独立的 AI 智能体(Agent)能够相互连接、通信和协作的协议。其核心目标是建立一个标准化的框架,使得不同的智能体可以像团队成员一样协同工作,共同完成更复杂的任务。

2. 与 MCP 的关系:互补而非竞争

理解 A2A 的关键在于区分它与 MCP(模型上下文协议)的关系:

  • MCP (模型上下文协议):专注于让智能体连接到外部的工具、API 或数据源。它像是智能体用来与世界(非智能体资源)互动的接口。
  • A2A (智能体到智能体协议):专注于让智能体与智能体之间进行交互。它像是智能体团队内部沟通的语言和规则。

文章明确指出,智能体应用通常同时需要 A2A 和 MCP。它们服务于不同的目的,但可以协同工作。一个智能体可能通过 A2A 与另一个智能体讨论任务,同时,这两个智能体又各自通过 MCP 调用外部工具(如数据库查询、网络搜索等)来获取完成任务所需的信息或执行操作。因此,A2A 和 MCP 是互补的,并非竞争关系。

3. 核心工作机制:间接协作

A2A 的一个重要特点是它促进协作的方式:

  • 不共享内部状态:智能体之间不会直接共享各自的内部记忆、思考过程或它们私有的工具集。这有助于保持每个智能体的独立性和封装性。
  • 通过信息交换协作:智能体之间的通信依赖于交换明确定义的信息类型,包括:
    • 上下文 (Context):关于当前任务或对话的相关背景信息。
    • 任务更新 (Task updates):任务的进展、状态变化或遇到的问题。
    • 指令 (Instructions):一个智能体向另一个智能体发出的请求或命令。
    • 数据 (Data):完成任务所需或任务产生的结果数据。

4. 智能体发现与连接:集成 MCP

A2A 协议巧妙地利用了 MCP 来解决智能体如何发现彼此的问题:

  • 智能体作为 MCP 资源:可以将支持 A2A 的智能体本身建模为 MCP 服务器上的一个资源
  • 智能体名片 (AgentCard):每个希望通过 A2A 进行协作的远程智能体需要发布一个 “JSON 智能体名片” (JSON Agent Card)。这张名片是一个结构化的数据文件,详细描述了该智能体的:
    • 能力 (Capabilities):它能做什么,擅长处理哪些任务。
    • 身份验证方式 (Authentication):如何安全地连接到它。
  • 发现过程:一个智能体(客户端)可以连接到一个 MCP 服务器,查询其上的资源。如果服务器上列出了其他 A2A 智能体的 AgentCard,客户端就能发现这些潜在的协作者。
  • 连接:客户端分析 AgentCard,确定哪个智能体最适合当前任务,然后使用 A2A 协议(遵循 AgentCard 中定义的规范和认证方式)与目标智能体建立连接并开始协作。

5. A2A 的优势与特点

根据文章内容,A2A 协议具有以下关键优势:

  • 安全协作 (Secure collaboration):由于不直接共享内部状态,并依赖 AgentCard 进行认证,可以实现更安全的协作模式。
  • 任务和状态管理 (Task and state management):协议的设计可能包含管理协作任务进展和状态的标准方法。
  • 能力发现 (Capability discovery):通过 AgentCard 和 MCP 集成,提供了一种标准化的机制来发现其他智能体的能力。
  • 跨框架协作 (Cross-framework collaboration):旨在让使用不同开发框架(如 LlamaIndex、CrewAI 等)构建的智能体也能相互协作,打破框架壁垒。
  • 与 MCP 集成 (Integration with MCP):天生设计为与 MCP 协同工作,形成更完整的智能体生态系统。

6. 现状与未来

文章提到 A2A 协议目前仍然较新,但强调了标准化智能体间协作的重要性,就像 MCP 标准化了智能体与工具的交互一样。未来可能会有更多关于具体实现细节的探讨。

总而言之,A2A 协议是 AI 智能体领域的一个新兴标准,旨在通过标准化的接口和发现机制,让不同的 AI 智能体能够安全、有效地进行通信和协作,共同解决复杂问题,同时与 MCP 协议互补,共同构建更强大的智能体应用生态。

http://www.xdnf.cn/news/272593.html

相关文章:

  • 冯诺依曼结构与哈佛架构深度解析
  • 【Linux系统】第二节—基础指令(2)
  • 13:图像处理—畸变矫正详解
  • 修复笔记:获取 torch._dynamo 的详细日志信息
  • 【数据结构】励志大厂版·初阶(复习+刷题)排序
  • 【程序+论文】大规模新能源并网下的火电机组深度调峰经济调度
  • TFQMR和BiCGStab方法比较
  • 缓存与数据库的高效读写流程解析
  • 8.1 Python+Docker+企业微信集成实战:自动化报告生成与CI/CD部署全攻略
  • php study 网站出现404 - Page Not Found 未找到
  • 去打印店怎么打印手机文件,网上打印平台怎么打印
  • C++负载均衡远程调用学习之Agent代理模块基础构建
  • 组合模式(Composite Pattern)
  • 探索正态分布:交互式实验带你体验统计之美
  • AI 编程日报 · 2025 年 5 月 04 日|GitHub Copilot Agent 模式发布,Ultralytics 优化训练效率
  • 【Linux】深入理解程序地址空间
  • C语言实现数据结构:堆排序和二叉树_链式
  • JavaScript性能优化实战(9):图像与媒体资源优化
  • 2025-04-26-利用奇异值重构矩阵-美团
  • ActiveMQ 与其他 MQ 的对比分析:Kafka/RocketMQ 的选型参考(一)
  • Git从入门到精通-第四章-更新仓库
  • 2025 年如何使用 Pycharm、Vscode 进行树莓派 Respberry Pi Pico 编程开发详细教程(更新中)
  • C++调试(叁):编译qBreakpad并使用其生成Dump文件
  • 【时间之外】官网视频风波
  • Dagster中的Ops与Assets:数据管道构建的两种选择
  • 主自开发光枪鼠标模拟器实战,使用micro pro板子方式
  • P1537 数字反转(升级版)详解
  • 【C++语法】类和对象(3)
  • 蟋蟀的叫声,大自然的温度计
  • PyTorch学习之张量(Tensor)(一)