Self-Refine vs Reflexion
Self-Refine improves a single output within one task, with the model critiquing and revising its own draft until a stopping point. Reflexion works across attempts, having an agent write a reflection on why an attempt failed, often using signals such as test results, and store it in memory to guide the next try.
Definitions
- Self-Refine PTL-0047
- Self-Refine is an iterative method in which the same model generates an output, critiques it with specific feedback, and revises it, repeating until a stopping condition is met.
- Reflexion PTL-0048
- Reflexion is an agent technique in which, after a failed attempt, the model writes a verbal reflection on what went wrong and stores it in memory to guide its next attempt.
Differences
| Self-Refine | Reflexion | |
|---|---|---|
| Loop | Generate, critique and revise | Attempt, get feedback, reflect and retry |
| Feedback source | The model's own critique | External signals such as unit tests or rewards |
| Memory | None beyond the draft | Reflections stored and reused |
Which to use
- Use Self-Refine to polish writing or code within one response.
- Use Reflexion for agents that can attempt a task repeatedly and observe whether they succeeded.
Sources
- Madaan et al. (2023). Self-Refine: Iterative Refinement with Self-Feedback.
- Huang et al. (2023). Large Language Models Cannot Self-Correct Reasoning Yet.
- Shinn et al. (2023). Reflexion: Language Agents with Verbal Reinforcement Learning.
Cite this page
Protologue. (2026). Self-Refine vs Reflexion. In Protologue: A Taxonomy of Prompting and LLM Techniques (v1.4.0). https://protologue.com/compare/self-refine-vs-reflexion/