
ESPO: Error-Structured Prompt Optimization via Diagnose, Diversify, and Stabilize
ESPO (Error-Structured Prompt Optimization) is a prompt-optimization method that addresses prompt bloat in evolutionary optimizers like GEPA by splitting the process into Diagnose (clustering training errors into structural patterns), Propose (generating diverse candidates via four independent strategies), and Select (bootstrap stability selection). Across seven NLP benchmarks (Tweet, MMLU, GSM8K, HotpotQA, ScoNe, HoVer, PUPA) it beats GEPA by 3.76pp average accuracy (74.67% vs 70.91%) while producing prompts 47% shorter, and generalizes well across student models including Gemma 3 12B, Mistral 14B, Qwen3 32B, and Claude Haiku 4.5.
What it claims
ESPO targets a specific failure of evolutionary prompt optimizers like GEPA: prompt bloat, where each iteration appends rules and caveats, yielding prompts up to 3× longer with no accuracy gain. It attributes this to three named deficiencies — incomplete error observation, limited search diversity, and unreliable selection — and structures its three phases to counter each. Result: +3.76 pp average accuracy over GEPA (74.67% vs 70.91%) while producing prompts 47% shorter (1,004 vs 1,878 chars).
How it works
The three phases map one-to-one onto the diagnosed deficiencies:
- Diagnose clusters all training errors into structural patterns in a single round (vs GEPA's incremental error observation).
- Propose generates candidates via four complementary strategies with independent biases (vs limited diversity).
- Select applies bootstrap stability selection (vs unreliable selection).
The paper claims a generalization bound (in the Appendix) that grounds each phase in a corresponding term of the test-time gap — i.e. each phase is tied to a component of expected error, not just heuristic.
Evidence
Beyond the seven-benchmark average, two specifics the summary omits:
- Cross-model peak gap: on Qwen3 32B / GSM8K, ESPO lifts accuracy from 15.00% → 91.40%. It reports best average accuracy on every one of the four extra student models (Gemma 3 12B, Mistral 14B, Qwen3 32B, Claude Haiku 4.5).
- Ablation as validation of the design: adding diversity without bootstrap selection actually hurts performance by −1.20%. This confirms the phases are coupled — diversity is only safe when paired with stable selection, which is the paper's central design claim rather than an incidental result.
Shorter prompts also mean faster inference (stated, not quantified).
Limits
- The fetched page is abstract-only; the four Propose strategies, the clustering method, the bootstrap selection procedure, and the generalization bound itself are not detailed here — you must read the PDF/Appendix to reproduce or evaluate them.
- All benchmarks are public NLP tasks (classification, QA, math, reasoning); no agentic, long-horizon, or code-generation tasks are reported.
- The −1.20% ablation implies the method is not robust to partial adoption: taking only the diversity idea from ESPO is worse than doing nothing.
- No code, licence, or release artifact is mentioned on the page.
Organisations named here
- Gemma 3 12B
- GEPA
- GSM8K
- HotpotQA
- HoVer
- Mistral 14B
- MMLU
- PUPA
- Qwen3 32B
- ScoNe
Technologies named here
- Gemma 3
- GEPA
- Mistral
- Qwen3
- Claude Haiku 4.5
Techniques named here
- ESPO
- Bootstrap stability selection
Related in prompting
Dicklesworthstone/skillranker
miqdadbadjuber/anti-slop
