A2A是什么
A2A(Agent2Agent Protocol)是谷歌开源的首个标准智能体交互协议,让不同框架和供应商构建的AI智能体相互协作。A2A基于标准化的通信方式,打破系统孤岛,让智能体安全地交换信息、协调行动。A2A支持多种模态(如文本、音频、视频)、长时任务处理和实时反馈,基于现有标准(如HTTP、JSON-RPC)构建,易于与现有IT系统集成。首批加入的企业有50多家,包括Atlassian、Box、MongoDB等。
A2A的主要功能
- 促进智能体协作:A2A支持不同框架和供应商构建的AI智能体之间进行无缝协作。
- 支持多种模态:A2A支持文本、音频、视频等多种交互方式,满足不同场景下的需求。
- 任务管理和状态更新:A2A定义“任务”对象,具有生命周期(如提交、进行中、需要输入、完成、失败、取消)。对于长时任务,如复杂的数据分析或长时间的文件处理,A2A实时向用户反馈任务进度和状态更新。
- 用户体验协商:A2A支持智能体之间协商用户体验,根据用户设备和偏好调整交互方式。
- 安全性和认证:A2A支持企业级的认证和授权,确保数据交换的安全性和合规性。
A2A的设计原则
- 发挥代理能力:支持代理在自然、非结构化的模式下协作。
- 基于现有标准:基于HTTP、SSE、JSON-RPC等现有标准,易于与现有IT系统集成。
- 默认安全:支持企业级认证和授权,与OpenAPI的认证方案保持一致。
- 支持长期任务:支持从快速任务到可能需要数小时甚至数天的深度研究任务,提供实时反馈和状态更新。
- 模态无关:支持文本、音频和视频等多种交互方式。
A2A的工作原理
- 能力发现:代理基于“Agent Card”(JSON格式)宣传其能力,客户端代理能识别选择最适合执行任务的代理。
- 任务管理:客户端和远程代理之间的通信基于任务完成为导向,任务对象有生命周期,支持即时完成或长期运行。
- 协作:代理之间能发送消息传递上下文、回复、任务输出或用户指令。
- 用户体验协商:每条消息包含“部分”,这是一个完整的内容片段,每个部分有指定的内容类型,支持客户端和远程代理协商正确的格式。
A2A的技术原理
- Agent Card:智能体的“名片”,用JSON格式存储智能体的能力、技能、端点URL和认证要求。客户端基于访问/.well-known/agent.json获取Agent Card,发现和选择合适的智能体进行协作。
- A2A Server和A2A Client:A2A Server是实现A2A协议方法的HTTP端点,负责接收请求和管理任务执行;A2A Client发送请求(如tasks/send)的客户端或另一个智能体。两者基于HTTP协议进行通信。
- 任务和消息:任务是A2A的核心工作单元,客户端发送消息(包含任务描述)启动任务。消息由多个“部分”组成,包含文本、文件或结构化数据。任务在执行过程中经历不同的状态,状态基于消息的形式反馈给客户端。
- 流式传输和推送通知:对于长时任务,A2A支持流式传输(Server-Sent Events,SSE),客户端实时接收任务进度更新。A2A支持推送通知,服务器基于客户端提供的Webhook URL主动发送任务更新。
- 基于现有标准:A2A协议基于现有的流行标准(如HTTP、SSE、JSON-RPC)构建,支持集成到现有的IT架构中,降低企业采用的门槛。
A2A的合作伙伴
A2A已经得到包括Atlassian、Articul8、Arize AI、Box、C3 AI、BCG、Capgemini、Cognizant等在内的50多家技术合作伙伴和服务提供商的支持。
A2A的项目地址
A2A的应用场景
- 企业流程自动化:连接不同部门的系统,自动完成订单处理、库存管理等任务。
- 跨平台客服:整合多平台智能客服,提供更全面、及时的客户支持。
- 招聘流程优化:协同多个招聘平台和内部系统,快速筛选候选人并安排面试。
- 供应链协同:实时共享供应链各环节信息,优化库存和物流。
- 智能办公:整合办公工具中的智能体,自动安排会议、提醒任务,提升协作效率。