Agent2Agent Protocol
了解 Agent2Agent Protocol (A2A) 如何让 AI 代理能够使用 Ultralytics YOLO26 在不同框架之间安全地发现、通信、委托任务和协作。
Agent2Agent Protocol (A2A) 是一个开放的通信标准,使独立的 AI 代理能够在不同的框架、供应商和组织之间互相发现、交换请求、委派工作并返回结果。A2A 不会暴露代理的内部内存、推理过程或工具,而是提供了一个用于协作的共享接口。这使得它非常适合构建分布式 AI agent 系统,其中专门的代理在保持独立实现和运行的同时,为更大的目标贡献力量。
Agent2Agent Protocol 的工作原理#
官方 A2A Protocol 概述定义了请求工作的客户端代理与执行工作的远程代理之间的交互。通信使用基于 HTTP 的接口和结构化的协议对象,而不是非正式的、特定于应用程序的消息。(a2a-protocol.org)
典型的交互包含以下要素:
- Agent Cards and discovery: Agent Card 是对代理的身份、端点、支持的功能、身份验证要求和技能的 JSON 描述。客户端代理使用它来确定远程代理是否能够处理任务。
- 消息: 请求、指令、上下文和响应均表示为包含文本、文件或结构化数据的消息。
- 任务: 任务是具有标识符和状态的有状态工作单元。有据可查的 A2A task lifecycle 支持可能完成、失败、需要额外输入或被取消的工作。
- 工件: 报告、图像、视频或 JSON 记录等具体输出作为工件返回,而不是混入对话文本中。
- Streaming and asynchronous operations: 运行时间较长的代理可以流式传输增量更新、支持轮询或通过 webhook 通知客户端。
底层的请求格式遵循 JSON-RPC 2.0 specification,为实现提供了一致的方法、参数、响应和错误结构。
A2A 与相关代理技术的比较#
A2A 解决了代理之间的通信问题,但它并未定义代理系统的所有部分。
- Model Context Protocol: MCP 主要将代理连接到工具、数据源和资源。A2A 将一个自主代理连接到另一个代理。官方的 A2A and MCP guidance 解释了这两种协议如何一起使用,而不是将其视为竞争关系。(a2a-protocol.org)
- Agent Skills: 技能打包了可重用的指令和程序,帮助代理执行专门的工作。Agent Card 公布了用于远程协作的功能,而 Ultralytics Agent Skills 则通过有据可查的计算机视觉工作流引导兼容的编码代理。
- AI agent orchestration: 编排决定了哪个代理应该采取行动、以什么顺序以及在哪些约束条件下进行。A2A 提供了编排器可以使用的通信层。
- Function calling and tool use: 函数调用会调用特定的操作。A2A 请求可以委派更广泛的目标,由远程代理独立规划和完成。
真实世界的 AI 与计算机视觉应用#
制造检查: 协调员代理可以将生产图像发送给专门的 computer vision 代理。该代理运行缺陷检测,并返回带注释的图像和结构化发现作为工件。然后,协调员可以将确认的故障委派给维护代理,同时将不确定的情况路由给人工进行审查。
零售库存管理: 门店运营代理可以要求视觉代理检查货架图像、清点产品并识别空位。然后,它可以将这些观察结果发送给检查库存记录的库存代理以及准备补货请求的采购代理。A2A 使这些代理保持互操作性,而无需它们共享模型、源代码或私有内部上下文。
对于这些工作流,团队可以使用 Ultralytics Platform 来标注视觉数据集、训练模型、部署推理端点并监控代理调用的感知服务。
计算机视觉代理示例#
以下有据可查的 Ultralytics YOLO prediction workflow 表示远程视觉代理内部的感知步骤:
from pathlib import Path
from ultralytics import YOLO
source = "https://ultralytics.com/images/bus.jpg"
output_path = Path("vision_artifact.jpg")
# Perform the remote agent's visual analysis
model = YOLO("yolo26n.pt")
results = model(source)
result = results[0]
result.save(filename=str(output_path))
print(output_path)在这里,Ultralytics YOLO26 执行视觉推理并创建带注释的图像。A2A 服务器可以作为工件返回该图像,同时单独返回机器可读的检测结果。该协议负责传输和跟踪结果,但不会取代视觉模型。
设计和安全考量#
A2A 的互操作性并不能自动使多代理系统变得安全或可靠。开发者应验证 Agent Cards、对每个调用者进行身份验证、按技能授权访问、限制委派权限,并将远程输出视为不受信任的输入。该协议的 enterprise implementation guidance 推荐使用成熟的网络控制,例如 HTTPS、基于 OAuth 的身份验证、最小权限授权、日志记录、追踪和数据最小化。(a2a-protocol.org)
生产系统还应针对重大操作定义超时、重试策略、任务取消、幂等操作和人工审批。通过 Ultralytics Platform deployment monitoring 监控请求错误、延迟和端点运行状况,可以帮助团队在故障在协作代理之间传播之前识别视觉启用代理工作流中的故障。






