HybridDiffusion-2B

Model overview

HybridDiffusion-2B is a 2.39B-parameter text-generation checkpoint produced by applying HybridDiffusion's autoregressive-to-diffusion conversion recipe to Qwen3.5-2B. A single set of weights supports AR-Trust verified decoding, Diffusion-Trust parallel denoising, and ordinary causal generation through the HybridDiffusion runtime.

Property Value
Base model Qwen3.5-2B
Parameters 2,390,384,448
Architecture Hybrid Gated DeltaNet and softmax attention
Input / output Text / text
Weight format BF16 safetensors
Context configuration 262,144 positions
Vocabulary size 248,320
License License

The native mask ID is 248077. It belongs to the padded model vocabulary and is intentionally not exposed as a tokenizer token.

Quick Start Guide

HybridDiffusion inference uses the SGLang and FlashInfer implementations bundled with the HybridDiffusion repository. The checkpoint uses a standard Hugging Face layout and is downloaded automatically by the serving runtime.

1. Install the runtime

git clone https://github.com/yuchen-zhu-zyc/HybridDiffusion.git
cd HybridDiffusion/eval

HYBRID_DIFFUSION_CACHE_ROOT=/persistent/hybrid-diffusion-cache \
  bash scripts/setup_eval_env.sh

The one-shot installer creates the evaluation environment and places reusable Hugging Face, FlashInfer, Triton, and extension caches below HYBRID_DIFFUSION_CACHE_ROOT.

2. Start a server

Start one decoding mode. Each command below serves the same checkpoint and uses port 30000 unless PORT is overridden.

# AR-Trust: noisy-stream drafting with clean-stream verification.
scripts/serve.sh self-spec yuchen-zhu-zyc/HybridDiffusion-2B

# Diffusion-Trust: parallel block denoising.
scripts/serve.sh diffusion yuchen-zhu-zyc/HybridDiffusion-2B

# Causal reference: ordinary left-to-right decoding.
scripts/serve.sh causal yuchen-zhu-zyc/HybridDiffusion-2B

To run more than one server, assign a different PORT and GPU to each process, for example PORT=30001 CUDA_VISIBLE_DEVICES=1 ....

3. Query the OpenAI-compatible API

curl http://localhost:30000/v1/chat/completions \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "yuchen-zhu-zyc/HybridDiffusion-2B",
    "messages": [{"role": "user", "content": "Solve: 17 × 23."}],
    "temperature": 1.0,
    "top_p": 0.95,
    "top_k": 20,
    "max_tokens": 512,
    "chat_template_kwargs": {"enable_thinking": false}
  }'

The installed environment also includes the OpenAI Python client:

from openai import OpenAI

client = OpenAI(base_url="http://localhost:30000/v1", api_key="EMPTY")
response = client.chat.completions.create(
    model="yuchen-zhu-zyc/HybridDiffusion-2B",
    messages=[{"role": "user", "content": "Solve: 17 × 23."}],
    temperature=1.0,
    top_p=0.95,
    max_tokens=512,
    extra_body={
        "top_k": 20,
        "chat_template_kwargs": {"enable_thinking": False},
    },
)
print(response.choices[0].message.content)

Decoding modes

Mode Launcher Released configuration Description
AR-Trust scripts/serve.sh self-spec hybrid_diffusion_self_spec_b7_g4.yaml The noisy stream proposes multiple draft tokens and clean-stream logits verify them left-to-right.
Diffusion-Trust scripts/serve.sh diffusion hybrid_diffusion_shift_b3_g1.yaml A masked active block is denoised in parallel and committed after refinement.
Causal scripts/serve.sh causal Native causal decoding Standard left-to-right generation from the clean stream.

AR-Trust uses speculation horizon N=4 and the Exact-Truncated verification policy. Diffusion-Trust uses runtime block_size: 3, which implements logical block size B=4 under HybridDiffusion's shifted decoding rule. See the evaluation guide for the full configuration and sampling interface.

The API example controls request-level sampling. The released AR-Trust proposal and verification law uses temperature 1.0, top-k 50, and top-p 0.95; Diffusion-Trust uses threshold 0.95, temperature 1.0, top-k 20, and top-p 0.95 in its algorithm configuration.

Benchmark results

The HybridDiffusion, SDAR, and Qwen3.5 values come from Table 2 of the HybridDiffusion paper; the LLaDA-mini values come from Table 1. HybridDiffusion's AR-Trust and Diffusion-Trust columns use the same checkpoint. Bold marks the best diffusion LLM result among the public comparison models in each row; * denotes a result identified in the paper as potentially under-reported. means the source did not report that result.

Benchmark SDAR
1.7B
LLaDA-2.0
mini
LLaDA-2.1
mini
HybridDiffusion-2B
AR-Trust
HybridDiffusion-2B
Diffusion-Trust
Qwen3.5-2B
AR
Knowledge & Instruction Following
ARC-Challenge 85.4 93.56 85.07 85.84 92.15
MMLU 62.9 80.53 67.60 64.14 73.59
MMLU-Pro 37.0 63.22 63.42 53.57 53.63 59.53
GPQA-Diamond 29.8 47.98 48.36 37.37 35.35 62.12
IFEval 43.4 80.78 81.33 68.95 62.66 79.48
Math
GSM8K 80.1 94.24 84.46 82.79 77.63*
MATH-500 63.2 84.40 82.20 72.20*
AIME-24 10.0 31.11 31.11 8.89*
AIME-25 2.1 36.67 36.67 26.67 26.67 12.22*
Code
HumanEval 61.6 86.59 64.02 50.61* 48.17
MBPP 61.1 81.50 68.09 55.25* 53.31
LiveCodeBench v6 5.7 31.50 28.85 15.43 9.71* 17.71

Qwen3.5-2B is the autoregressive source checkpoint and is shown as a capability-retention reference; it is not included when selecting the bolded diffusion-LLM result.

Reproduce evaluation

With a server running on port 30000, launch the complete evaluation suite from the repository's eval directory:

PORTS=30000 \
TASKS="gsm8k math500 ifeval humaneval mbpp arc_c gpqa aime2024 aime2025 mmlu mmlu_pro lcb" \
  scripts/evaluate.sh

The evaluator writes generations, scores, executed commands, and a run manifest below HYBRID_DIFFUSION_CACHE_ROOT. See the evaluation README for task-specific requirements and full-evaluation settings.

Citation

@article{zhu2026flare,
  title   = {FLARE: Diffusion for Hybrid Language Model},
  author  = {Yuchen Zhu and Jing Shi and Chongjian Ge and Hao Tan and
             Yiran Xu and Wanrong Zhu and Jason Kuen and Koustava Goswami and
             Rajiv Jain and Yongxin Chen and Molei Tao and Jiuxiang Gu},
  journal = {arXiv preprint arXiv:2606.01774},
  year    = {2026}
}

Acknowledgements

HybridDiffusion-2B is derived from Qwen3.5-2B. The serving stack builds on SGLang and FlashInfer.

Downloads last month
7
Safetensors
Model size
2B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for yuchen-zhu-zyc/HybridDiffusion-2B

Finetuned
Qwen/Qwen3.5-2B
Finetuned
(314)
this model

Collection including yuchen-zhu-zyc/HybridDiffusion-2B

Paper for yuchen-zhu-zyc/HybridDiffusion-2B