TL;DR
Self-Meta-Evolve is a method that, instead of keeping one universal prompt, maintains a separate prompt for each user and refines it through a loop: the LLM plays the role of a specific person, critiques the output ("keep this," "redo this," "cut this"), and then makes a targeted edit to exactly the part of the prompt that caused the complaint.
The problem behind the method is a harsh one: 72% of people manually rework an LLM's output to fit their role, because the same document needs to serve different people differently. A manager reading a report cares about deadlines and owners; a finance person cares about budgets and risks. A regular prompt optimizer tunes text for an "average" reader — and ends up fitting nobody in particular.
The method solves this by simulating a specific reader: the LLM pretends to be that person, evaluates the output point by point (keep/redo/delete), and the edits land not on the whole prompt but on one specific section of it — the task, extraction instructions, output format, or constraints, which are pre-split into named blocks.
Method Blueprint
The core of the method (the part you can actually run by hand, without hundreds of personas and automation):
STEP 1 (one request): Split the prompt into named sections
→ task, extraction instructions, output format, examples, constraints
STEP 2 (separate request): LLM plays the role of a specific reader
→ critiques the output: what to keep, what to redo, what to cut
STEP 3 (separate request): Targeted edit of ONE prompt section
→ don't rewrite the whole prompt, just the section that drew criticism
STEP 4: Repeat 2-4 times with the updated prompt
(The original paper also has an "outer loop" — generalizing successful edit patterns across dozens of simulated personas at once. That requires scale and automation and can't be replicated by hand in a chat window — see "Limitations."
Example in Action
Task: You have one prompt for summarizing a company's weekly report, but different people read the same copy — a sales director and an accountant. The salesperson needs the pipeline and leads; the accountant needs budget and expenses. One prompt gives everyone the same output, and both end up editing it by hand afterward.
Prompt:
Here is a structured prompt for extracting key information from a weekly company report:
TASK: Extract the key points from the company's weekly report.
INSTRUCTIONS: Highlight key events, numbers, and risks.
OUTPUT FORMAT: A bulleted list with headers.
CONSTRAINTS: No more than 10 bullets.
Here's the report: [insert report text]
Do the extraction based on this prompt.
Now imagine you are the sales director reading this output.
Rate each bullet point:
- KEEP (useful as is)
- REDO (important, but presented the wrong way)
- CUT (not needed for this role)
Briefly explain the reason for each rating.
Result: The model first produces the extraction based on the prompt, then the critique in character: a list of items marked keep/redo/cut with a reason for each. Based on that critique, you (or the LLM, at your request) edit one specific section of the prompt — say, "INSTRUCTIONS" — adding "focus on pipeline and deal status," rather than rewriting the whole prompt. Repeat the loop 2-3 times with a new report, and the "sales-director" prompt settles into a stable shape.
Why It Works
A prompt optimized for "everyone at once" actually fits no one — the correctness of an extraction depends on who's reading the output, not just on the document's text. That's exactly what explains the pain point: the same budget number matters to a finance person and is useless to a marketer.
LLMs are good at role-play — convincingly simulating how a specific character would react to a piece of text. The method leans into this strength: instead of you guessing what's wrong with the output, the model itself "puts on the hat" of the target reader and tells you flat out — keep, redo, or cut.
The targeted edit (not the whole prompt, just one section) works because it doesn't break what's already working. If you rewrite the entire prompt text every time, noise piles up and previously good phrasing gets lost.
Control levers: - Persona description (their role, priorities) → the more detailed it is, the sharper the critique. Swap "salesperson" for "sales director who only cares about conversion rate and overdue deals" and the critique gets much more specific. - Critique categories (keep/redo/cut) → you can add a fourth ("add") for cases where something is missing. - Number of prompt sections → the more granular the split (task/instructions/format/examples/constraints), the more precisely you can target an edit. - Number of iterations → 2-3 cycles are enough for a simple task; more for complex roles with lots of requirements.
Prompt Template
Here's a prompt for extracting information from a {document_type}, split into sections:
TASK: {what to extract, in general terms}
INSTRUCTIONS: {exactly how to extract it}
OUTPUT FORMAT: {what shape the output should take}
CONSTRAINTS: {limits, what not to do}
Here's the document: {document_text}
First, do the extraction based on this prompt.
Then imagine the output is being read by: {persona_description — role, priorities, what they pay attention to}.
Rate each bullet point of your own output:
- KEEP — useful as is
- REDO — important, but presented the wrong way
- CUT — not needed for this role
Briefly explain the reason for each rating.
Then propose how to change ONE section of the prompt (not the whole prompt) to fix the reasons behind the "redo" and "cut" ratings.
Fill in: {document_type} — report, email, meeting transcript; {persona_description} — a specific role with its priorities; the rest of the sections — tailor to your current task.
🚀 Quick Start — paste into chat:
Here's a Self-Meta-Evolve template for personalizing a prompt to a specific reader.
Adapt it to my task: {your task}.
Ask me questions to fill in the fields.
[insert template above]
The LLM will ask who exactly reads the output and what their priorities are — because without a clear persona, the critique comes out vague and the prompt edits won't hit their target.
Limitations
⚠️ You need a clear persona: the method only works if you can clearly describe who's reading the output and what matters to them. If the audience is "everyone," the critique comes out generic and useless.
⚠️ The outer loop (generalizing edit patterns across dozens of users) can't be replicated by hand: in the original paper, most of the quality gain (from 57% to 75% success) comes precisely from accumulating experience across many personas at once — that requires automation and lots of iterations. In a chat, you'll get a simplified version (just the "inner loop" on a single user), which still works but is weaker than the full system.
⚠️ Conflicting requirements within a single role: if a persona has mutually exclusive priorities (wants both brevity and completeness at once), no prompt can satisfy both — that's a limitation of the task itself, not of the method.
How It Was Studied
The researchers assembled 292 "personas" — fictional employees with roles pulled from the O*NET occupational database (managers, lawyers, engineers, and so on), and generated 8-12 fictional work documents for each one. Then, for each persona, they ran a loop: an LLM extracted information based on the current prompt, another LLM role (the "AI user") critiqued the output, a third edited the prompt — and if the edit reduced "dissatisfaction," it went into a shared bank of successful patterns, from which an overall editing strategy (a meta-prompt) was periodically re-assembled.
They compared this against seven existing prompt-optimization methods (ProTeGi, OPRO, EvoPrompt, and others) — all of which tune a single prompt toward a general goal, with no personalization. Self-Meta-Evolve beat the strongest competitor by 13.5 percentage points of success, and reached in just 2 iterations a result that other methods only hit at the very end of training — meaning the accumulated edit strategy delivers high-quality changes right away, without having to blindly "feel around" the prompt for a long time.
A neat detail: even without the outer loop (just repeating edits based on feedback from a single user — the simplified version available in chat), the method still beats most classic optimizers, though it's weaker than the full system. Human testers confirmed this too: 20 professionals in a blind comparison preferred the prompt personalized for them over a static one 71% of the time.