Views
No views yet
Qwen/Qwen3-4B, quantized post-training to
GPTQ int4 (W4A16, group=32, symmetric) and verified as a
DSpark speculative-decoding target
(draft: deepseek-ai/dspark_qwen3_4b_block7).chosen_win ≥ 0.4 (hit after ~1.4 epochs), and merged it into the base weights.
The anti-loop preference flips from 0% to 46% chosen-win during training.| config | tok/s | DSpark accept |
|---|---|---|
| this model + DSpark k=7 + CUDA graphs | 473 (peaks 576) | 24.7% |
| this model, native (no speculation) | 325 | — |
| antidoom merged bf16 + DSpark k=7 | 271 | 24.3% |
| reference: original Qwen3-4B bf16 + DSpark k=7 | 261 | 25.1% |
| reference: official Qwen3-4B-AWQ + DSpark k=7 | 409 | 25.6% |
1from vllm import LLM, SamplingParams
2from transformers import AutoTokenizer
3
4MODEL = "Danny-Dasilva/Qwen3-4B-antidoom-W4A16-GPTQ-g32-DSpark"
5DRAFT = "deepseek-ai/dspark_qwen3_4b_block7"
6
7llm = LLM(
8 model=MODEL,
9 max_model_len=8192,
10 attention_backend="FLASHINFER",
11 speculative_config={
12 "method": "dspark",
13 "model": DRAFT,
14 "num_speculative_tokens": 7, # draft block size; keep at 7
15 "attention_backend": "TRITON_ATTN",
16 },
17)
18tok = AutoTokenizer.from_pretrained(MODEL)
19prompt = tok.apply_chat_template([{"role": "user", "content": "Hello!"}],
20 add_generation_prompt=True, tokenize=False)
21print(llm.generate([prompt], SamplingParams(temperature=0.0, max_tokens=256))[0].outputs[0].text)temperature=0.01, prompt sources filtered to code/instruction-following (3-8× higher loop yield
than math/QA), pair budget 328, num_epochs=3 with the built-in chosen_win ≥ 0.4 early stop.Qwen/Qwen3-4B (bf16) → antidoom FTPO LoRA merge → GPTQ W4A16 g32