Paper Breakdowns  /  Self-Consistency
Paper 34~7 min readGoogle · 2022
Paper Breakdown

Self-Consistency,
explained.

Chain-of-thought gave models the ability to reason step by step — and a new way to fail: one slip anywhere in the chain, and the answer at the end is garbage. Google's fix was almost suspiciously simple. Don't trust one chain. Sample thirty, let them disagree about the route, and vote on the destination. Wrong answers scatter; the right one keeps showing up.

Video breakdown
The animated walkthrough is in production.
Read the full breakdown below in the meantime ↓
01

One chain is a single point of failure

Chain-of-thought prompting unlocked multi-step reasoning: show the model how to work through a problem, and it works through new ones. But standard decoding generates one chain, greedily — always the locally most likely next token. A single arithmetic slip, one misread condition, and every step after inherits the error. The chain is only as strong as its weakest link, and there's exactly one chain.

Greedy decoding has a second, quieter cost: the most probable path isn't always the most correct one. The model often "knows" better routes — they're in the distribution, just not at its peak. Greedy never visits them.

02

The recipe: sample, extract, vote

Self-consistency replaces greedy decoding with three steps. Sample a set of chains — the same CoT prompt, but with temperature, so each run takes a genuinely different reasoning route. Extract each chain's final answer, ignoring how it got there. Vote: return the answer that appears most often.

Marginalize out the reasoning, keep the answer
CoT prompt
Sample N chains
temperature on
Extract answers
18, 26, 18, 18, 9…
Majority vote
→ 18

The paper frames it in one elegant phrase: the reasoning path is a latent variable. You don't care which route was taken — you marginalize the routes out and keep the answer they support. No training, no verifier, no new model. A pure decoding swap.

03

Why the vote lands on the truth

The magic is an asymmetry: correct answers are attractors; wrong answers are scattered. A math problem usually has many valid solution routes, and they all terminate at the same number. Errors, by contrast, are uncorrelated — a slip in step 2 of one chain and a misreading in step 4 of another land on different wrong answers. Agreement concentrates on truth; disagreement disperses over mistakes.

The key idea

It's a wisdom-of-crowds argument where the crowd is one model sampled many times. The vote doesn't need any path to be trustworthy — it needs errors to be uncorrelated, and diverse sampling is what buys that.

A bonus falls out for free: the size of the majority is a confidence signal. Twenty-eight of thirty chains agreeing means something very different from eleven — a calibration knob production systems still use.

04

The numbers

For a change that touches nothing but decoding, the gains were startling across every model family tested (PaLM, GPT-3, LaMDA):

BenchmarkGain over greedy CoT
GSM8K (grade-school math)+17.9 points
SVAMP (math word problems)+11.0 points
AQuA (algebraic reasoning)+12.2 points
ARC-challenge, StrategyQA…consistent gains

Accuracy climbed monotonically with the number of sampled paths — steep early gains, diminishing around 20–40 samples. That curve, accuracy as a function of inference spend, would become one of the most consequential plots in the field.

05

The cost, and where it fits

The price is explicit: N samples cost N generations. Thirty-path self-consistency is ~30× the inference bill of one greedy chain. That's why production use is selective — high-stakes answers, eval harnesses, offline pipelines — and why the sample count is a dial, not a default.

It also only works where answers are discrete and comparable: math, multiple choice, classification, code that passes tests. Open-ended generation has no clean vote — thirty essays don't have a majority. (Extensions like universal self-consistency later asked the model itself to pick the most consistent response, stretching the idea to free-form output.)

06

Why it still matters

Self-consistency was the field's cleanest early proof that inference compute is a quality dial — the same model, same weights, gets measurably smarter if you let it try more. Formalize that trade, add verifiers and search, then train models to do the exploring internally, and you arrive at reasoning models. The lineage from sample-and-vote to test-time compute is direct.

It's also still the cheapest reliability upgrade in the toolbox: no retraining, model-agnostic, one loop of code. Any eval harness that reruns a flaky benchmark, any agent that generates three candidate plans and picks the consensus — that's self-consistency, doing its quiet work in production.

Read next

Self-consistency votes over independent chains; Tree of Thoughts goes further — exploring, evaluating and abandoning reasoning branches mid-flight, turning voting into genuine search.

Frequently asked

Quick answers

What is self-consistency?

Sample many diverse chains of thought with temperature, extract each final answer, return the majority. The reasoning is marginalized out; only the answer is voted on.

Why does the vote work?

Many valid routes reach the correct answer, while uncorrelated errors scatter across different wrong ones. Agreement concentrates on truth.

How big were the gains?

+17.9 points on GSM8K, +11.0 on SVAMP, +12.2 on AQuA — from a pure decoding change, no training.

What's the catch?

N samples cost N generations, and you need discrete answers to vote on — it doesn't directly apply to open-ended writing.

Finished this one? 0 / 42 Paper Breakdowns done

Explore the topic

See this alongside everything else on the same subject — handbooks, system designs, challenges and tools, in one place.

More Paper Breakdowns