Multi-Agent Debate and Collaboration
Du et al. (ICML 2024, "Society of Minds") run N model instances that propose answers independently, then critique each other over R rounds, converging on an answer. It improves factuality, rule-following, and reasoning. A sparse topology beats a full mesh on token cost.
Learning Objectives
- Explain the debate protocol: N proposers, R rounds, converge on a shared answer.
- Describe why debate improves factuality, rule-following, and reasoning.
- Explain sparse topology: not every debater needs to see every other.
- Implement a stdlib debate over a scripted LLM with full-mesh and sparse variants; measure token cost vs accuracy.
The Problem
Self-Refine (Lesson 05) has one model critique itself, which risks groupthink: the critic shares every blind spot of the author. CRITIC (Lesson 05) fixes that by grounding the critique in external tools, but you don't always have a tool that can check the answer. Debate is the third option. Several instances answer independently, critique each other, and settle by working through their disagreements.
The Concept
Multi-agent debate is a protocol where N model instances each propose an answer to the same question, then spend R rounds reading and critiquing one another's answers before returning a shared one. The disagreement between instances is the signal. Where they agree, you gain confidence. Where they split, the critique rounds force someone to defend or drop a claim.
Society of Minds (Du et al., ICML 2024)
- N model instances independently propose answers to the same question.
- Over R rounds, each model reads the others' proposals and critiques them.
- Models update their answers based on the critiques.
- After R rounds, return the convergent answer.
The original experiments used N=3, R=2 because of cost. On hard problems (MMLU, GSM8K, Chess Move Validity, biography generation), accuracy keeps improving as you add agents and rounds.
Mixing models helps too. Cross-model combinations beat single-model debates: in the paper's setup, ChatGPT + Bard together outperformed either one alone.
Sparse topology
"Improving Multi-Agent Debate with Sparse Communication Topology" (arXiv:2406.11776, 2024-2025) showed that full-mesh debate is not always the best layout. Sparse topologies (star, ring, hub-and-spoke) can match its accuracy at lower token cost, because each debater sees only a subset of its peers.
The savings are easy to count:
- Full mesh, N=5, R=3: 5 × 3 = 15 proposals, each reading 4 peers, which is 60 critique ops.
- Star, N=5, R=3 (one hub + 4 spokes): the same 15 proposals, but spokes read only the hub, which is 12 critique ops.
When debate helps
- Factuality. N independent proposals cross-check each other, which reduces hallucination.
- Rule-following. In chess move validity, one model misses a rule and the others catch it.
- Open-ended reasoning. Several framings of the problem narrow in on the right answer.
When debate hurts
- Latency-sensitive UX. N × R serial rounds is latency you may not have.
- Cost-sensitive scale. You pay N × R tokens for every question.
- Simple factual lookups. One lookup is cheaper than five debates.
2026 practical instantiations
- Anthropic orchestrator-workers (Lesson 12) is one variant of debate, with a synthesis step at the end.
- LangGraph supervisor (Lesson 13): a central router plus specialist agents can implement debate as a node.
- OpenAI Agents SDK (Lesson 16): agents hand off back and forth for iterative critique.
- Multi-agent evals: pair debate with an evaluator-optimizer to get an eval signal.
Where this pattern goes wrong
- Convergence collapse. All agents converge on the first wrong answer. Mitigate with required disagreement rounds.
- Hub failure. In a star topology, a bad hub corrupts everyone who reads it. Rotate the hub or use multiple hubs.
- Prompt homogenization. If every agent gets the same prompt, they produce the same answers and there is nothing to critique. Use diverse prompts, diverse models, or both.
Build It
code/main.py implements a stdlib debate:
Debaterclass: a scripted LLM with per-debater opinion drift.FullMeshDebateandSparseDebaterunners.- Three questions: one factual, one rule-based, one reasoning.
- Metrics: convergent answer, rounds to convergence, total critique ops.
Run it:
python3 code/main.py
The output gives per-protocol accuracy and cost. Sparse matches full mesh on 2/3 questions at lower cost.
Use It
- Anthropic orchestrator-workers fit simple debates with 2-3 workers.
- LangGraph fits stateful multi-round debate with checkpointing.
- Custom code fits research or specialized correctness guarantees.
Ship It
outputs/skill-debate.md scaffolds a multi-agent debate with configurable topology, N, R, and a convergence rule.
I'd reach for a sparse star topology before cutting N or R. The star keeps all 15 proposals at N=5, R=3 and drops critique ops from 60 to 12, so it cuts the cost sharply without shrinking the pool of proposals. The price is the hub, which every spoke reads, so I'd want to rotate it or run more than one. I'd also check that the debaters can actually disagree before paying N × R at all. With one shared prompt they hand back the same answer five times, and no topology fixes that. Vary the prompts or the models first, then tune the layout.
Exercises
- Implement a "forced disagreement" rule: in round 1, every debater must produce a distinct proposal. Measure effect on convergence speed.
- Add a confidence-weighted aggregation: debaters return (answer, confidence); aggregator weights by confidence. Does it help?
- Swap one "agent" for a different scripted LLM with different opinions. Does heterogeneity improve accuracy?
- Measure token cost for full mesh vs sparse on your 3 questions. Plot cost vs accuracy.
- Read the Society of Minds paper. Port your toy to N=5, R=3. What breaks? What gets better?
Key Terms
| Term | What people say | What it actually means |
|---|---|---|
| Debate | "Multi-agent critique" | N proposers, R rounds of cross-critique, converge |
| Full mesh | "Everyone reads everyone" | Every debater reads every peer each round |
| Sparse topology | "Limited peer view" | Debaters read only a subset of peers |
| Hub-and-spoke | "Star topology" | One central debater, N-1 spokes read only the hub |
| Convergence | "Agreement" | Debaters converge on a shared answer |
| Society of Minds | "Du et al. debate paper" | ICML 2024 multi-agent debate method |
Further Reading
- Du et al., Society of Minds (arXiv:2305.14325): canonical multi-agent debate
- Sparse Communication Topology (arXiv:2406.11776): sparse topology results
- Anthropic, Building Effective Agents: orchestrator-workers as a debate variant
- Madaan et al., Self-Refine (arXiv:2303.17651): single-model self-critique counterpart
Code
- main.py (python, 132 lines)