Skip to content
🚀 EDDI 6.5.0

19个LLM提供商、可抓取网站并读取文件的知识库,以及沿用兼容代理版本的对话新功能

托管云 立即开始
所有集成
代理协议JSON-RPC 2.0

A2A

通过 Agent Card 和 JSON-RPC 向其他代理开放 EDDI 代理,并在你自己的代理中把远程 A2A 代理当作工具使用。

你将获得

  • 为每个你选择开放的代理提供一份 Agent Card,列出其技能
  • JSON-RPC 2.0 端点,支持 tasks/send、tasks/get 和 tasks/cancel
  • 远程 A2A 代理与内置工具、MCP 工具和 HTTP 工具一起并入工具调用循环
  • 技能过滤器,可只开放远程代理的一部分

在 EDDI 中如何工作

  1. 用 a2aEnabled: true 为代理选择开放,并填写描述和要公布的技能。
  2. 对等方从 /a2a/agents/{agentId}/agent.json 获取其卡片,并调用 POST /a2a/agents/{agentId}。
  3. 如需使用远程代理,在 LLM 任务的 a2aAgents 下列出它,并填写其 URL 和以保管库引用形式提供的 API 密钥。
  4. EDDI 读取远程卡片,把每项技能转换为名为 {agentName}_{skillId} 的工具,并通过 tasks/send 调用它。

配置

摘自 EDDI 文档。诸如 your-agent-id 之类的占位符需要你自行替换。

Expose an agent (agent configuration)开放一个代理。A2A 按代理单独选择开启。
{
  "a2aEnabled": true,
  "description": "Customer support agent specializing in order tracking",
  "a2aSkills": ["order-tracking", "refund-processing"]
}
Consume a remote agent (LLM task)使用远程代理。API 密钥必须是保管库引用。
{
  "systemMessage": "You are an orchestrator agent...",
  "a2aAgents": [
    {
      "url": "https://remote-eddi.example.com/a2a/agents/support-agent",
      "name": "support-agent",
      "apiKey": "${vault:remote-agent-key}",
      "timeoutMs": 30000,
      "skillsFilter": ["order-tracking"]
    }
  ]
}

治理

  • Agent Card 在设计上允许匿名访问,使对等方在持有凭据之前就能发现代理。开启认证后,列出代理和 JSON-RPC 端点都需要令牌。
  • 远程代理的工具与其他工具来源一样,经过相同的审批关口和工具结果护栏,API 密钥则保留在保管库中。
  • tasks/send 会消耗你的 LLM 预算来运行对话,因此它不是匿名的。

须知

  • 开启认证后,卡片会公布一个令牌端点。除非你设置 eddi.a2a.public-token-endpoint,EDDI 会推导出 Keycloak 风格的路径,因此使用其他身份提供方时请设置它。

相关集成

本页的配置和行为依据 EDDI 文档,核对日期为 2026-10-14。字段名称和默认值可能随版本变化,请在所用版本的文档中确认。