当前位置: 首页
AI教程
全面解析A2A协议及Demo实现与学习心得

全面解析A2A协议及Demo实现与学习心得

热心网友 时间:2026-06-23
转载

先说几个核心判断。Agent-to-Agent(A2A)协议正在成为多智能体协作的基础设施,而各大开发平台对它的支持程度,将直接决定未来企业级智能体生态的走向。下面我们系统梳理一下A2A协议的要点、主流Agent开发平台的特性,以及如何基于A2A协议把Agent“发布”出去。

A2A 协议详解

先来看看A2A协议的五个核心设计原则,它们奠定了整套协议的基调。

\

第一,拥抱 Agent 能力。 A2A不只是把远端的Agent当成一个工具来调用,它允许Agent之间以自由、非结构化的方式交换消息,支持跨内存、跨上下文的真实协作。同时,Agent之间是“黑盒”——不需要暴露内部思考、计划或工具,隐私保护也够到位。

第二,基于现有标准。 在HTTP、Server-Sent Events、JSON-RPC这些成熟技术之上构建,意味着能和现有IT架构无缝集成,企业不用推倒重来。

第三,企业级安全。 内置了与OpenAPI同级别的认证与授权机制,满足企业级的安全与合规需求。这一点对生产环境至关重要。

第四,长任务支持。 除了即时调用,还能管理需要人机环节介入、耗时数小时甚至数天的深度研究任务,并实时反馈状态与结果。

第五,多模态无差别。 不限于文本,原生支持音频、视频、富表单、嵌入式iframe等多种交互形式。

讲完五大原则,接下来看协议中定义的三个关键角色——它们各司其职、协同配合,共同支撑起多Agent生态的运行。

\

  • 用户(User):最终用户(人类或服务),使用Agent系统完成任务。
  • 客户端(Client):代表用户向远程Agent请求行动的实体。在A2A框架中,Client通常也是一个具有一定决策能力的Agent。
  • 远程Agent(Remote Agent):作为A2A服务器的“黑盒”Agent。

客户端负责选择合适的远程Agent来完成任务,并管理与远程Agent的通信、认证和任务状态。

A2A协议还设计了一套完整的对象体系,用于实现高效协作:

  • Agent Card(Agent名片):每个支持A2A的远程Agent需发布一个JSON格式的“Agent Card”,描述自身能力和认证机制。Client据此选择最合适的Agent。

\

  • Task(任务):Client和Remote Agent之间协作的核心概念,包含状态、历史记录和结果。
  • Artifact(成果):Remote Agent生成的任务结果,可以有多个部分(parts),比如文本、图像等。
  • Message(消息):用于Client和Remote Agent之间的通信,包含指令、状态更新等内容,一个Message可包含多个parts来传递不同类型内容。

Agent 开发平台分类及介绍

Agent开发平台大致可分为两类:高代码平台和低代码平台。低代码平台如Coze、Dify,通过可视化界面和拖拽操作降低门槛;高代码平台则更适合有技术背景的开发者,强调灵活性和深度定制,也更容易实现协议的标准化需求。本章主要聚焦高代码平台。

AG2 / AutoGen:微软AutoGen更偏向企业级,依托Semantic Kernel和Azure生态,注重生产支持和商业化。AutoGen Studio的低代码特性吸引非开发者用户,但0.4版本不再兼容0.2,社区需要迁移代码。AG2则坚持开源和社区驱动,保持0.2的架构连续性,适合研究者和开发者实验。AG2的灵活性和创新功能(如Reasoner袋里)在开源社区中更具吸引力,但缺乏微软的资金和企业背书。

CrewAI:以其直观的“团队协作”理念和易用的API在开源社区中有一席之地。相比AutoGen的企业化定位和AG2的研究导向,CrewAI更适合中小型项目与快速开发,受初学者与中小企业青睐。与LangChain等工具的兼容性和社区驱动的生态使其具有长期发展潜力,但在复杂推理与大规模生产环境支持方面仍需完善。

\

Google ADK (Agent Development Kit):发布较晚,不为很多人所知,但充分利用Google Cloud生态,用Gemini模型和Vertex AI实现可扩展性和监控。它还支持MCP和A2A协议,实现跨供应商的Agent协作安全性和互操作性,并通过Agent Garden提供预构建样本和工具加速开发。

LangGraph:由LangChain团队开发,专注于构建基于语言模型的多Agent系统和图状工作流。深深嵌入LangChain生态,与LangChain的Agent、内存和检索模块高度兼容,也支持其他框架的部分功能。通过LangSmith可以进行工作流的监控和评估。其图状工作流和动态路由能力使其成为处理复杂多Agent任务的理想选择,尤其适合需要可视化和状态管理的场景。

LlamaIndex Agent:深深嵌入LlamaIndex生态,与数据连接器(支持PDF、CSV、SQL等)、索引器和查询引擎紧密协作。与LangChain和CrewAI等框架兼容。通过LlamaIndex的可视化工具(如Playground)进行调试和优化。其强大的数据索引和检索能力使其成为处理知识密集型任务的理想选择,模块化设计和多模态支持使其在教育、研究和企业应用中广受欢迎。

Semantic Kernel:微软开发的轻量级开源SDK,帮助开发者将LLM轻松集成到C#、Python或Ja va代码中。作为高效的中介层,加速企业级解决方案交付,受大型企业青睐。将提示与现有API结合,通过描述代码给AI模型,模型调用函数,SK作为中间件翻译请求并返回结果。开发者可将现有代码作为插件,最大化投资回报。

还有一些小众框架,如Azure AI Foundry Agent Service、MindsDB Agent和Marvin等。

A2A 协议搭建智能体平台

这一章基于教学版代码介绍A2A智能体平台的搭建过程。代码路径如下:

git clone https://github.com/huangjia2019/a2a-in-action.git

\

在这个基于A2A协议的智能体平台中,用户在浏览器端发出指令后,前端将请求传给Host Agent,由它负责解析意图、拆解子任务,并行触发多个Remote Agent;每个Remote Agent通过A2A Client将子任务封装为标准JSON-RPC请求,发送给远端对应的A2A Server,由后者调用各自擅长的智能体模块执行并返回结果;最后Host Agent汇总并格式化各路反馈呈现给用户。

Host Agent

进入demo/ui目录,启动Demo:

cd demo/ui
uv run main.py

启动后日志如下:

\

Host Agent的管理页面地址:http://localhost:12000/

\

页面支持对话功能:

\

注册Remote Agent功能:

\

页面还支持事件列表查询、任务列表查询、设置等功能。

启动Remote Agent并注册到Host Agent

启动基于LangGraph开发的Agent:进入agents/langgraph目录,通过uv run .命令启动服务。

\

将LangGraph开发的Agent注册到Host Agent:

\

输入Agent发布的地址和端口:

\

会自动弹出Agent Card:

\

可以看到Remote Agent已经添加成功。

\

正常情况下,可以通过页面中的对话,通过Host Agent的Client与这个Remote Agent进行交互调用。不过实际调试中,可能由于网络环境问题出现一些请求超时情况,这里先初步体验这个Demo案例。

Remote Agent A2A协议实现细节

在教学项目中,LangGraph框架开发的Agent通过A2AServer(A2A协议服务端实现)将CurrencyAgent以HTTP服务形式暴露出来,并注册了自己的AgentCard。

Agent Card是A2A协议的关键核心对象,定义Agent的元数据(名称、描述、URL、版本等),声明支持的输入/输出模态,列出技能清单。它的目的是让Agent能够被发现,并让其他系统知道如何与之交互——这是实现Agent-to-Agent通信的基础。

A2AServer则是A2A协议的服务端实现,其中的Task Manager负责任务生命周期管理、状态追踪和更新(WORKING、COMPLETED、ERROR等)、同步/异步请求处理、生成响应格式以及错误处理和恢复。

server = A2AServer(
    agent_card=agent_card,
    task_manager=AgentTaskManager(
        agent=CurrencyAgent(),
        notification_sender_auth=notification_sender_auth,
    ),
    host=host,
    port=port,
)

这样一来,LangGraph目录下的Agent就成为一个标准的A2A协议远程Agent,具备独立服务能力和能力自描述。

Agent 智能体的授权

在智能体时代,授权的内涵发生了根本性变化。

\

总结

Google Cloud已联手50多家技术与服务伙伴(包括Atlassian、Salesforce、MongoDB、Accenture、Deloitte等)共建A2A生态。未来预计将在开源社区中逐步完善规范,并推出生产级实现,推动异构Agent在企业级场景中的深度互操作,助力跨系统、跨组织的智能协作大规模落地。

目前多数企业可能还未涉及跨平台的Agent交互问题,所以持观望态度,等待市场上出现更稳定、更成熟的企业级A2A智能体平台。

本文如有不准确的引用或观点,欢迎大家批评指正。

来源:https://cloud.tencent.com.cn/developer/article/2695214

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

同类文章
更多
科研人员必读:多肽、蛋白质、重组蛋白区别及定制指南

科研人员必读:多肽、蛋白质、重组蛋白区别及定制指南

Section 01 多肽 VS 蛋白质 VS 重组蛋白 多肽、蛋白质和重组蛋白,本质上是同宗同源的东西——都是氨基酸串起来的生物大分子。三者的核心区别,说到底无非是三个维度:分子大小、折叠形态,以及生产方式。 接下来是一张清晰的对比图,帮你快速建立直觉: ![对比图1](https:

时间:2026-07-07 17:55
知识图谱与本体语义建模的核心区别解析

知识图谱与本体语义建模的核心区别解析

谈到人工智能如何“理解”知识,有两个概念常被放在一起讨论:知识图谱与本体语义建模。不少人以为它们是同一事物,或者认为后者是前者的进化版。实际上,两者的分工完全不同——打个比方,一个是“记事的本子”,另一个是“写本子之前先定好的规矩”。 1 本体语义建模:先绘制一张“通用分类蓝图” 设想一下,你要整

时间:2026-07-07 17:55
强烈推荐工作搭子WorkBuddy

强烈推荐工作搭子WorkBuddy

一次偶然的机会,从朋友那里了解到WorkBuddy这个工具。说实话,在AI产品扎堆的今天,能遇到一个下载即用的助手,确实值得推荐给每一个被日常琐事缠身的人。 安装过程没什么难度,双击安装包默认安装即可。需要留意的是,如果在Windows7上折腾了半天没反应,别慌——这工具在高版本Windows下运行

时间:2026-07-07 17:55
跨境电商系统自动化测试与CI/CD流水线构建指南

跨境电商系统自动化测试与CI/CD流水线构建指南

技术方向:自动化测试与DevOps实践关键词:日本代购、一站式日淘、雅虎代拍系统、煤炉自动代拍 一、测试分层策略详解 不少人刚开始就想直接搞E2E测试,觉得跑通完整流程才够“真实”。然而,测试金字塔这么多年仍不过时,原因很简单——不同层级的测试各有分工,缺少任何一层都会不稳。来看看这张金字塔图: ┌

时间:2026-07-07 17:54
中小企业AI营销矩阵工具推荐:赛诺贝斯智域蒲公英

中小企业AI营销矩阵工具推荐:赛诺贝斯智域蒲公英

天天刷着别人的爆款内容,自己却“有心无力”——这才是2026年绝大多数中小企业运营社交媒体的真实写照。说白了,社交媒体如今早已不是“要不要做”的选择题,而是“怎么做才能真正见效”的生存考验。现实情况是,团队人力就那么几个,预算也紧巴巴,却要同时运营抖音、小红书、知乎、头条、百家号等多个阵地……文案、

时间:2026-07-07 17:54
热门专题
更多
刀塔传奇破解版无限钻石下载大全 刀塔传奇破解版无限钻石下载大全
洛克王国正式正版手游下载安装大全 洛克王国正式正版手游下载安装大全
思美人手游下载专区 思美人手游下载专区
好玩的阿拉德之怒游戏下载合集 好玩的阿拉德之怒游戏下载合集
不思议迷宫手游下载合集 不思议迷宫手游下载合集
百宝袋汉化组游戏最新合集 百宝袋汉化组游戏最新合集
jsk游戏合集30款游戏大全 jsk游戏合集30款游戏大全
宾果消消消原版下载大全 宾果消消消原版下载大全