84. Make the Model Its Own Critic: Self-Refinement and Verbal Reinforcement

Understand how a language model can act as its own critic - through iterative self-refinement and verbal self-reflection - and how to apply both patterns in your own prompts.

By Jacques Botte, founder of Toptronic®. Last updated 19 September 2026.

The lesson

Large language models rarely produce their best work on the first try, yet most users send one prompt and accept one answer. In 2023, two research papers showed that a model can become its own best editor: Self-Refine ("Self-Refine: Iterative Refinement with Self-Feedback" by Aman Madaan and colleagues) and Reflexion ("Reflexion: Language Agents with Verbal Reinforcement Learning" by Noah Shinn and colleagues). Both papers come from the TPEE library of scientific papers, which you can also browse on tpee.app/papers.

Self-Refine's core idea is a loop in which the SAME model plays three roles: generator, feedback provider, and refiner. The model produces a draft, then critiques it, then rewrites it in light of that critique - and the loop repeats until it stops improving. No additional training, fine-tuning, or reinforcement learning is required; everything happens in the prompt and context layer.

The evidence for Self-Refine is strong: across 7 diverse tasks (from dialog response generation to mathematical reasoning) and three models (GPT-3.5, ChatGPT, and GPT-4), iterative self-refinement improved task performance by about 20% absolute on average, and even state-of-the-art GPT-4 got better at test time. The first draft is not the ceiling.

The critique prompt is the whole game. A vague "review your prompt and make it better" produces vague, useless feedback. Effective Self-Refine-style critique is specific and actionable: which requirement is unmet? Which section is unclear? What exactly should change next? Writing a good rubric for the critic is a prompt-engineering skill in its own right - and one you control completely.

Reflexion extends self-critique across ATTEMPTS. Instead of refining one output, a Reflexion agent verbally reflects on a failure - writing what went wrong and what to change - and stores that reflection in an episodic memory buffer that shapes the next attempt. This is reinforcement learning carried out in language: no weight updates at all.

The evidence for Reflexion is striking: 91% pass@1 on the HumanEval coding benchmark, surpassing the previous state of the art - GPT-4 at 80% - achieved purely by prompting an agent to reflect on its failures and remember them. Verbal feedback replaced gradient updates.

Practical patterns you can use today: (a) run two-pass prompts - ask for the draft in one message, then ask for a critique against a checklist before any rewrite; (b) ask for the critique BEFORE asking for the revision, so the model judges rather than defends; (c) keep a "lessons learned" block in your project prompts - TPEE's version history is your episodic memory buffer, and the Examples and Data sections are natural places to store reflection text; (d) when an agent fails, demand a written post-mortem, not just a retry.

Know the limits. Self-critique is not ground truth: models can be confidently wrong about their own output, feedback quality drops on tasks the model is weak at, and every loop iteration costs tokens. Pair self-reflection with external checks - tests, facts, TPEE's prompt-scoring rubric. The takeaway: the cheapest quality gain is often a second, critical pass, and TPEE's 12-section editor with its score panel is a built-in place to run that loop.

Check yourself

Question 1: In Self-Refine, which single model plays three distinct roles in the loop?
  1. A generator only - a separate human provides the feedback
  2. A generator, a feedback provider, and a refiner — correct
  3. A critic only - a different model does the generating
  4. A verifier only, using retrieval to check facts

Answer: A generator, a feedback provider, and a refiner

The same LLM alternates between generating a draft, giving itself feedback, and refining the draft - no separate models or human in the loop.

Question 2: You asked a model to "review your prompt and make it better" and got vague, useless feedback. What does the Self-Refine / Reflexion lesson say to do first?
  1. Increase the temperature and regenerate
  2. Give the critic a specific rubric: which requirements are unmet, which sections are unclear, what to change — correct
  3. Fine-tune the model on your past prompts
  4. Ask the same question again with more tokens

Answer: Give the critic a specific rubric: which requirements are unmet, which sections are unclear, what to change

Effective self-critique depends on a specific, actionable rubric - vague critique requests produce vague feedback. This is a prompt-engineering skill you control.

Question 3: What replaced weight updates as the "reinforcement" mechanism in Reflexion, and what benchmark result did it achieve?
  1. Gradient descent with fewer parameters; 80% on HumanEval
  2. Verbal self-reflections stored in an episodic memory buffer; 91% pass@1 on HumanEval, beating GPT-4's 80% — correct
  3. A larger context window; 95% on MMLU
  4. External reward-model fine-tuning; 91% on GSM8K

Answer: Verbal self-reflections stored in an episodic memory buffer; 91% pass@1 on HumanEval, beating GPT-4's 80%

Reflexion's agents write reflections on failures into an episodic memory buffer - reinforcement via language, no weight updates - reaching 91% pass@1 on HumanEval.

← Previous lesson · All 91 lessons · Next lesson →

The full course — 91 lessons and 273 quiz questions — ships inside the app. Get TPEE to study it offline.