The Debate pattern uses adversarial argumentation to reduce single-model bias. Two advocates — one arguing FOR, one arguing AGAINST — take turns making their case and responding to the opponent's arguments. By forcing the model to steelman both positions, the debate surfaces trade-offs that a single-chain answer might elide.
After `MAX_ROUNDS = 2` of debate (opening + one rebuttal each), a third judge LLM reads the full transcript and delivers a reasoned verdict. The judge has not participated in the debate and can evaluate the arguments objectively, selecting the strongest position based on evidence rather than rhetorical style.
Debate is particularly effective for questions with genuine trade-offs: "Should we use microservices or a monolith?", "Is this regulation net-positive?", "Which model architecture is better for this use case?" It makes the reasoning process transparent and auditable.