protologue

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-RefineReflexion
LoopGenerate, critique and reviseAttempt, get feedback, reflect and retry
Feedback sourceThe model's own critiqueExternal signals such as unit tests or rewards
MemoryNone beyond the draftReflections 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

  1. Madaan et al. (2023). Self-Refine: Iterative Refinement with Self-Feedback.
  2. Huang et al. (2023). Large Language Models Cannot Self-Correct Reasoning Yet.
  3. 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/

Markdown