/a2a/{assistant_id} 路径下使用。
支持的方法
Agent Server 支持以下 A2A RPC 方法:- message/send:向助手发送消息并接收完整响应
- message/stream:发送消息并使用服务器发送事件 (SSE) 实时流式传输响应
- tasks/get:检索先前创建任务的状态和结果
智能体卡片发现
每个助手会自动公开一个 A2A 智能体卡片,该卡片描述了其功能,并提供了其他智能体连接所需的信息。您可以使用以下方式检索任何助手的智能体卡片:要求
要使用 A2A,请确保已安装以下依赖项:langgraph-api >= 0.4.21
使用概述
要启用 A2A:- 升级到使用 langgraph-api>=0.4.21。
- 部署具有基于消息的状态结构的智能体。
- 使用端点与其他兼容 A2A 的智能体连接。
创建兼容 A2A 的智能体
此示例创建一个兼容 A2A 的智能体,该智能体使用 OpenAI 的 API 处理传入消息并维护对话状态。该智能体定义了基于消息的状态结构,并处理 A2A 协议的消息格式。 为了与 A2A “text” 部分 兼容,智能体的状态中必须有一个messages 键。
A2A 协议使用两个标识符来维护对话连续性:
contextId:将消息分组到一个对话线程中(类似于会话 ID)taskId:标识该对话中的每个独立请求
contextId 和 taskId - 智能体会生成并返回它们。对于对话中的所有后续消息,包含先前响应中的 contextId 和 taskId 以保持线程连续性。
LangSmith 追踪: Langsmith 部署的 A2A 端点会自动将 A2A 的 contextId 转换为 LangSmith 追踪的 thread_id,将对话中的所有消息分组到单个线程下。
例如:
智能体间通信
一旦您的智能体通过langgraph dev 在本地运行或部署到生产环境,您就可以使用 A2A 协议促进它们之间的通信。
此示例演示了两个智能体如何通过向彼此的 A2A 端点发送 JSON-RPC 消息进行通信。该脚本模拟了一个多轮对话,其中每个智能体处理对方的响应并继续对话。
- 两个 LangGraph 智能体通信 - 两个 LangGraph 智能体使用 A2A 协议的示例
- Google ADK 智能体与 LangChain 智能体 - Google ADK 智能体与 LangChain 智能体使用 A2A 协议交互的示例
禁用 A2A
要禁用 A2A 端点,请在您的langgraph.json 配置文件中将 disable_a2a 设置为 true:
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

