BYOD: Build Your Own DLM - Efficient Autoregressive-to-Diffusion Language Model Conversion
Organizations: Julius Center for Health Sciences and Primary Care University Medical Center Utrecht · Department of Methodology and Statistics Utrecht University, The Netherlands
Abstract
Unlike autoregressive (AR) models, diffusion language models (DLMs) permit parallel token updates, flexible generation, and bidirectional attention, but leading systems rely on costly pretraining or full-model fine-tuning. We present Build Your Own DLM (BYOD), a generalizable LoRA-only recipe for parameter-efficient AR-to-DLM conversion. Without architecture-specific tuning, BYOD induces diffusion generation in Gemma 2 9B, Llama 3.1 8B, Qwen2.5 7B, and Ministral 8B; to our knowledge, this is the first reported AR-to-DLM conversion of a Mistral model. The adapters comprise 4.1-5.8% of final parameters while every base-model parameter remains frozen; each 25,000-iteration conversion needs at most 102.4M tokens, processed in 3.1-4.0 hours on one Google Colab GPU. All four models generate from fully masked sequences, use bidirectional context in a controlled attention test, and retain substantial parent-model knowledge. BYOD-Gemma is the strongest BYOD conversion on our nine-task evaluation, reaching 50.6% average accuracy compared with 51.9% for LLaDA 8B Instruct in the same harness. Open-generation quality at low network function evaluation (NFE) budgets remains the principal limitation: BYOD perplexity is 8.3-11.1 versus 4.1 for LLaDA and 2.2-3.0 for the AR parents when generating 128 tokens in 64 steps. To enable further experimentation and inspection, we provide a standalone training and evaluation implementation and interactive demos for all four conversions. BYOD thus provides a practical route for extending diffusion generation to other existing model families while identifying the gap that efficient conversion must next close.
Figures & tables
| System | Diffusion-stage data | Updated weights | Hardware | GPU-h | Cost (USD) | CO 2 e |
|---|---|---|---|---|---|---|
| BYOD (ours) | 102.4M tokens | LoRA | 1 RTX Pro 6000 | 3.2 | $11 | 0.9 kg |
| DiffuLLaMA 7B | 65B tokens | Full | 64 GH200 | 1,917 † | $9,951 | 0.65 t |
| LLaDA 8B | 2.3T tokens | Full | H800 | 130,000 | $674,830 | 44.1 t |
| Dream 7B | 580B tokens + SFT | Full | NR | 17,105 † | $88,791 | 5.81 t |
| iLLaDA 8B | 12T tokens + SFT | Full | NR | 404,449 † | $2,099,494 | 137.3 t |
| Efficient-DLM 8B | 500B tokens | Full | 128 H100 | 16,852 † | $87,479 | 5.72 t |
| Diffusion model | AR parent | Total parameters | Trainable | Trainable (%) | Time (h) |
|---|---|---|---|---|---|
| BYOD-Gemma | Gemma 2 9B IT | 10.732B | 572.5M | 5.33 | 4.0 |
| BYOD-Qwen | Qwen2.5 7B Instruct | 7.939B | 323.0M | 4.07 | 3.1 |
| BYOD-Ministral | Ministral 8B Instruct 2410 | 8.511B | 490.7M | 5.77 | 3.4 |
| BYOD-Llama | Llama 3.1 8B Instruct | 8.466B | 436.2M | 5.15 | 3.2 |
| Gemma | Qwen | Ministral | Llama | LLaDA | |||||||
| Task | D | AR | D | AR | D | AR | D-25k | D-50k | AR | Ours | Published |
| General knowledge and reasoning (multiple choice) | |||||||||||
| ARC-C | .864 | .888 | .840 | .912 | .832 | .768 | .832 | .824 | .792 | .864 | .885 |
| GPQA | .320 | .280 | .288 | .344 | .272 | .368 | .296 | .272 | .320 | .312 | .333 |
| HellaSwag | .752 | .696 | .728 | .752 | .768 | .680 | .704 | .760 | .608 | .696 | .746 |
| MMLU | .688 | .648 | .568 | .656 | .576 | .544 | .592 | .616 | .536 | .560 | .655 |
Appendix figures & tables15 assets
Supplementary material from the paper’s appendix.
Appendix
| System | Parameters | Tokens | Pred. GPU-h | Reported GPU-h | Implied MFU |
|---|---|---|---|---|---|
| LLaDA | 8B | 2.30T | 77,519 | 130,000 | 23.9% |
| Fast-dLLM v2 | 7B | 1.31B | 123 | 768 | 6.4% |
| Representation | Parameters | PPL | PPL | D-1% | D-2% | D-3% |
|---|---|---|---|---|---|---|
| Adapter loaded | 8.466B | 19.381 | 5.081 | 49.5 | 78.8 | 89.9 |
| Merged standalone | 8.030B | 19.283 | 4.764 | 49.8 | 80.7 | 91.8 |
| Task | Adapter | Merged | Task | Adapter | Merged |
|---|---|---|---|---|---|
| ARC-C | 83.2 | 84.0 | MATH | 25.6 | 24.8 |
| GPQA | 29.6 | 30.4 | MBPP | 43.2 | 41.6 |
| GSM8K | 65.6 | 63.2 | MMLU | 59.2 | 60.8 |
| HellaSwag | 70.4 | 69.6 | MMLU-Pro | 30.4 | 30.4 |
| HumanEval | 31.2 | 29.6 | Mean | 48.7 | 48.3 |
| Setting | Value | Setting | Value |
| Training examples | 400,000 | Optimizer updates | 25,000 |
| Maximum sequence length | 256 | Dynamic padding multiple | Llama: 8; others: 16 |
| Batch size | 16/16 | Gradient accumulation | 1 |
| Optimizer | AdamW | Peak learning rate | |
| Schedule | cosine | Warmup | 100 updates |
| Weight decay | 0.01 | Maximum gradient norm | 0.5 |
| Task | Output tokens | NFE | Block length | Temperature | Terminator handling |
|---|---|---|---|---|---|
| Open-ended | 128 | 128/64/32 | 128 | 0.7 | delayed retention |
| MMLU | 64 | 64 | 64 | 0 | ordinary |
| MMLU-Pro | 128 | 128 | 128 | 0 | delayed retention |
| HellaSwag | 64 | 64 | 64 | 0 | ordinary |
| ARC-Challenge | 64 | 64 | 64 | 0 | ordinary |
| GSM8K | 256 | 256 | 256 | 0 | delayed retention |
| Task | Tokens | Task | Tokens |
|---|---|---|---|
| Open-ended | 128 | MMLU | 64 |
| MMLU-Pro | 2,048 | HellaSwag | 64 |
| ARC-Challenge | 64 | GSM8K | 256 |
| MATH-500 | 256 | GPQA-Main | 128 |
| HumanEval | 256 | MBPP | 128 |
| Model | Benchmark | Invalid / 125 | Rate |
|---|---|---|---|
| BYOD-Llama-50k | HumanEval | 35 | 28.0% |
| Llama AR | HumanEval | 0 | 0.0% |
| BYOD-Llama-50k | MBPP | 11 | 8.8% |
| Llama AR | MBPP | 0 | 0.0% |
| Item | Generated fragment | Parser-level failure |
|---|---|---|
| HumanEval/10 | defdef make_palindrome(string: str) -> str: | Duplicated def keyword. |
| HumanEval/2 | return number - int(number | Missing closing parenthesis. |
| MBPP/25 | return [t for t in tuples if all(x % k == 0 for x in t] | Square bracket closes an open parenthesis. |
| MBPP/79 | return set(num for for sublist in list_of_lists) | Duplicated for keyword. |
| Diffusion | AR parent | |||||||
|---|---|---|---|---|---|---|---|---|
| Model/checkpoint | PPL | D-1 32 % | PPL | D-1 64 % | PPL | D-1 128 % | PPL | D-1% |
| BYOD-Gemma | 14.56 | 44.6 | 8.27 | 45.5 | 4.33 | 51.2 | 3.01 | 63.4 |
| BYOD-Qwen | 20.25 | 43.0 | 11.12 | 50.9 | 6.21 | 56.0 | 2.23 | 69.5 |
| BYOD-Ministral | 15.45 | 44.5 | 9.42 | 49.3 | 5.08 | 55.5 | 2.31 | 65.1 |
| BYOD-Llama-25k | 19.38 | 49.5 | 10.50 | 52.7 | 5.08 | 51.9 | 2.49 | 61.0 |
| BYOD-Llama-50k | 17.00 | 43.5 | 9.53 | 49.6 | 4.83 | 50.7 | 2.49 | 61.0 |
| Model | With clue EM | Without clue EM | EM gain | Prediction changed |
|---|---|---|---|---|
| BYOD-Gemma | 100% | 0% | +100 pp | 100% |
| BYOD-Qwen | 20% | 0% | +20 pp | 100% |
| BYOD-Ministral | 100% | 0% | +100 pp | 100% |
| BYOD-Llama-25k | 90% | 0% | +90 pp | 100% |
| BYOD-Llama-50k | 70% | 0% | +70 pp | 100% |
| LLaDA 8B Instruct | 100% | 0% | +100 pp | 100% |
| Task | BYOD-Llama (ours) | LLaDA | Dream-Inst. | iLLaDA-Inst. | Efficient-DLM 8B |
|---|---|---|---|---|---|
| ARC-C | .832 | .885 | NR | NR | .619 |
| GPQA | .296 | .333 | .330 | NR | NR |
| GSM8K | .656 | .694 | .810 | .890 | .883 |
| HellaSwag | .704 | .746 | NR | NR | .725 |
| HumanEval | .312 | .494 | .555 | .659 | .683 |
| MATH | .256 | .319 | .392 | .567 | .501 |
Diffusion Language Models
Diffusion language models generate and refine text through iterative denoising, enabling bidirectional context and parallel token updates.
See all 488 papers