ACP 智能体通信协议:从原理到实战,构建多 Agent 协作系统

张开发
2026/4/11 18:33:51 15 分钟阅读

分享文章

ACP 智能体通信协议:从原理到实战,构建多 Agent 协作系统
AI Agent 遍地开花的时代单打独斗已经不够了。当你的 Agent 需要和别人的 Agent 对话时靠什么——ACP。一、为什么需要 ACP1.1 Agent 孤岛困境2025 年被称为智能体元年LangChain、CrewAI、AutoGen、BeeAI 等框架涌现大家都在造 Agent。但问题来了•你用 LangChain 造了一个研究 Agent•同事用 CrewAI 造了一个写作 Agent•合作方用 AutoGen 造了一个审核 Agent它们各说各话互不相通。每接一个新 Agent就得写一堆胶水代码。这就是智能体孤岛问题。1.2 现有协议的定位在 ACP 之前业界已经有了一些协议尝试协议全称解决什么问题类比MCPModel Context Protocol模型连接外部工具/数据给 Agent 装手和眼ACPAgent Communication ProtocolAgent 之间互相通信协作Agent 之间的语言A2AAgent to AgentAgent 对 Agent 交互模式通用交互范式ANPAgent Network ProtocolAgent 组网和路由底层网络层一句话定位MCP 让 Agent 能使用工具ACP 让 Agent 能互相对话。它们不是竞争关系而是协作关系。1.3 ACP 要解决的核心问题┌─────────────────────────────────────────────────┐ │ Before ACP │ │ │ │ Agent A ──(自定义API)── Agent B │ │ Agent C ──(gRPC)────── Agent D │ │ Agent E ──(WebSocket)── Agent F │ │ │ │ N 个 Agent N×(N-1) 种集成方式 │ └─────────────────────────────────────────────────┘ ┌─────────────────────────────────────────────────┐ │ After ACP │ │ │ │ Agent A ──┐ │ │ Agent B ──┤ │ │ Agent C ──┼──── ACP 统一协议 ──── 自由互通 │ │ Agent D ──┤ │ │ Agent E ──┘ │ │ │ │ N 个 Agent 1 种协议搞定 ✅ │ └─────────────────────────────────────────────────┘二、ACP 协议全貌ACP 目前有两大流派理解它们的区别很重要维度AgentUnion ACPIBM/BeeAI ACP发起方AgentUnion国内IBM Research / BeeAI国际定位智能体互联网基础设施协议跨框架智能体互操作协议核心理念类似互联网 TCP/IP构建 Agent Internet基于 REST API 的轻量级消息传递身份体系AIDAgent Identifier类似域名Agent Manifest能力声明传输层HTTPS WSS SSEREST API SSESDKPython / TypeScript / C / FlutterPython / TypeScript状态活跃迭代中已并入 Linux Foundation A2A下面分别详细介绍。三、AgentUnion ACP 深度解析AgentUnion ACP 的野心更大——它要做智能体互联网像互联网的 TCP/IP 一样让所有 Agent 都能入网、寻址、通信。3.1 核心概念十大要素┌─────────────────────────────────────────────────────────────┐ │ Agent Internet智能体互联网 │ │ │ │ ┌──────┐ ACP协议 ┌──────┐ ACP协议 ┌──────┐ │ │ │Agent │◄──────────►│ AP │◄───────────►│Agent │ │ │ │ A │ │接入点 │ │ B │ │ │ │(AID) │ │ │ │(AID) │ │ │ └──────┘ └──┬───┘ └──────┘ │ │ │ │ │ ┌──────┴──────┐ │ │ │ AP 核心服务 │ │ │ │ · 身份认证 │ │ │ │ · 寻址查找 │ │ │ │ · 会话管理 │ │ │ │ · 数据存储 │ │ │ │ · 契约签名 │ │ │ └─────────────┘ │ └─────────────────────────────────────────────────────────────┘ AID — Agent 的身份证AIDAgent Identifier是每个 Agent 在网络中的唯一标识类似于互联网域名格式{agent-name}.{ap-domain} 示例my-research-agent.aid.pub writing-bot.aid.pub•通过接入点AP泛域名解析获得•全球唯一用于寻址和通信•基于 ECDSA P-384 数字证书的去中心化身份 AP — Agent 的路由器APAccess Point是 Agent 入网的大门提供AP 服务说明身份管理AID 的创建、认证、管理状态查询Agent 在线状态、能力发现会话服务Agent 之间的通信通道管理数据存储Agent 公有数据托管契约签名数字契约认证与签名验证一个形象的比喻如果 Agent 是电脑AID 就是网卡ACP 是网线AP 是路由器。3.2 通信协议栈ACP 建立在成熟的互联网协议之上┌─────────────────────────────────┐ │ 应用层ACP 消息格式 │ ← JSON 消息体 ├─────────────────────────────────┤ │ 会话层会话管理 │ ← 创建/关闭会话 ├─────────────────────────────────┤ │ 传输层HTTPS / WSS / SSE │ ← 加密传输 ├─────────────────────────────────┤ │ 网络层TCP/IP │ ← 基础网络 └─────────────────────────────────┘三种传输方式各有分工•HTTPS常规请求-响应如创建 AID、查询状态•WSS (WebSocket Secure)实时双向通信如会话消息收发•SSE (Server-Sent Events)流式输出如 LLM 流式回答3.3 会话通信时序一次完整的 Agent 间通信流程Agent A AP Agent B │ │ │ │ 1. create_session() │ │ │────────────────────────│ │ │ │ 2. notify_session() │ │ │───────────────────────│ │ │ │ │ 3. send_message() │ │ │────────────────────────│ 4. forward_message() │ │ │───────────────────────│ │ │ │ │ │ 5. send_message() │ │ 6. receive_message() │───────────────────────│ │────────────────────────│ │ │ │ │ │ 7. close_session() │ │ │────────────────────────│ 8. notify_close() │ │ │───────────────────────│ │ │ │3.4 AgentProfile — Agent 的名片每个 Agent 都有一份agentprofile.json描述自己是谁、能做什么publisherInfonameAgentUnion Labscontactdevagentunion.cnnameresearch-agentdescription专业的互联网信息研究与摘要智能体version1.0.0capabilitiescoreweb-searchsummarizetranslateextendeddeep-researchfact-checkinputtypestext/plainapplication/jsonmaxLength10000outputtypestext/plaintext/markdownstreamingtrueauthorizationmodefreedescription免费使用无需授权搜索引擎可以直接索引这些 Profile让 Agent 像网站一样可被发现。3.5 安全机制ACP 的安全设计分三层┌──────────────────────────────────────┐ │ 第一层通信安全 │ │ · 全链路 HTTPS/WSS 加密 │ │ · 消息签名验证 │ ├──────────────────────────────────────┤ │ 第二层身份安全 │ │ · 基于 PKI 的证书体系 │ │ · ECDSA P-384 数字签名 │ ├──────────────────────────────────────┤ │ 第三层行为安全 │ │ · Agent 行为规范约束 │ │ · 授权与交易流程规范 │ │ · 数字契约签名验证 │ └──────────────────────────────────────┘四、IBM/BeeAI ACP 实战IBM ACP现已并入 Linux Foundation A2A的设计更偏实用主义——用最简单的 REST API 让不同框架的 Agent 对话。4.1 核心概念概念说明Agent ManifestAgent 能力描述类似 API 文档Run一次 Agent 执行支持同步/流式Message通信核心由多个 MessagePart 组成MessagePart消息的最小单元文本/图片/JSONAwaitAgent 暂停等待客户端输入Session跨多次交互维护状态4.2 快速上手Echo Agent服务端 — 创建一个 Echo Agent# echo_server.pyimportfromimportfromimportfromimportserver.agentasyncdef原样返回收到的所有消息forinawait0.5yieldthought收到消息我应该回传它await0.5yield# 默认在 http://localhost:8000 启动客户端 — 调用 Echo Agent# echo_client.pyimportfromimportfromimportasyncdefasyncwithhttp://localhost:8000as# 同步调用awaitechouserHello from ACP!text/plainprintAgent 回复: {run.output}if__main__运行# 终端 1启动服务端pippython# 终端 2运行客户端python# 输出: Agent 回复: Hello from ACP!4.3 进阶流式调用fromimportfromimportfromimportasyncdefasyncwithhttp://localhost:8000asasyncforinechouserStream me!print[流式] {content}print[完成] Agent 处理结束pass# 其他事件五、实战构建多 Agent 协作系统接下来用一个完整的案例展示 Agent 如何通过 ACP 互相协作。5.1 场景设计一个内容创作流水线用户给一个主题多个 Agent 协作完成 **研究 → 写作 → 审核 → 排版**。ACP 协议 用户输入主题 ── [研究Agent] ── [写作Agent] ── [审核Agent] ── 输出成品 (crewAI) (LangChain) (BeeAI)关键点三个 Agent 用了三个不同的框架但通过 ACP 无缝协作。5.2 AgentUnion ACP 实现方案使用 AgentUnion 的 agentcp SDK安装pip# 或npm研究 AgentPythonfromimport# 初始化并创建身份aid.pub# 接入 APresearch-agent# 定义消息处理回调defcontentprint[研究Agent] 收到研究主题: {topic}# 调用 LLM 进行研究...# 将研究结果发送给写作 Agentwriting-agent.aid.pub# 上线并监听消息写作 AgentTypeScriptimportfromacp-tsconstconstawaitaid.pubconstawaitwriting-agent// 初始化通信constawaitawait// 监听消息asyncstringanyconsole[写作Agent] 收到研究资料// 调用 LLM 生成文章...constawait// 将文章发给审核 Agentawaitreview-agent.aid.pub// 上线await审核 AgentPythonfromimportaid.pubreview-agentdefcontentprint[审核Agent] 收到待审文章# 调用 LLM 审核...ifapproved# 审核通过返回给发起者from_aidstatusapprovedarticlecommentscommentselse# 打回修改writing-agent.aid.pubstatusrevision_neededfeedbackfeedback协调器发起方fromimportaid.pubcoordinator# 创建会话research-agent.aid.pubwriting-agent.aid.pubreview-agent.aid.pub# 发起任务idresearch-agent.aid.pub请研究 ACP 智能体通信协议的最新进展# 等待最终结果id300# 5分钟超时print最终成品: {result[content]}5.3 IBM ACP 实现方案使用 acp-sdk搭建跨框架协作研究 AgentcrewAI 框架# research_server.pyfromimportfromimportfromimportserver.agentresearcher互联网信息研究智能体asyncdef00yieldthought开始研究主题: {topic}# 这里集成 crewAI 的研究能力fromimport资深研究员深入研究 {topic}你是一位经验丰富的技术研究员请详细研究以下主题: {topic}yieldassistantstr8001写作 AgentLangChain 框架# writer_server.pyfromimportfromimportfromimportserver.agentwriter专业文章写作智能体asyncdef00yieldthought收到研究资料开始撰写文章# 集成 LangChain 写作能力fromimportfromimportgpt-4基于以下研究资料撰写一篇高质量的技术文章\n\n{research}researchyieldassistant8002客户端协调器# orchestrator.pyimportfromimportfromimportasyncdefprint 启动内容创作流水线主题: {topic}\n# Step 1: 研究print Step 1: 研究阶段...asyncwithhttp://localhost:8001asawaitresearcheruser10print ✅ 研究完成获得 {len(research_data)} 字资料\n# Step 2: 写作print✍️ Step 2: 写作阶段...asyncwithhttp://localhost:8002asawaitwriteruser10print ✅ 文章完成共 {len(article)} 字\n# Step 3: 审核流式print Step 3: 审核阶段...asyncwithhttp://localhost:8003asasyncforinrevieweruser# 实时输出审核意见...passprint 流水线完成!return# 运行ACP 智能体通信协议六、ACP 与 MCP/A2A/ANP 关系图谱这四个协议经常被放在一起讨论但它们解决的问题完全不同┌──────────────────────────────────────────────────────────────┐ │ AI Agent 技术栈 │ │ │ │ ┌─────────────────────────────────────────────────────────┐ │ │ │ 应用层 │ │ │ │ ┌─────────┐ ┌─────────┐ ┌──────────┐ │ │ │ │ │ ACP │ │ A2A │ │ ANP │ │ │ │ │ │Agent间 │ │Agent间 │ │Agent组网 │ │ │ │ │ │通信协议 │ │交互标准 │ │路由协议 │ │ │ │ │ └─────────┘ └─────────┘ └──────────┘ │ │ │ └─────────────────────────────────────────────────────────┘ │ │ ┌─────────────────────────────────────────────────────────┐ │ │ │ 能力层 │ │ │ │ ┌─────────┐ │ │ │ │ │ MCP │ │ │ │ │ │模型连接 │ │ │ │ │ │外部工具 │ │ │ │ │ └─────────┘ │ │ │ └─────────────────────────────────────────────────────────┘ │ │ ┌─────────────────────────────────────────────────────────┐ │ │ │ 基础层LLM (GPT/Claude/Deepseek/Qwen...) │ │ │ └─────────────────────────────────────────────────────────┘ │ └──────────────────────────────────────────────────────────────┘详细对比维度MCPACPA2AANP层级能力扩展层应用通信层应用交互层网络组织层核心功能模型接工具Agent 对 Agent 通信Agent 交互标准Agent 网络路由类比USB 接口HTTP 协议REST 风格TCP/IP发起方AnthropicAgentUnion / IBMGoogle Linux Foundation社区典型场景让 Agent 调 API让 Agent 互相对话定义交互模式构建 Agent 网络成熟度⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐一个生活化的比喻**MCP** 手机的 App Store让手机能装各种 App/工具**ACP** 电话协议让手机之间能打电话**A2A** 打电话的礼仪先说喂再说事最后说拜拜**ANP** 电信基站网络确保信号能到达对方七、最佳实践与架构建议7.1 选择哪个 ACP 流派场景推荐理由国内企业级部署需要完整的身份体系AgentUnion ACP完善的 AID/AP 体系支持商业化快速搭建跨框架 Agent 协作IBM ACP (A2A)轻量级 REST API上手快需要 P2P 实时通信AgentUnion ACP原生 WSS 支持低延迟开源社区生态优先IBM ACP (A2A)Linux Foundation 背书7.2 架构设计原则┌─────────────┐ │ API 网关 │ ← 统一入口 └──────┬──────┘ │ ┌────────────┼────────────┐ │ │ │ ┌─────┴─────┐ ┌───┴───┐ ┌─────┴─────┐ │ Agent 集群A│ │ Agent │ │ Agent 集群C│ │ (crewAI) │ │ 集群B │ │ (AutoGen) │ │ │ │(BeeAI)│ │ │ └─────┬─────┘ └───┬───┘ └─────┬─────┘ │ │ │ └────────────┼────────────┘ │ ┌──────┴──────┐ │ ACP 消息总线 │ ← 统一通信层 └─────────────┘七条黄金法则Agent 单一职责一个 Agent 只做一件事做到极致幂等设计同一消息重复发送结果相同超时机制所有通信必须设置合理超时优雅降级某个 Agent 不可用时有兜底方案消息持久化关键消息必须持久化防丢失可观测性接入日志和 tracing排查问题不抓瞎版本兼容AgentProfile 中声明版本做好前后兼容7.3 安全 Checklist✅ 全链路 HTTPS/WSS 加密 ✅ Agent 身份认证AID 证书或 API Key ✅ 消息签名验证 ✅ 输入内容校验防 Prompt Injection ✅ 速率限制防 DDoS ✅ 敏感数据脱敏 ✅ 审计日志 ✅ 最小权限原则八、未来展望8.1 协议融合趋势2025 年下半年IBM ACP 已并入 Linux Foundation 的 A2A 项目预示着协议融合正在发生。未来可能的走向2024 2025 2026 2027 │ │ │ │ MCP 发布 ── ACP/A2A 涌现 ─ 协议融合期 ── 统一标准? ANP 探索 互操作层成熟 Agent Internet8.2 值得关注的方向•Agent 发现引擎类似 Google但搜索的是 Agent 而非网页•Agent 市场像 App Store 一样Agent 可以被发现、购买、组合•跨域协作金融 Agent 法律 Agent 数据 Agent 联合作业•Agent 治理当 Agent 越来越多如何监管和审计九、总结ACP 不只是一个协议它代表了 AI Agent 从单体应用走向分布式协作的范式转变。你需要…用…让 Agent 调用外部工具MCP让 Agent 之间互相通信ACP构建企业级 Agent 网络AgentUnion ACP快速搭建跨框架 Agent 协作IBM ACP / A2A记住这句话MCP 给 Agent 装上了手脚ACP 让 Agent 学会了说话。在多 Agent 协作的时代不会说话的 Agent注定是一座孤岛。学AI大模型的正确顺序千万不要搞错了2026年AI风口已来各行各业的AI渗透肉眼可见超多公司要么转型做AI相关产品要么高薪挖AI技术人才机遇直接摆在眼前有往AI方向发展或者本身有后端编程基础的朋友直接冲AI大模型应用开发转岗超合适就算暂时不打算转岗了解大模型、RAG、Prompt、Agent这些热门概念能上手做简单项目也绝对是求职加分王给大家整理了超全最新的AI大模型应用开发学习清单和资料手把手帮你快速入门学习路线:✅大模型基础认知—大模型核心原理、发展历程、主流模型GPT、文心一言等特点解析✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑✅开发基础能力—Python进阶、API接口调用、大模型开发框架LangChain等实操✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经以上6大模块看似清晰好上手实则每个部分都有扎实的核心内容需要吃透我把大模型的学习全流程已经整理好了抓住AI时代风口轻松解锁职业新可能希望大家都能把握机遇实现薪资/职业跃迁这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

更多文章