Several models answer on their own, can critique each other's answers and are judged. The disagreement is the output.
Quorum puts one question to several models. Each answers on its own. When the Mode's critique policy calls for it (never, only on harder questions, or always), they read each other's answers and challenge them. A judge scores the pass. What comes back is where the models agree and where they split.
The split is the output. Independent answers give you a second opinion.
Classification. Before anything is spent, the question is scored for difficulty, depth and task type (general, coding, analysis, creative, explanation, strategy, math). estimate returns the same result for free.
Seat. One model, answering independently. The Mode sets how many seats a panel has. Each seat answers without seeing the others, and the receipt shows which engine sat where. A maker can turn on family diversity for a Mode, which keeps Auto seats from sharing a model maker.
Critique. A seat reading the other seats' answers and arguing with them.
Round. One pass in which the seats answer. The judge reading that pass is part of the round.
Judge. A separate model that scores the seats against each other, picks the best seat and gives the pass a divergence score. The Mode's thresholds, applied to that score, decide whether another round runs.
Convergence. Whether the seats ended up agreeing. The API response carries it. quorum.converged is set on every response that is not a replay. It is null when no judge read the round, as on the express lane. A false value tells you the question is contested.
Synthesis. The polish step that writes one answer from what the panel produced. It follows the rounds and is a step of its own. It does not always run.
A Mode can turn on the express lane. On an easy question, one seat answers, with no judge and no synthesis, which lowers both cost and wait. A Mode can also be set to always polish, and on a factual conflict or a grounded factual question synthesis runs even when the judge has picked a single seat. The tier you pick and the Mode you call decide when the panel convenes. In Chat, choosing Foundation or Frontier convenes the panel for that question.
Convene a panel for judgement calls: a consequential assumption, options close enough that the numbers no longer separate them, a diagnosis you cannot check, a decision you will have to defend, or a "what have I missed" check. Use a single model for lookups, syntax, formatting, conversions, arithmetic and anything you need reproduced word for word.
Over MCP the loop is estimate, deliberate, get_receipt, act.
A single model answers once and reports its own confidence. A panel adds a check: when the seats converge, the answer came out of independent attempts. When they diverge, the response shows where.
A reasoning model thinks longer. It spends more compute on a problem, step by step, and catches its own slips: a dropped constraint, an arithmetic error, a step that does not follow. More thinking from the same model gives a more thorough version of the same point of view.
Deliberation adds a second point of view. The seats answer independently, challenge each other where the Mode runs critique, and the receipt shows which engine sat in each. A disagreement between them tells you where the question is open.
Use a reasoning model when the answer is hard to compute: a proof, a tricky refactor, a constraint problem with one right answer. Use deliberation when the answer is hard to be sure about: judgement calls, trade-offs, ambiguous requirements, anything where being confidently wrong is expensive.
The two combine. A reasoning model in a Quorum seat runs at the Mode's thinking level, with token limits set by the Mode. Where the Mode runs critique, it then defends its conclusion to the other seats, which worked the problem on their own.
quorum.converged is set on every response that is not a replay. It is null when no judge read the round, as on the express lane.quorum.deliberation lists one entry per round the judge read.get_receipt or from the answer.