GASP: Guided Asymmetric Self-Play For Coding LLMs
Organizations: University of Tübingen · Max Planck Institute for Intelligent Systems · ELLIS Institute Tübingen · Tübingen AI Center
Abstract
Asymmetric self-play has emerged as a promising paradigm for post-training large language models, where a teacher continually generates questions for a student to solve at the edge of the student's learnability. Although these methods promise open-ended data generation bootstrapped from no human data, they suffer from one major problem: not all problems that are hard to solve are interesting or informative to improve the overall capabilities of the model. Current asymmetric self-play methods are goal-agnostic with no real grounding. We propose Guided Asymmetric Self-Play (GASP), where grounding is provided by real-data goalpost questions that are identified to pose a hard exploration challenge to the model. During self-play, the teacher first generates an easier variant of a hard question, and then a harder variant of that easier question, with the goal of gradually closing the gap to the goalpost throughout training. Doing so, we improve pass@20 on LiveCodeBench (LCB) by 2.5% over unguided asymmetric self-play, and through the curriculum constructed by the teacher, we manage to solve hard goalpost questions that remain out of reach for all baselines.
Figures & tables
Appendix figures & tables13 assets
Supplementary material from the paper’s appendix.
Appendix
| Training on Real-data | Real-data Guidance | selected by pass@1 | selected by pass@20 | ||||
| pass@1 | pass@20 | pass@1 | pass@20 | ||||
| GASP | ✗ | ✓ | 19.10 ±0.92 | 33.63 ±0.35 | 18.26 ±0.68 | 33.69 ±0.28 | |
| \mathopen{}\mathclose{{\left.\vbox{\vrule height=0.0pt,width=0.0pt}\textnormal{{Ablations}}}}\right\{ | GASP no i/o axis | ✗ | ✓ | 19.36 ±1.35 | 33.31 ±1.34 | 18.94 ±1.69 | 33.47 ±1.14 |
| GASP w/o rejection sampling | ✗ | ✓ | 17.97 ±0.79 | 32.72 ±1.81 | 17.64 ±1.33 | 33.03 ±1.50 | |
| GASP one-step medium | ✗ | ✓ | 17.10 ±0.33 | 31.41 ±0.03 | 15.73 ±1.61 | 32.36 ±0.03 | |
| GASP one-step hard | ✗ | ✓ | 17.76 ±1.14 | 32.20 ±0.91 | 17.13 ±0.68 | 33.37 ±0.12 | |
| Method | LCB | HumanEval + | MBPP + |
|---|---|---|---|
| GASP | 19.75 ±2.33 | 79.67 ±0.35 | 70.63 ±0.70 |
| AZR | 17.13 | 83.54 | 69.58 |
| Real-data RL | 18.21 ±1.41 | 78.66 ±1.61 | 69.31 ±0.95 |
| GASP + Real-data RL | 20.52 ±3.60 | 80.49 ±1.61 | 71.60 ±1.00 |
| Qwen2.5-Coder-7B | 13.89 | 79.88 | 69.58 |
| Method | Per-seed | Unique (union) | |
| GASP | 6 / 3 / 3 | 11 | |
| \mathopen{}\mathclose{{\left.\vbox{\vrule height=0.0pt,width=0.0pt}\textnormal{{Ablations}}}}\right\{ | GASP no i/o axis | 2 / 2 / 2 | 4 |
| GASP w/o rejection sampling | 5 / 8 / 5 | 14 | |
| GASP one-step medium | 6 / 4 / 4 | 11 | |
| GASP one-step hard | 0 / 1 / 1 | 2 | |
| AZR | — | 0 † |
Language Model Self-Improvement
Language model self-improvement studies how models use their own outputs, feedback, and experience to improve with less external supervision.
See all 171 papers