yifanyu/I-DLM-32B
6695
I-DLM-32B
Introspective Diffusion Language Model (32B) — a diffusion language model converted from Qwen3-32B that matches AR quality while enabling parallel token generation.
[[Project Page]](https://introspective-diffusion.github.io/) [[Paper]](https://arxiv.org/abs/2604.11035) [[Code]](https://github.com/Introspective-Diffusion/I-DLM)
Highlights
- Matches Qwen3-32B quality across 15 benchmarks (knowledge, math, code, instruction following)
- Introspective Strided Decoding (ISD): single-pass generation + verification with p/q acceptance criterion
- AR-compatible serving via SGLang (paged KV cache, continuous batching, CUDA graphs)
Results
Quality (I-DLM-32B vs baselines)
Usage
Note: This model checkpoint is hosted on HuggingFace for weight distribution. For inference, please use our SGLang-based ISD pipeline which implements the Introspective Strided Decoding algorithm described in the paper. Direct loading via transformers is not currently supported for reproducing paper results.Inference via SGLang (Recommended)
# Install
git clone https://github.com/Introspective-Diffusion/I-DLM.git
cd I-DLM/inference && bash install.sh
# Launch server
python -m sglang.launch_server \
--model-path yifanyu/I-DLM-32B \
--trust-remote-code --tp-size 1 --dtype bfloat16 \
--mem-fraction-static 0.85 --max-running-requests 32 \
--attention-backend flashinfer --dllm-algorithm IDLMBlockN \
--dllm-algorithm-config inference/configs/idlm_blockN4_config.yaml \
--port 30000
# Generate
curl http://localhost:30000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model":"default","messages":[{"role":"user","content":"Prove sqrt(2) is irrational."}],"max_tokens":4096}'See the inference README for detailed setup, evaluation, and benchmarking.
Method
I-DLM recovers introspective consistency (AR models' inherent self-agreement) through:
- Strict causal masking across both masked and clean tokens
- Logit shift (Dream shift): hidden state at position i predicts token i+1
- All-masked training: CE loss on both noisy and clean token positions
Training loss: L = CE_noisy + alpha * CE_clean
Related Models
Citation
@article{yu2026introspective,
title={Introspective Diffusion Language Models},
author={Yu, Yifan and Jian, Yuqing and Wang, Junxiong and Zhou, Zhongzhu
and Zhuang, Donglin and Fang, Xinyu and Yanamandra, Sri
and Wu, Xiaoxia and Wu, Qingyang and Song, Shuaiwen Leon
and Dao, Tri and Athiwaratkun, Ben and Zou, James
and Lai, Fan and Xu, Chenfeng},
journal={arXiv preprint arXiv:2604.11035},
year={2026}
}