Dream-Coder 7B: An Open Diffusion Language Model for Code
About
We present Dream-Coder 7B, an open-source discrete diffusion language model for code generation that exhibits emergent any-order generation capabilities. Unlike traditional autoregressive (AR) models that decode strictly left-to-right, Dream-Coder 7B adaptively determines its decoding strategy based on the coding task: sketch-first generation for complex algorithms, left-to-right generation for straightforward completions, and interleaved reasoning generation for code understanding tasks. We adapt a pretrained AR checkpoint to a discrete diffusion frameworks with a continuous-time weighted cross-entropy objective. Our post-training recipe comprises (i) supervised fine-tuning, where we mitigate padding pathologies via random truncation and a padding penalty to improve sample efficiency and stabilize generation; and (ii) reinforcement learning with verifiable rewards over a curated high-quality prompt set drawn from open-source datasets, using a tailored reinforcement learning recipe for diffusion language models. The resulting Dream-Coder 7B Instruct attains 21.4\% pass@1 on LiveCodeBench (2410--2505) and demonstrates competitive performance on HumanEval, MBPP, BigCodeBench, and CRUXEval. We release Dream-Coder-7B and Dream-Coder-7B-Instruct checkpoints, training recipes, preprocessing pipelines, and inference code to facilitate reproducibility and further research.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Code Generation | HumanEval (test) | -- | 444 | |
| Code Generation | MBPP (test) | -- | 276 | |
| CUDA Kernel Generation | KernelBench Level 2 | Execution Count8 | 31 | |
| CUDA Kernel Generation | KernelBench Level 3 | Executions Count6 | 31 | |
| CUDA Kernel Generation | KernelBench Level 1 | Exec Count1 | 31 | |
| Code Generation | MBPP | MBPP75.9 | 19 | |
| Code Infilling | HumanEval multi-line code infilling | -- | 12 | |
| Code Infilling | HumanEval single-line | Pass@155.5 | 10 | |
| Code Infilling | SantaCoder FIM | EM59.3 | 10 |