prompt-eng
Glossary ↗Self-Refine
Self-Refine is an iterative prompting loop in which a single model generates an answer, critiques its own output, and then rewrites it using that critique — repeating until it is satisfied or a step limit is hit. Introduced by Madaan et al. (2023), the key point is that no extra training, external reward model, or human feedback is required: the same LLM plays author, reviewer, and editor across three prompts. It tends to help on open-ended generation — code, drafts, dialogue responses — where a first pass is decent but has fixable flaws the model can spot when asked to look. For SaaS builders it's a cheap quality lever: after generating, add a "list concrete problems with this output, then produce an improved version" step. Two caveats: gains are uneven and can plateau or even regress after a couple of rounds, and each iteration costs more tokens and latency — so cap the loop (often one or two passes) and, ideally, measure whether the refined output actually beats the original on your eval set.
Related terms