Reflection & self-critique
The model critiques its output or trajectory and revises it; it helps when the critique uses an external signal (tests, validators), not self-review alone.
Reflection means having an AI model look back at what it produced, find mistakes, and try again. A coding agent writes a function, runs the tests, sees two fail, and fixes them.
It works far better when the review has something real to check against — a test result, an error message, a Rubric — than when the model simply rereads its own answer and asks itself whether it's right. In Anthropic's agent patterns this is the evaluator-optimizer loop.
Proofreading your own essay helps a little; a spell-checker and a friend's red pen help a lot more.
Adding "review your answer" and assuming quality rose. Without an external signal it mostly doubles cost and can talk the model out of correct answers.
Forms: Self-Refine (Madaan et al., 2023): the same model generates, critiques and revises — about 20% absolute average gain across 7 tasks, mostly on open-ended writing. Reflexion (Shinn et al., 2023): verbal lessons from failed attempts are stored as Agent memory for the next try; with unit-test feedback it reached 91% pass@1 on HumanEval vs 80% for GPT-4. Evaluator-optimizer (Anthropic, Dec 2024): a separate evaluator scores against explicit criteria and the generator revises until pass.
The counter-evidence matters: Huang et al. (2023) found that intrinsic self-correction — no external feedback — does not reliably improve reasoning and sometimes flips correct answers to wrong. Gains come from signal: compiler and test output, schema validators, retrieval checks for Grounding & groundedness checks, or a calibrated LLM-as-judge. Each round costs a full generate + critique pass, so cap rounds at 2–3 and exit as soon as the checker passes.
Evaluator-optimizer with a deterministic checker first (tests, JSON Schema, regex policy), then an LLM-as-judge with a written rubric only for what code can't check. Max 2 revision rounds, exit on pass, log which check failed each round.
Clinical-intake summariser: the evaluator checks each summary against 6 rubric items (allergies, current meds, chief complaint…). Round 1 misses allergies on 9% of notes; the evaluator returns "allergy list absent; source line 14 mentions penicillin"; round 2 fixes 8 of 9 points. A plain "double-check your summary" prompt on the same set changed the miss rate by under 1 point.
Recommend reflection only where you have a checker: tests for code, a schema for extraction, a rubric-calibrated judge for prose. Say the cap and exit rule out loud: "two rounds, stop on pass."
The expected follow-up: "why not just ask it to check its work?" — cite intrinsic self-correction results and say what external signal you'd add instead.
Numbers worth knowing
- Self-Refine average gain
- ~20% absolute7 tasks, GPT-3.5/4, Madaan et al. 2023
- Reflexion on HumanEval
- 91% pass@1 vs 80%with test feedback, Shinn et al. 2023
- Intrinsic self-correction on reasoning
- no reliable gain; sometimes worseno external feedback, Huang et al. 2023
How to decide
| When | Do this |
|---|---|
| A deterministic checker exists (tests, schema, linter) | Loop generate → check → revise, max 2–3 rounds. |
| Only subjective quality matters and no rubric exists | Write the rubric first; skip reflection until a judge is calibrated. |
| The task is a reasoning answer with no verifier | Prefer sampling several answers and voting over self-critique. |
Cost maths
Cost ≈ (1 + r) × generation + r × critique, r = rounds actually run. Example at $3 / $15 per M (illustrative, Oct 2026): generation 4k in / 800 out = $0.024; critique 5k in / 300 out = $0.0195. Average r = 0.4 with exit-on-pass → $0.024 + 0.4 × (0.024 + 0.0195) ≈ $0.041 per item; a fixed 3 rounds would be ≈ $0.155.
Operating it
- Average rounds per item > 1.5 (generator or prompt needs fixing, not more rounds)
- Evaluator and human disagree on >10% of sampled items
- Rounds per item p50/p95 (alert when p95 > 2)
- Pass rate after round 0 vs final (alert if the gap shrinks below 1 point — the loop isn't earning its cost)
- Answers changed from correct to incorrect on the golden set (alert on any increase)
When it goes wrong
A financial-filings Q&A assistant's accuracy dropped 4 points after a "verify your answer" step was added.
Weekly golden-set eval; diffs showed correct numeric answers changed to wrong ones in round 2.
Intrinsic self-critique with no external signal; the model second-guessed correct figures it couldn't re-verify.
Replaced self-critique with a check that recomputes each figure from the cited table cell; revisions happen only on mismatch.
Sources
- Self-Refine: Iterative Refinement with Self-Feedback — Madaan et al., 2023paper
- Reflexion: Language Agents with Verbal Reinforcement Learning — Shinn et al., 2023paper
- Large Language Models Cannot Self-Correct Reasoning Yet — Huang et al., 2023paper
- Building effective agents — Anthropic (Schluntz & Zhang), 2024blog
Check yourself
Three questions. Every option is explained once you answer.