Zenaique

Flashcard: how is self-correction different from self-refine in agents?

Flashcard·Easy·4.0 · 0·~30s·Asked atArize AiBaiduCanva·Relevant atAnthropic
Attempt it
TL;DR

Self-correction is an agent revising course mid-run based on real Observations. Self-refine is the model critiquing and rewriting its own draft answer in one turn with no external evidence.

Memory aid
Sign in to see the mnemonic that makes this stick.
Easy to grasp

Imagine writing an essay. Self-refine is writing a draft, reading it over, deciding it could be better, and rewriting it before showing it to anyone. You judged your own work and revised. Self-correction is more like writing one paragraph, showing it to a friend, hearing them say 'wait, you got that fact wrong', and then revising the next paragraph based on their feedback. The first relies on your own opinion; the second relies on real feedback from the outside world. Both make the answer better, but they use different signals to know what needs fixing. Agents use both: self-refine inside one turn, self-correction across turns when a tool returns a result the agent did not expect.

Concept explanation~2 min read

Everything you need to truly understand this topic: intuition, mechanics, step by step explanation, code, formulas, and worked example. Click to expand.

Self-correction and self-refine are both in-context error-recovery patterns: ways for an LLM to improve an answer without any weight updates. They are easy to conflate because both involve the model fixing its own mistakes. The load-bearing difference is the source of the error signal. Self-correction is triggered by external evidence; self-refine is triggered by the model's own self-judgement.

This distinction shows up everywhere in interview questions about agent design, and the two patterns are routinely treated as interchangeable when they are not. Mixing them up signals fuzziness on what makes an agent loop reliable in production.

This explanation walks through what each pattern looks like in practice, why the signal source is the structural distinction, the known limit of self-refine, how the two compose in production agents, and how frontier reasoning-mode models absorb both into hidden reasoning loops.

Self-correction: an agent revising course mid-run

Self-correction is what happens when an agent reads an Observation and realises its previous Action was wrong or the situation changed. The trigger is always external: a tool returned an error, a unit test failed, a search returned zero results, an API response was malformed, a parser rejected the output.

The correction happens between turns of the agent loop. After a failed Observation, the model's next Thought reads the failure and reasons about what to do differently. The next Action then takes a different approach: a different tool, different arguments, a smaller scope, a fallback strategy.

For self-correction to work, the runtime has to surface tool failures as readable Observations rather than silently retrying or crashing. A well-built agent runtime catches exceptions, formats the error as a string Observation ('Tool fetch_url failed: 404 Not Found'), and feeds it back into the loop. The model can then read the error and reason about it.

Self-correction is the dominant reason ReAct-style agent loops outperform open-loop chain-of-thought on multi-step tasks. The closed loop bounds error propagation precisely because each Observation gives the agent a chance to correct course. Without self-correction, the agent would compound errors instead of recovering from them.

Self-refine: critique then revise in one turn
Why the signal source is the structural distinction
The known limit of self-refine
How they compose and where they live in 2026
Sign in to unlock the full deep dive.

Situations where this technique stops working.

Sign in to see when this approach fails.

2–4 min · Everything important, quickly.

Sign in to see the quick scan of the deep dive.

Real products, models, and research that use this idea.

  • Cursor and Cline coding agents run self-refine inside one turn to tighten a code edit, then self-correction across turns when the test runner fails or the language server reports an error.
  • Anthropic claude-code uses self-correction when a tool call fails, reading the error in the next Observation and choosing a different tool or argument.
Sign in to see more production examples.

What an interviewer would ask next. Try answering before peeking at the approach.

QWhy does self-refine fail on certain reasoning tasks that self-correction handles fine?
A

Self-refine's critic is the same model as the generator. On tasks where the model is wrong, the critic is also wrong; it approves bad answers and rejects good ones. Self-correction uses external evidence (tool results, tests) that does not share the model's blind spots, so it can correct errors the model itself cannot recognise.

2 more follow-ups an interviewer would ask next. Sign in to reveal them.

Red flags & common mistakes

The phrases that signal junior thinking. Click to expand.

Most common mistake

Treating self-correction and self-refine as the same pattern under different names. The signal source is different: external Observations versus the model's own self-judgement.

Sign in to see all red flags and common mistakes.

60 second bullets to scan on the way to the call.

  • Define self-correction as agent course-correction triggered by an external Observation.

  • Define self-refine as a single-turn draft, critique, revise loop with no external observations.

Sign in to unlock the revision sheet.

Primary sources. Browse if you want the original framing.

Similar questions

Same topic, related formats. Practice these next.

4 curated
Next question
What is the Model Context Protocol (MCP) and what problem does it solve?
MCQ·Easy