LLM之Agent(十六)| MCP已“过时”?Google近期推出Agent2Agent 协议 (A2A)

向量数据库大模型云通信

picture.image

 如今,企业越来越多地构建和部署自主代理,以帮助扩展、自动化和增强整个工作场所的流程 - 从订购新笔记本电脑到协助客户服务代表,再到协助供应链规划。


  为了最大限度地发挥代理 AI 的优势,这些代理能够在一个动态的、多代理的生态系统中跨孤立的数据系统和应用程序进行协作,这一点至关重要。使代理能够相互作,即使它们是由不同的供应商或不同的框架构建的,也将增加自主性并成倍提高生产力,同时降低长期成本。


 202549日,Google推出了一个名为 Agent2Agent (A2A) 的新开放协议,得到了 50 多个技术合作伙伴的支持和贡献,这些合作伙伴包括 Atlassian、Box、Cohere、Intuit、Langchain、MongoDB、PayPal、Salesforce、SAP、ServiceNow、UKG 和 Workday;以及领先的服务提供商,包括埃森哲、BCG、凯捷、Cognizant、德勤、HCLTech、印孚瑟斯、毕马威、麦肯锡、普华永道、TCS 和 Wipro。A2A 协议将允许 AI 代理相互通信、安全地交换信息以及在各种企业平台或应用程序之上协调作。

picture.image

一、A2A设计原则

 A2A 是一种开放协议,它为代理提供了一种相互协作的标准方式,而不受底层框架或供应商的影响。在与合作伙伴一起设计协议时,遵循五个关键原则:
  • 拥抱Agent能力:A2A 专注于使代理能够以自然、非结构化的方式进行协作,即使他们不共享内存、工具和上下文。正在实现真正的多代理场景,而不会将代理局局限于“工具”。

  • 以现有标准为基础:该协议建立在现有的流行标准(包括 HTTP、SSE、JSON-RPC)之上,这意味着它更容易与企业日常使用的现有 IT 栈集成。

  • 安全机制:A2A 旨在支持企业级身份验证和授权,在启动时与 OpenAPI 的身份验证方案相同。

  • 支持长时间运行的任务:将 A2A 设计为灵活的,并支持各种场景,它擅长完成从快速任务到深入研究的所有工作,而这些工作可能需要数小时甚至数天,而人类则需参与其中。在整个过程中,A2A可以向其用户提供实时反馈、通知和状态更新。

  • 支持多模态: 代理世界不仅限于文本,这就是为什么我们设计 A2A 来支持各种模式,包括音频和视频流。

二、工作原理

picture.image

  A2A 是一种“client” Agent和“remote”Agent通信的模式。客户端代理负责制定和传达任务,而远程代理负责处理这些任务。此交互涉及几个关键功能:
  • 功能发现: 代理可以使用 JSON 格式的“Agent Card”公布其功能,从而允许客户端代理确定可以执行任务的最佳代理,并利用 A2A 与远程代理进行通信。

  • 任务管理: 客户端和远程代理之间的通信最终目的是为了完成任务,其中代理负责满足最终用户的请求。这个 “task” 对象由协议定义,并且有一个生命周期。它可以立即完成,或者对于长时间运行的任务,每个代理都可以进行通信,以便在完成任务的最新状态上彼此保持同步。任务的输出称为 “artifact”(工件)。

  • 协作: 代理可以相互发送消息以传达上下文、回复、构件或用户说明。

  • 用户体验协商: 每条消息都包含 “parts”,这是一个完全格式化的内容,就像生成的图像一样。每个部分都有指定的内容类型,允许客户端和远程代理协商所需的正确格式,并明确包括用户 UI 功能的协商,例如 iframe、视频、Web 表单等。

三、如何使用

3.1 前置条件

  • python3.13+

  • uv

  • LLM API Key

3.2 使用

3.2.1 克隆仓库

  
git clone https://github.com/google/A2A.git

3.2.2 导航到samples目录

  
cd samples/python/agents/langgraph

3.2.3 把API Key添加到环境变量

  
echo "GOOGLE\_API\_KEY=your\_api\_key\_here" > .env

3.2.4 创建python虚机环境并安装相关包

  
conda create -n a2a python=3.13  
  
# 等待安装完毕,激活虚机环境  
conda activate a2a  
  
# 并安装uv包  
pip install uv

3.2.5 在终端运行A2A server

  
# Basic run on default port 10000  
uv run .  
# On custom host/port  
uv run . --host 0.0.0.0 --port 8080

picture.image

3.2.6 在另一个终端运行A2A client

  
uv run hosts/cli

picture.image

问题:How much is the exchange rate for 1 USD to INR?

输出效果如下所示:

picture.image

0
0
0
0
关于作者
关于作者

文章

0

获赞

0

收藏

0

相关资源
CV 技术在视频创作中的应用
本次演讲将介绍在拍摄、编辑等场景,我们如何利用 AI 技术赋能创作者;以及基于这些场景,字节跳动积累的领先技术能力。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论