Cut the Crap: An Economical Communication Pipeline for LLM-based Multi-Agent Systems
Guibin Zhang, Yanwei Yue, Zhixun Li, Sukwon Yun, Guancheng Wan, Kun Wang, Dawei Cheng, Jeffrey Xu Yu, Tianlong Chen
cs.MA, cs.LG
2024-10-03
把多 agent 系统建模成时空通信图,一次性剪掉冗余边,在六个 benchmark 上性能不掉、token 省 28% 到 73%,还顺带扛住对抗攻击。
把多个 LLM agent 拼成一个团队(比如 GPTSwarm、DyLAN、AutoGen、LLM-Debate)通常比单个 agent 强,但代价是 token 消耗暴涨。agent 之间互相发消息、把历史对话一轮轮带下去,推理一次的成本可能比单 agent 高好几倍。团队越大、轮次越多,这笔账越吓人,直接挡住了大规模部署。
作者先做了一个很朴素的实验:在 MMLU 上随机删掉 10% 到 30% 的 agent 间通信连接,准确率不降反升,最高涨 2.83%。这说明现有 pipeline 里相当一部分消息根本没在帮任务,只是噪声。他们把这正式定义成 communication redundancy(通信冗余):一定存在一个稀疏子图 Gsub,性能不低于原图。
AgentPrune 把整个多 agent 系统看成一个「时空通信图」G = {GS, GT}。空间图 GS 描述一轮对话内谁向谁发消息,时间图 GT 描述历史对话在轮与轮之间怎么传递。要做的事就是找到一个稀疏但同样好用的子图。
核心是给每条边学一个可微的连续掩码 SS、ST,然后用两步把它压成稀疏:
整套东西是即插即用的,直接嵌进现有的多 agent 框架。
六个 benchmark,五个 gpt-4 agent。
| 设置 | 对比 | 结果 |
| MMLU 成本 | AgentPrune vs SOTA 拓扑 | $5.6 vs $43.7,性能相当 |
| token 削减 | 嵌入主流框架 | 28.1% 到 72.8% 下降 |
| HumanEval / GSM8K | AgentPrune-R | 90.3% / 95.8% |
| GSM8K+GPTSwarm | 加 AgentPrune | prompt token 削 60.6%,省 $177.58,性能 +0.84% |
对抗鲁棒性是额外收获。面对两类攻击(改 agent 角色 prompt、替换生成过程),完整图从 83.1% 升到 84.7%,受攻击时从 78.4% 升到 83.9%,给 DyLAN 和 AutoGen 的鲁棒性最多加 6.3 个点。
多 agent 的成本一直是劝退因素。AgentPrune 给了一条不改架构、不重训、直接外挂就能省钱的路子,顺手还治了对恶意 agent 的脆弱。对要上生产的团队,这种「即插即用 + 不掉点 + 更扛打」的组合很实在。代价是要先花 K' 轮去优化掩码,所以更适合查询量大、值得一次性优化的场景。
掩码优化靠 policy gradient,方差偏高,效果对 K' 和剪枝比例 p% 敏感,需要调参。低秩约束送鲁棒性是经验结论,为什么多 agent 的冗余恰好落在低秩子空间里,论文没给硬证明。对 GPTSwarm 这种本身已经有点防御能力的框架,效果偏弱,MMLU 上甚至掉了 0.93 个点。所有实验基于 gpt-4,换到别的模型族、别的拓扑是否还成立,有待验证。