Expand description
§Multi-Agent Debate Architecture
Implements adversarial debate between multiple agents for improved factuality. Based on ICML 2024 research showing +20% factuality improvement.
§Scientific Foundation
- Du et al. (ICML 2024): “Improving Factuality and Reasoning through Self-Debate”
- Irving et al. (2018): “AI Safety via Debate”
§Core Concept
┌─────────────────────────────────────────────────────────────────────┐
│ MULTI-AGENT DEBATE │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ ADVOCATE ◄─────────────────────────► CRITIC │
│ (Pro position) Rounds (Con position) │
│ │ │ │
│ └───────────┬───────────────────┘ │
│ ▼ │
│ SYNTHESIZER │
│ (Weighs arguments, final verdict) │
│ │ │
│ ▼ │
│ FINAL OUTPUT │
│ (Balanced, fact-checked conclusion) │
│ │
└─────────────────────────────────────────────────────────────────────┘§Usage
ⓘ
use reasonkit::thinktool::debate::{DebateArena, AgentRole, DebateConfig};
let arena = DebateArena::new(DebateConfig {
rounds: 3,
..Default::default()
});
let result = arena.debate("Is nuclear power safe?").await?;
println!("Verdict: {:?}", result.verdict);Structs§
- Argument
- A single argument in the debate
- Claim
- Debate
Arena - The debate arena where agents debate
- Debate
Config - Configuration for the debate
- Debate
Prompts - Prompt templates for debate agents
- Debate
Result - Complete result of a debate
- Debate
Stats - Debate
Verdict - Final verdict from the debate
- Evidence
- Rebuttal
Enums§
- Agent
Role - Role of an agent in the debate
- Verdict
Type