loading
loading
One model drafts, critiques its own draft, then rewrites — looping until it's good enough.
Self-refine is reflection done by a single model wearing both hats: generate output, generate feedback on that output, apply the feedback, repeat for a few rounds. No second model needed, which makes it cheap to bolt on, and it reliably lifts quality on writing and code tasks where the first draft is rough. Example: an agent writes a function, notes 'no error handling, unclear name,' and produces a cleaner v2 — stopping when its own critique comes back empty.
Plainly
Think of Self-refine as a simple recipe for doing the work better. One model drafts, critiques its own draft, then rewrites — looping until it's good enough.
In practice
Use it when you need a repeatable method instead of guessing from vibes. In practice, define the owner, input, output, and failure mode before you rely on it.