Improve model card with paper info, metadata and links

#1
by nielsr HF Staff - opened
Files changed (1) hide show
  1. README.md +29 -2
README.md CHANGED
@@ -1,13 +1,40 @@
 
 
 
 
 
 
1
  # Qwen3-4B-A2D-untrained-dllm-convert
2
 
3
- Qwen3-4B converted to A2D architecture (bidirectional attention) using [dllm convert pipeline](https://github.com/ZHZisZZ/dllm/blob/b8d76ff74b2053d359cd88fedfbc6362db17e3d7/examples/a2d/README.md?plain=1#L49-L53).
 
 
4
 
 
 
5
  - **Base model**: [Qwen/Qwen3-4B](https://huggingface.co/Qwen/Qwen3-4B)
 
 
 
6
  - **Architecture**: A2D-Qwen3 (non-causal attention, same weights as original)
7
  - **Parameters**: 4.02B
8
  - **Vocab size**: 151936
9
  - **Model type**: `a2d-qwen3`
10
 
11
- This model has the original Qwen3-4B weights with bidirectional (non-causal) attention. No diffusion pretraining or SFT has been applied.
12
 
13
  **Mask token registration**: The mask token `<|MASK|>` (ID 151669) is registered in the tokenizer for use with diffusion-based language modeling. The original Qwen3 tokenizer includes `<|MASK|>` in `special_tokens_map.json` but does not register it in `tokenizer_config.json`, so `tokenizer.mask_token_id` returns `None`. We fixed this by adding `<|MASK|>` to the `added_tokens_decoder` section and the `mask_token` field in `tokenizer_config.json`, and adding the full `mask_token` entry in `special_tokens_map.json`. After this fix, `tokenizer.mask_token_id` correctly returns `151669`.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+ base_model: Qwen/Qwen3-4B
4
+ pipeline_tag: text-generation
5
+ ---
6
+
7
  # Qwen3-4B-A2D-untrained-dllm-convert
8
 
9
+ This repository contains the Qwen3-4B model converted to the A2D architecture (bidirectional attention), as presented in the paper [Data-Efficient Autoregressive-to-Diffusion Language Models via On-Policy Distillation](https://huggingface.co/papers/2606.06712).
10
+
11
+ This specific artifact serves as an **untrained student initialization** for the On-Policy Distillation (OPD) process to transform an autoregressive model into a diffusion language model.
12
 
13
+ - **Project Page:** [https://opdlm.vercel.app/](https://opdlm.vercel.app/)
14
+ - **GitHub Repository:** [https://github.com/divelab/OPDLM](https://github.com/divelab/OPDLM)
15
  - **Base model**: [Qwen/Qwen3-4B](https://huggingface.co/Qwen/Qwen3-4B)
16
+
17
+ ## Model Details
18
+
19
  - **Architecture**: A2D-Qwen3 (non-causal attention, same weights as original)
20
  - **Parameters**: 4.02B
21
  - **Vocab size**: 151936
22
  - **Model type**: `a2d-qwen3`
23
 
24
+ This model has the original Qwen3-4B weights with bidirectional (non-causal) attention. It was converted using the [dllm convert pipeline](https://github.com/ZHZisZZ/dllm/blob/b8d76ff74b2053d359cd88fedfbc6362db17e3d7/examples/a2d/README.md?plain=1#L49-L53). No diffusion pretraining or SFT has been applied.
25
 
26
  **Mask token registration**: The mask token `<|MASK|>` (ID 151669) is registered in the tokenizer for use with diffusion-based language modeling. The original Qwen3 tokenizer includes `<|MASK|>` in `special_tokens_map.json` but does not register it in `tokenizer_config.json`, so `tokenizer.mask_token_id` returns `None`. We fixed this by adding `<|MASK|>` to the `added_tokens_decoder` section and the `mask_token` field in `tokenizer_config.json`, and adding the full `mask_token` entry in `special_tokens_map.json`. After this fix, `tokenizer.mask_token_id` correctly returns `151669`.
27
+
28
+ ## Citation
29
+
30
+ ```bibtex
31
+ @misc{su2026opdlm,
32
+ title={Data-Efficient Autoregressive-to-Diffusion Language Models via On-Policy Distillation},
33
+ author={Xingyu Su and Jacob Helwig and Shubham Parashar and Atharv Chagi and Lakshmi Jotsna and Degui Zhi and James Caverlee and Dileep Kalathil and Shuiwang Ji},
34
+ year={2026},
35
+ eprint={2606.06712},
36
+ archivePrefix={arXiv},
37
+ primaryClass={cs.CL},
38
+ url={https://arxiv.org/abs/2606.06712},
39
+ }
40
+ ```