Views
No views yet
⚠️ Superseded
The main checkpoint now ships with the MTP head removed and an NVFP4lm_head— it is strictly better than this variant (17.92 GB, 2 shards).UseQwen3.8-27B-NVFP4-RTX5090instead. This repo stays up so existing pins keep working.
Qwen3.8-27B-NVFP4-RTX5090 with the native MTP draft head removed. The target model is bit-identical — same NVFP4 weights, same calibration, same chat template. Only the 15 mtp.* tensors are gone.| Parent | This variant | |
|---|---|---|
| Download | 20.59 GB | 19.74 GB (−0.85 GB, −4.1%) |
| Shards | 3 | 2 |
| Weights in VRAM | 18.80 GB | 18.80 GB (identical) |
| Speculation on SGLang | DSpark ✅ · MTP ✅ | DSpark ✅ |
| Speculation on vLLM | MTP ✅ | none |
mem usage=18.80 GB for weights with and without the head — byte-for-byte the same, because mtp.* is namespaced outside the target graph and is never allocated unless you turn speculation on. If you are hoping to free VRAM, this variant will not do that.| Drafter | Decode | Accept | Size |
|---|---|---|---|
| DSpark-NVFP4 v2 (SGLang) | 155.8 tok/s | 2.886 | 1.41 GB |
| Native MTP head (SGLang or vLLM) | 136.9 tok/s | 2.758 | 5.53 GB |
| No speculation | 81.6 tok/s | — | — |
1sglang serve --model-path gittensor-model-hub/Qwen3.8-27B-NVFP4-RTX5090-No-MTP \
2 --trust-remote-code --tp-size 1 \
3 --context-length 65536 --kv-cache-dtype fp8_e4m3 \
4 --attention-backend flashinfer --chunked-prefill-size 2048 \
5 --mamba-radix-cache-strategy extra_buffer_lazy --mamba-ssm-dtype bfloat16 \
6 --mem-fraction-static 0.90 --max-running-requests 2 \
7 --speculative-algorithm DSPARK \
8 --speculative-draft-model-path gittensor-model-hub/Qwen3.8-27B-DSpark-NVFP4 \
9 --speculative-dspark-block-size 7 --speculative-draft-model-quantization modelopt_fp4 \
10 --reasoning-parser qwen3 --tool-call-parser qwen3_coder1vllm serve gittensor-model-hub/Qwen3.8-27B-NVFP4-RTX5090-No-MTP \
2 --quantization modelopt --kv-cache-dtype fp8 --trust-remote-code \
3 --max-model-len 262144 --max-num-seqs 16 --gpu-memory-utilization 0.97 \
4 --reasoning-parser qwen3 --enable-auto-tool-choice --tool-call-parser qwen3_xml--speculative-config '{"method":"mtp"}' to this variant — the head is not present.mtp. prefix:mtp.fc.weight mtp.layers.0.self_attn.{q,k,v,o}_proj.weight
mtp.norm.weight mtp.layers.0.self_attn.{q,k}_norm.weight
mtp.pre_fc_norm_embedding.weight mtp.layers.0.mlp.{gate,up,down}_proj.weight
mtp.pre_fc_norm_hidden.weight mtp.layers.0.{input,post_attention}_layernorm.weighthf_quant_config.json already excluded mtp*). Alongside the tensor removal:config.json — text_config.mtp_num_hidden_layers 1 → 0; mtp_use_dedicated_embeddings droppedhf_quant_config.json — exclude_modules 149 → 147 (mtp*, mtp.layers.0* removed)mtp.* and became empty), index and crc32.txt regeneratedQwen3_5ForConditionalGeneration, quant_algo=NVFP4, and answers correctly.