微软正式发布 A2A .NET SDK,这款全新开发者工具包支持基于 Agent2Agent(A2A)协议构建具备交互协作能力的 AI 代理。该 SDK 同时支持客户端与服务端角色,使得基于 .NET 开发的代理能够跨生态系统与其他代理交互,无需考虑底层技术差异。
A2A 协议为代理提供标准化交互机制,包括相互发现、通信格式协商以及消息或任务交换。相较于临时性集成方案,该协议为不同代理(无论采用 .NET 还是其他支持该协议的语言开发)提供结构化互操作性。
该 SDK 是对微软开源 AI 编排框架 Semantic Kernel 现有 A2A 支持能力的补充。虽然 Semantic Kernel 已内置 A2A 支持,但社区驱动的 A2A .NET SDK 能在保持生产级应用集成路径清晰的同时,实现更快速的协议功能迭代。
A2A .NET SDK 的核心功能包括:
• 代理能力发现:通过 A2ACardResolver 类,代理可获取标准化 Agent Cards 描述的能力信息
• 通信灵活性:支持即时消息交互与长期异步任务处理
• 流式传输支持:基于 Server-Sent Events(SSE)实现实时更新
• ASP.NET Core 集成:提供扩展组件,轻松将代理作为 Web 服务暴露
开发者利用该 SDK 构建的代理不仅能响应消息,还能处理持久性任务、实时流式传输结果,还能将其托管于常见的 .NET 环境。官方提供的简易的 echo 代理示例可以开发者帮助理解架构并进行实验。
尽管该 SDK 大幅简化了代理通信的诸多环节,但认证与安全机制(尤其在生产环境中)仍存在待解决问题。正如 Natraj Yegnaraman 所指出的:
我查看了代码库,目前搞不懂代理是如何与服务器进行认证的,以及当服务器部署在 Azure 且代理需要访问受 OAuth 保护的资源时,服务器又是如何进行授权验证的。希望官方能为我这样的初学者提供 15 到 30 分钟的入门指导视频。
该反馈表示微软仍需要加强文档与教程,尤其是针对计划在安全云环境部署 A2A 代理的开发者。
该 SDK 目前处于预览阶段,微软表示 API 可能会根据反馈和协议更新进行调整。开发者可使用 A2A Inspector 等工具进行代理测试,该工具支持消息追踪和通信流调试。
原文链接: