Uma Auto-Distilação Surpreendentemente Simples Melhora a Geração de Código
Embarrassingly Simple Self-Distillation Improves Code Generation
April 1, 2026
Autores: Ruixiang Zhang, Richard He Bai, Huangjie Zheng, Navdeep Jaitly, Ronan Collobert, Yizhe Zhang
cs.AI
Resumo
Um modelo de linguagem de grande escala (LLM) pode melhorar na geração de código usando apenas suas próprias saídas brutas, sem um verificador, um modelo professor ou aprendizado por reforço? Respondemos afirmativamente com a auto-distilação simples (SSD): amostramos soluções do modelo com certas configurações de temperatura e truncamento, e então ajustamos finamente nessas amostras com o ajuste fino supervisionado padrão. O SSD melhora o Qwen3-30B-Instruct de 42,4% para 55,3% em pass@1 no LiveCodeBench v6, com ganhos concentrados em problemas mais difíceis, e generaliza entre os modelos Qwen e Llama nas escalas de 4B, 8B e 30B, incluindo variantes de instrução e de raciocínio. Para entender por que um método tão simples pode funcionar, rastreamos esses ganhos até um conflito de precisão-exploração na decodificação do LLM e mostramos que o SSD remodela as distribuições de tokens de maneira dependente do contexto, suprimindo as caudas de distração onde a precisão é importante, enquanto preserva a diversidade útil onde a exploração é importante. Em conjunto, o SSD oferece uma direção complementar de pós-treinamento para melhorar a geração de código por LLMs.
English
Can a large language model (LLM) improve at code generation using only its own raw outputs, without a verifier, a teacher model, or reinforcement learning? We answer in the affirmative with simple self-distillation (SSD): sample solutions from the model with certain temperature and truncation configurations, then fine-tune on those samples with standard supervised fine-tuning. SSD improves Qwen3-30B-Instruct from 42.4% to 55.3% pass@1 on LiveCodeBench v6, with gains concentrating on harder problems, and it generalizes across Qwen and Llama models at 4B, 8B, and 30B scale, including both instruct and thinking variants. To understand why such a simple method can work, we trace these gains to a precision-exploration conflict in LLM decoding and show that SSD reshapes token distributions in a context-dependent way, suppressing distractor tails where precision matters while preserving useful diversity where exploration matters. Taken together, SSD offers a complementary post-training direction for improving LLM code generation.