DiffuCoder: Comprendere e Migliorare i Modelli di Diffusione con Maschera per la Generazione di Codice
DiffuCoder: Understanding and Improving Masked Diffusion Models for Code Generation
June 25, 2025
Autori: Shansan Gong, Ruixiang Zhang, Huangjie Zheng, Jiatao Gu, Navdeep Jaitly, Lingpeng Kong, Yizhe Zhang
cs.AI
Abstract
I modelli linguistici di grandi dimensioni basati su diffusione (dLLM) rappresentano alternative convincenti ai modelli autoregressivi (AR) poiché i loro modelli di denoising operano sull'intera sequenza. Le caratteristiche di pianificazione globale e affinamento iterativo dei dLLM sono particolarmente utili per la generazione di codice. Tuttavia, i meccanismi di addestramento e inferenza attuali per i dLLM nel contesto della programmazione sono ancora poco esplorati. Per chiarire il comportamento di decodifica dei dLLM e sbloccare il loro potenziale per la codifica, analizziamo sistematicamente i loro processi di denoising e i metodi di apprendimento per rinforzo (RL). Addestriamo un dLLM da 7B, DiffuCoder, su 130B token di codice. Utilizzando questo modello come banco di prova, analizziamo il suo comportamento di decodifica, rivelando come differisce da quello dei modelli AR: (1) i dLLM possono decidere quanto causale debba essere la loro generazione senza fare affidamento sulla decodifica semi-AR, e (2) aumentare la temperatura di campionamento diversifica non solo le scelte dei token ma anche il loro ordine di generazione. Questa diversità crea uno spazio di ricerca ricco per i rollout di RL. Per l'addestramento RL, per ridurre la varianza delle stime di log-verosimiglianza dei token e mantenere l'efficienza dell'addestramento, proponiamo coupled-GRPO, un nuovo schema di campionamento che costruisce rumore di maschera complementare per le completazioni utilizzate nell'addestramento. Nei nostri esperimenti, coupled-GRPO migliora significativamente le prestazioni di DiffuCoder nei benchmark di generazione di codice (+4,4% su EvalPlus) e riduce la dipendenza dalla causalità AR durante la decodifica. Il nostro lavoro fornisce una comprensione più profonda del funzionamento della generazione dei dLLM e offre un framework di addestramento RL efficace e nativo per la diffusione. https://github.com/apple/ml-diffucoder.
English
Diffusion large language models (dLLMs) are compelling alternatives to
autoregressive (AR) models because their denoising models operate over the
entire sequence. The global planning and iterative refinement features of dLLMs
are particularly useful for code generation. However, current training and
inference mechanisms for dLLMs in coding are still under-explored. To demystify
the decoding behavior of dLLMs and unlock their potential for coding, we
systematically investigate their denoising processes and reinforcement learning
(RL) methods. We train a 7B dLLM, DiffuCoder, on 130B tokens of code.
Using this model as a testbed, we analyze its decoding behavior, revealing how
it differs from that of AR models: (1) dLLMs can decide how causal their
generation should be without relying on semi-AR decoding, and (2) increasing
the sampling temperature diversifies not only token choices but also their
generation order. This diversity creates a rich search space for RL rollouts.
For RL training, to reduce the variance of token log-likelihood estimates and
maintain training efficiency, we propose coupled-GRPO, a novel
sampling scheme that constructs complementary mask noise for completions used
in training. In our experiments, coupled-GRPO significantly improves
DiffuCoder's performance on code generation benchmarks (+4.4\% on EvalPlus) and
reduces reliance on AR causal during decoding. Our work provides deeper insight
into the machinery of dLLM generation and offers an effective, diffusion-native
RL training framework. https://github.com/apple/ml-diffucoder.