Views
No views yet
--spec-type draft-mtp.Honest note up front: on the RTX 5090 with current llama.cpp, MTP does not yet win on this MoE for single-stream generation — the base MoE is already so fast (~250 tok/s with NVFP4-Q4_K_M) that draft + verify overhead exceeds the savings. The tuned config below gets it to break-even (-2%); the default loses ~27%. We're publishing the files anyway because (a) the MTP path is rapidly being optimized upstream and will likely flip, and (b) MTP weights are useful for downstream training/research. See the Performance section for numbers.
| File | Size | Experts | Other tensors | When to pick |
|---|---|---|---|---|
Qwen3.6-35B-A3B-NVFP4-Q4_K_M-mtp.gguf | 19 GB | NVFP4 | Q4_K_M | Recommended trunk |
Qwen3.6-35B-A3B-NVFP4-Q8_0-mtp.gguf | 20 GB | NVFP4 | Q8_0 | Higher precision attention/embeddings |
Qwen3.6-35B-A3B-NVFP4-BF16-mtp.gguf | 22 GB | NVFP4 | BF16 | Max source-fidelity for non-expert tensors |
mtp-Qwen3.6-35B-A3B-NVFP4.gguf | 3.5 GB | BF16 (MoE) | BF16/F32 | MTP draft head — required for --spec-type draft-mtp. Itself a small MoE block (256 experts, 1 layer) plus shared experts and the nextn heads |
mmproj-Qwen3.6-35B-A3B-F16.gguf | 889 MB | — | F16 vision tower | Required for image/video input |
convert_hf_to_gguf.py --no-mtp. The MTP weights are split into the separate mtp-*.gguf file so they can be loaded as a draft via --model-draft.dbe9c0c8c.-c 262144 -fa on -ctk q4_0 -ctv q4_0 -ub 256 -b 1024 --parallel 1):| Config | TG (tok/s) | Draft accept rate | Δ vs no-MTP |
|---|---|---|---|
| NVFP4-Q4_K_M, no MTP | 252.9 | — | baseline (fastest) |
| NVFP4-Q4_K_M + MTP (n-max=2, p-min=0.3) | 248.6 | 63.5% | −2% |
| NVFP4-Q4_K_M + MTP (n-max=4, p-min=0.5, default) | 184.8 | 65.6% | −27% |
n-max=2 p-min=0.3), we get within 2% of baseline. We expect this to flip once the upstream llama.cpp MoE+MTP code path is optimized — the same was true for plain NVFP4 on MoE before recent improvements landed.1llama-server \
2 -m Qwen3.6-35B-A3B-NVFP4-Q4_K_M-mtp.gguf \
3 --model-draft mtp-Qwen3.6-35B-A3B-NVFP4.gguf \
4 --spec-type draft-mtp \
5 --spec-draft-n-max 2 \
6 --spec-draft-p-min 0.3 \
7 -ngl 999 -ngld 999 \
8 -fa on -c 32768 \
9 --host 0.0.0.0 --port 80801llama-server \
2 -m Qwen3.6-35B-A3B-NVFP4-Q4_K_M-mtp.gguf \
3 -ngl 999 \
4 -fa on -c 32768 \
5 --host 0.0.0.0 --port 8080--mmproj mmproj-Qwen3.6-35B-A3B-F16.gguf to either of the above for image/video input.chat_template_kwargs.enable_thinking=false in the API.mmangkad quantizes the routed expert FFN (ffn_{down,gate,up}_exps, 120 tensors = 40 layers × 3) — attention, SSM, and shared experts stay at higher precision. The MTP block at layer 40 is itself a small MoE layer with the same 256-expert structure (kept BF16 since the source didn't quantize it).Qwen/Qwen3.6-35B-A3Bconvert_hf_to_gguf.py --no-mtp / --mtp and llama-quantize