前置知识: AI Agent

多Agent辩论与协作

8 minIntermediate

Du等人(ICML 2024,"Society of Minds")运行N个模型实例独立提出答案,然后在R轮中迭代批评彼此以收敛。改善事实性、规则遵循、推理。稀疏拓扑在token成本上击败全网格。

多Agent辩论与协作

Du等人(ICML 2024,“Society of Minds”)运行N个模型实例独立提出答案,然后在R轮中迭代批评彼此以收敛。改善事实性、规则遵循、推理。稀疏拓扑在token成本上击败全网格。

类型: 学习 + 构建 语言: Python (stdlib) 前置条件: Phase 14 · 12 (工作流模式), Phase 14 · 05 (自精炼与CRITIC) 时间: ~60分钟

学习目标

  • 解释辩论协议:N个提议者,R轮,收敛到共享答案。
  • 描述为什么辩论改善事实性、规则遵循和推理。
  • 解释稀疏拓扑:不是每个辩论者都需要看到每个其他辩论者。
  • 实现一个带全网格和稀疏变体的stdlib辩论;测量token成本 vs 准确率。

问题所在

Self-Refine(第05课)是一个模型批评自己——有群体思维风险。CRITIC(第05课)将批评接地到外部工具——不总是可用。辩论引入第三种模式:多个实例,交叉批评,通过分歧收敛。

核心概念

Society of Minds(Du等人,ICML 2024)

  • N个模型实例独立提出同一问题的答案。
  • 在R轮中,每个模型阅读其他模型的提案并批评它们。
  • 模型根据批评更新答案。
  • R轮后,返回收敛答案。

原始实验由于成本使用N=3,R=2。在难题上(MMLU、GSM8K、国际象棋走法有效性、传记生成),准确率随更多Agent和更多轮次提升。

跨模型组合击败单模型辩论:ChatGPT + Bard一起 > 单独任何一个。

稀疏拓扑

“Improving Multi-Agent Debate with Sparse Communication Topology”(arXiv:2406.11776,2024-2025)表明全网格辩论并非总是最优。稀疏拓扑(星形、环形、中心辐射)可以在更低token成本下匹配准确率。每个辩论者只看到同行的子集。

影响:

  • 全网格N=5,R=3 = 5 × 3 = 15个提案,每个阅读4个同行 = 60个批评操作。
  • 星形N=5,R=3(一个中心 + 4个辐射)= 15个提案,辐射只读中心 = 12个批评操作。

辩论何时有帮助

  • 事实性。 N个独立提案,交叉检查减少幻觉。
  • 规则遵循。 国际象棋走法有效性 — 一个模型遗漏规则,其他捕获。
  • 开放式推理。 多种构架收敛到正确答案。

辩论何时有害

  • 延迟敏感的UX。 N × R串行轮次是你可能没有的延迟。
  • 成本敏感的规模。 每个问题N × R token。
  • 简单事实查找。 一次查找比五次辩论更便宜。

2026年实践实例

  • Anthropic编排器-工作者(第12课)— 带综合步骤的辩论变体。
  • LangGraph监督者(第13课)— 中心路由器 + 专家Agent可以将辩论实现为节点。
  • OpenAI Agents SDK(第16课)— Agent来回交接进行迭代批评。
  • 多Agent评估 — 配对辩论 + 评估器-优化器用于评估信号。

这个模式哪里会出错

  • 收敛崩溃。 所有Agent收敛到第一个错误答案。用强制分歧轮次缓解。
  • 中心失败。 在星形拓扑中,坏中心污染所有人。轮换或使用多个中心。
  • 提示同质化。 所有Agent使用相同提示;产生相同答案。使用多样化提示和/或模型。

构建它

code/main.py实现stdlib辩论:

  • Debater(带每辩论者意见漂移的脚本LLM)。
  • FullMeshDebateSparseDebate运行器。
  • 三个问题:一个事实性,一个基于规则,一个推理。
  • 指标:收敛答案,收敛轮次,总批评操作。

运行:

python3 code/main.py

输出:每协议准确率和成本;稀疏在2/3问题上以更低成本匹配全网格。

使用它

  • Anthropic编排器-工作者用于简单2-3工作者辩论。
  • LangGraph用于带检查点的有状态多轮辩论。
  • 自定义用于研究或专门正确性保证。

发布它

outputs/skill-debate.md脚手架一个带可配置拓扑、N、R和收敛规则的多Agent辩论。

练习

  1. 实现”强制分歧”规则:在第1轮,每个辩论者必须产生不同的提案。测量对收敛速度的影响。
  2. 添加置信度加权聚合:辩论者返回(answer, confidence);聚合器按置信度加权。有帮助吗?
  3. 将一个”Agent”替换为有不同意见的不同脚本LLM。异质性改善准确率吗?
  4. 测量你的3个问题上全网格 vs 稀疏的token成本。绘制成本 vs 准确率。
  5. 阅读Society of Minds论文。将你的玩具移植到N=5,R=3。什么坏了?什么变好了?

关键术语

术语人们常说的实际含义
辩论”多Agent批评”N个提议者,R轮交叉批评,收敛
全网格”每个人读每个人”每个辩论者每轮阅读每个同行
稀疏拓扑”有限同行视辩论者只阅读同行子集
中心辐射”星形拓扑”一个中心辩论者,N-1辐射只读中心
收敛”一致”辩论者收敛到共享答案
Society of Minds”Du等人辩论论文”ICML 2024多Agent辩论方法

延伸阅读