从9个Agent砍到5个,我的集群反而更好用了:多智能体系统的“减法”哲学与架构精简SOP

简介: 本文揭示多智能体系统中“Agent越多越脆弱”的反直觉现象:9节点架构因上下文爆炸、状态同步延迟与幻觉传染导致性能骤降。经根因分析,提出“砍至5节点+意图委派+内存分区”三重优化,实现Token降耗40%、故障隔离强化。核心主张:好系统靠清晰边界,而非密集连接

一、一个反直觉的发现:Agent越多,系统越脆弱

在搭建多智能体系统的初期,一个常见的误区是按“功能细分”的逻辑,将系统拆分为多个专用Agent。笔者在[枢衡]V2.0中,将集群拆成9个Agent,分别映射9大部门的职能,每个Agent配备专属工具集和提示词,角色边界看起来非常清

假设很朴素:角色分得越细,整体产能越高。

但系统运行后,三个问题同时爆发,互相加剧:

1.1 上下文窗口被聊天记录迅速撑爆

9个Agent每次协作,都会在共享上下文里产生大量对话历史、中间推理步骤、状态同步消息。跑不了几轮,上下文窗口就逼近上限,系统开始丢弃早期信息——而早期信息往往是最重要的任务约束和验收标准

1.2 状态同步延迟呈指数级上升

Agent之间的信息传递理论上应解耦且高效。但9个节点以网状结构互相通信时,消息链路变得极长,任何一次状态更新都需要经过多道序列化与反序列化。延迟不是线性叠加,而是随着节点数量呈现近指数级增长

1.3 单一节点的幻觉或逻辑死锁会像病毒一样传染

某个Agent如果输出了错误信息或陷入逻辑死锁,这条错误信息会通过全局共享记忆库迅速被其他Agent读取并作为决策依据。在紧耦合架构中,任何一个拜占庭节点,都会导致这种级联效应

6ba527a4ad37f8b897e42e723124be98.jpg

几轮测试之后,从数据里确认了一个和直觉完全相反的结论:在多Agent系统中,节点数量与系统整体能力不是正相关,而是呈倒U型关系。越过某个临界点之后,每增加一个Agent,都是在给系统的脆弱性充值,而不是在给系统的能力加分。

二、根因分析:三个深层病灶

动手精简之前,用了一整周时间做故障复盘,把9节点集群的所有崩溃日志和异常记录逐条分析。最终锁定了三个根因:

2.1 通信拓扑过度耦合

早期设计的是全联通通信拓扑——任何Agent都可以直接给任何其他Agent发消息。这在节点数少时效率很高,但9个节点的全联通意味着36条潜在通信链路,任何一条链路的消息延迟或错误,都可能触发链式反应

更关键的问题是,Agent之间的消息没有优先级分层——用户指令和内部握手确认混在同一个队列里排队。这就是后来消息风暴事件的底层结构

2.2 角色边界虚假清晰
表面上看,9个Agent各有分工。但实际上,数据清洗Agent和逻辑推理Agent的职责边界在很多任务中是重叠的——谁该先处理输入?谁该做最终输出校验?当边界模糊时,Agent会重复执行同一子任务,或者互相等待对方先行动

这种“隐性内耗”在单次任务中不明显,但日均几十次任务累积下来,Token浪费非常可观

2.3 共享记忆无隔离机制

9个Agent共享一个全局记忆库。这个设计的原始需求是“提高信息透明度”——让每个Agent都能参考全局上下文做决策。但代价是:任何一个Agent的认知污染都会被写入记忆库,然后被所有后续Agent无差别读取

典型案例:逻辑推理Agent在一步推论中用了错误的假设,这个假设被写进记忆库,合规审查Agent基于这个错误假设做了合规判断,最终整个输出链路全部偏离

3316564c833a008844a86c42585a37f2.jpg

三、解决方案:砍节点+改架构,两个动作同时做

确认根因之后,做了两个决定。

3.1 决定一:砍节点,从9个压缩到5个

用PVP存证审计的视角重新审视所有Agent的职能边界,发现很多“分家”设计制造了不必要的通信链路和职责重叠

之前按照功能细分拆出的9个节点,实际上存在大量“隐性内耗”:战略Agent定完目标,还要向标准Agent“宣讲”规则;审计Agent审完风险,还要推给核查Agent“复检”事实;执行Agent干活时,人资Agent和应急Agent在旁边反复插手

这些环节不是增值,是流程债务

32a40bbb14d0e15f90e19c1c0929fad2.jpg

最终通过逻辑聚合,将原有分散的职能深度合并为5个核心Agent,每个Agent承载一个不可分割的完整闭环:

  1. SDC(决策与标准):原SDC + SOD合并。大脑与宪法合一,把“战略决策”和“流程标准制定”合进同一个Agent,由SDC直接固化流程标准。战略与规范不再分家,彻底消除“规则宣讲”的冗余环节

  2. CAD(审议与合规):原CAD + IAS合并。盾牌与审计合一,把“风险审议”和“事实核查”合并为单一的“风控闸门”,执行“交付即审计”的一站式服务。审议(风险)与核查(事实)不再分家,避免同一批数据被两个Agent反复过手

  3. EMD(统筹与执行):原EMD + HRD + RRA合并。将军与攻坚合一,把统筹、人资、应急响应三合一,执行层只有一个核心负责人。杜绝“执行链条”过长导致的路径漂移,也消除了人资Agent和应急Agent对执行过程的无效干扰

  4. RDD(资源与情报):保留独立职能。哨兵与资源,作为独立的信息探测器,专门负责数据探测和资源调度,确保数据主权的客观性,不被决策层或执行层干扰

  5. EOD(落地与优化):保留独立职能。工匠与优化,专注技术落位、工具优化与最终成果的“资本化”,确保交付质量。这是集群的“手”,必须独立,不能被统筹逻辑污染

c35447bc5b8dced9e550373011e97182.jpg

为什么是5个?

在测试环境中分别跑了4节点、5节点、6节点三个版本,对比了Token消耗、端到端延迟和任务准确率

5节点在所有维度上都最优,4节点任务覆盖不全,需要人工补位(特别是RDD和EOD合并会导致“既当哨兵又当工匠”,数据客观性被交付压力污染);6节点开始出现通信边际成本回升,重新逼近9节点的脆弱性

所以5个是当时场景下的最优收敛点,也是PVP存证审计后“职责闭环”的最小完备集

3.2 决定二:改架构,从“指令分发”升级为“意图委派”

精简节点只是第一步。如果协作方式不变,5个节点依然会产生不必要的通信开销。

在原来的9节点架构中,采用的是“指令分发”模式。编排调度Agent给子节点的指令长这样:

指令分发Prompt示例(优化前):

你现在需要完成一份供应商评估报告
步骤1:从数据库中提取近6个月所有供应商的交货记录
步骤2:按到货准时率从高到低排序
步骤3:筛选出准时率低于90%的供应商
步骤4:逐一核查这些供应商的延迟原因,区分是物流问题还是产能问题
步骤5:生成一份评估报告,包含供应商名称、准时率、延迟原因分类、改进建议
报告格式使用标准模板A
完成后把报告全文发给我,我审核通过后再进行下一步

这个Prompt定义了每一步的执行顺序、具体操作方法和输出格式。子节点不需要思考“为什么要这么做”,只需要逐条执行。好处是可控性高,坏处是:编排调度Agent成为全局唯一的决策瓶颈,任何一步的微调都需要重新下发指令,而且,子节点在每一步执行完都必须把完整的中间结果发回给编排调度Agent审核,这就是Token消耗的大头

在精简后的5节点架构中,把这个模式改成了“意图委派”。同样的任务,编排调度Agent给子节点的指令变成了这样:

意图委派Prompt示例(优化后):

任务目标:生成一份供应商风险评估报告
验收标准:
①覆盖近6个月所有合作供应商的交货数据
②识别出准时率低于90%的高风险供应商
③对每个高风险供应商给出风险归因(物流/产能/其他)和初步改进建议
边界约束:
①报告格式自选,但必须包含供应商名称、准时率、风险归因三项信息
②不得直接修改数据库中的供应商评级
③如果某供应商近3个月无任何交货记录,标注“数据不足”并排除出评估范围
请在完成后提交报告摘要和关键风险发现,中间过程自行规划

对比两个Prompt,核心差异不在字数,而在权力下放的程度

9355d958fc2eb961ea02c88136d8745a.jpg
第一个Prompt把“怎么干”规定到了每一步的操作细节;
第二个Prompt只定义“干到什么标准算合格”和“什么绝对不能干”,至于怎么提取数据、怎么排序、怎么核查延迟原因、用什么报告格式,全部交给子节点自己决定

这一个转变带来的效果比砍节点本身更显著。Token消耗降低约40%,因为子节点之间不再传输海量的中间推理步骤,只传输结构化的里程碑状态。逻辑漂移明显减少,因为每个Agent不再受其他Agent中间步骤的干扰,只在自己的上下文空间内做专注推理

四、配套机制:内存分区,为每个Agent建立故障隔离舱

精简节点和改架构之后,还有一个没有直接触及的隐患:即使只有5个Agent,如果它们依然共享全局记忆库,认知污染的风险依然存在。

为此引入了内存分区机制。具体设计如下:

  1. 私有记忆库:每个Agent建立独立的私有记忆库,执行过程中的中间变量、临时状态、推理草稿一律写入私有库,不对外暴露

  2. 共享状态板:只在关键里程碑,由Agent主动向共享状态板写入结构化状态快照(一行JSON,包含任务ID、当前阶段、输出摘要)。其他Agent可以读取状态板来感知全局进度,但读取不到其他Agent的中间推理过程

  3. 权限隔离:合规审查Agent拥有只读权限,可以检查任何Agent的最终输出,但它自己的中间审查过程也写入私有库,不暴露给执行Agent

a0a0d2d534f305c52176f92d8cfe093a.jpg

这套内存分区机制,使得当一个Agent产生幻觉或进入错误分支时,它的“认知污染”被严格限制在自己的私有空间内,不会通过共享记忆去带偏其他节点。不是保证不出错,而是保证出了错不传染

五、可复用资产:多Agent系统精简自查清单

基于这次从9砍5的完整经验,提炼了一张架构精简自查清单。每次搭建或调整多Agent系统时,可以逐项核对:

检查维度 自检问题 整改方向
节点必要性 每个Agent是否都有不同于其他Agent的schema、工具集或治理规则?如果只是因为提示词不同,是否可以合并? 合并提示词差异型Agent
通信拓扑 当前通信拓扑是全联通还是有限联通?是否存在不合理的网状依赖? 限制不必要的跨Agent通信链路
职责边界 每个Agent的输入-输出是否明确且不与其他Agent重叠?是否有多个Agent在未协调的情况下处理同一类子任务? 明确各Agent的能力边界,消除隐性职责重叠
消息优先级 用户消息是否拥有最高优先级?Agent内部通信是否有可能堵塞用户指令? 设置用户消息优先通道
记忆隔离 Agent之间是否存在共享记忆库?如果有,是否设置了写权限隔离和故障隔离机制? 引入私有记忆库和共享状态板隔离
容灾回退 单个Agent故障时,系统能否降级运行?是否能回退到单Agent模式? 设计单Agent独立运行和测试能力

使用说明:搭建完成后逐项检查
优先级:消息优先级和记忆隔离为P0(直接影响系统可靠性),节点必要性和职责边界为P1(影响运行效率),通信拓扑和容灾回退为P2(影响长期可维护性)

六、一个更深刻的设计原则:好的系统靠边界,不靠连接

这次精简留下的,不只是5个节点的具体配置方案,而是一个更底层的设计原则

9个节点到5个节点,减少的不仅是Agent数量,更是系统内部的交互边界、状态同步开销和故障传播路径。每一次精简,都是在用更清晰的边界,替代更密集的连接

这个原则后来贯穿了所有Agent集群的设计。无论是供应链C2M场景中的Agent角色划分,还是猪周期智能推演系统中的Agent集群设计,第一反应都不是“多加几个Agent”,而是“最少需要几个Agent才能完成这个认知链条”

这不是保守,是工程经济学。每多加一个Agent,加的不仅是一次模型调用的费用,还有一个新的故障点、一条新的通信链路、一个需要监控和维护的新组件。在资源有限的前提下,做减法比做加法更需要勇气,但也更能出效果

结语

多Agent系统的核心挑战,不是怎么把更多Agent塞进一个集群里,而是怎么让每一个Agent都待在它不可替代的位置上

如果在搭多Agent系统,或者正在考虑从单Agent拆成多Agent,建议先问一个问题:当前系统的每个Agent,都有自己的不可替代性吗?如果答案是否定的,不妨试试减法

关于什么时候该拆、什么时候不该拆的系统性决策框架,详见文章《多Agent一定比单Agent更强吗?拆分的5个核心信号与评测框架》。两篇配合阅读,构成一套完整的架构决策体系


【看山 Agent 架构】

工信部 AI 技术应用(高级)认证

30次集群崩溃复盘 | 20+智能体实战

深耕 Agent 集群架构,用商科思维重构复杂系统效率

注:本文内容由 AI 辅助创作,作者对内容结果负责

相关文章
|
8天前
|
人工智能 开发工具 iOS开发
Claude Code 新手完全上手指南:安装、国产模型配置与常用命令全解
Claude Code 是一款运行在终端环境中的 AI 编程助手,能够直接在命令行中完成代码生成、项目分析、文件修改、命令执行、Git 管理等开发全流程工作。它最大的特点是**任务驱动、终端原生、轻量高效、多模型兼容**,无需图形界面、不依赖 IDE 插件,能够深度融入开发者日常工作流。
3063 7
|
11天前
|
Shell API 开发工具
Claude Code 快速上手指南(新手友好版)
AI编程工具卷疯啦!Claude Code凭借任务驱动+终端原生的特性,成了开发者的效率搭子。本文从安装、登录、切换国产模型到常用命令,手把手带新手快速上手,全程避坑,30分钟独立用起来。
3147 20
|
5天前
|
人工智能 Linux BI
国内用 Claude Code 终于不用翻墙了:一行命令搞定,自动接 DeepSeek
JeecgBoot AI专题研究 一键脚本:Claude Code + JeecgBoot Skills + DeepSeek 全平台接入 一行命令装好 Claude Code + JeecgBoot Skills + DeepSeek 接入,无需翻墙使用 Claude Code,支持 Wind
2045 3
国内用 Claude Code 终于不用翻墙了:一行命令搞定,自动接 DeepSeek
|
24天前
|
人工智能 JSON 供应链
畅用7个月无影 JVS Claw |手把手教你把JVS改造成「科研与产业地理情报可视化大师」
LucianaiB分享零成本畅用JVS Claw教程(学生认证享7个月使用权),并开源GeoMind项目——将JVS改造为科研与产业地理情报可视化AI助手,支持飞书文档解析、地理编码与腾讯地图可视化,助力产业关系图谱构建。
23578 15
畅用7个月无影 JVS Claw |手把手教你把JVS改造成「科研与产业地理情报可视化大师」
|
1天前
|
人工智能 自然语言处理 文字识别
阿里云百炼Qwen3.7-Max简介:能力、优势、支持订阅计划参考
Qwen3.7-Max是阿里云百炼面向智能体时代推出的新一代旗舰模型,对标GPT-5.5、Claude Opus 4.7等闭源旗舰。该模型支持百万级token上下文窗口,具备顶级推理能力、多模态搜索与视觉理解增强、流式输出低延迟响应等核心优势,覆盖编程、办公、长周期自主执行等复杂场景。同时支持OpenAI接口兼容,便于系统快速迁移。用户可通过Token Plan团队版、Coding Plan或节省计划等订阅方式灵活调用,适合企业级高要求场景使用。
|
11天前
|
人工智能 JSON BI
DeepSeek V4-Pro 接入 Claude Code 完全实战:体验、测试与关键避坑指南
Claude Code 作为当前主流的 AI 编程辅助工具,凭借强大的代码理解、工程执行与自动化能力深受开发者喜爱,但原生模型的使用成本相对较高。为了在保持能力的同时进一步降低开销,不少开发者开始寻找兼容度高、价格更友好的替代模型。DeepSeek V4 系列的发布带来了新的选择,该系列包含 V4-Pro 与 V4-Flash 两款模型,并提供了与 Anthropic 完全兼容的 API 接口,理论上只需简单修改配置,即可让 Claude Code 无缝切换为 DeepSeek 引擎。
2556 3
|
2天前
|
人工智能 自然语言处理 安全
Claude Code 全攻略:命令大全+三种模式+记忆体系+实战工作流完整手册
Claude Code 是当前最流行的终端级 AI 编程助手,能够直接在命令行中完成代码生成、项目理解、文件修改、命令执行、错误修复等全流程开发工作。它不依赖图形界面、不占用额外资源,却能深度理解项目结构,自动生成规范代码,大幅提升研发效率。
700 2
|
9天前
|
人工智能 安全 开发工具
Claude Code 官方工作原理与使用指南
Claude Code 不是传统代码补全工具,而是 Anthropic 推出的终端 AI 代理,具备代理循环、双驱动架构(模型+工具)、全局项目感知、6 种权限模式等核心能力,本文基于官方文档系统解析其工作原理与高效使用技巧。
1404 0