Views
No views yet
modelopt).safetensors (compatible with vLLM via --quantization modelopt)| Decision | Rationale |
|---|---|
| Vision encoder unquantized | Visual features are highly precision-sensitive. Quantizing the vision tower severely degrades image understanding and multimodal alignment. |
| MTP modules unquantized | Multi-Token Prediction (speculative decoding) heads are small in parameter count. Quantizing them yields minimal memory savings but causes significant accuracy loss. |
| MTP written as separate shard | Isolated into model_mtp.safetensors. Safetensors round-tripping during standard saving can corrupt existing float8 scale binary representations. |
| 256 samples / 2048 length | Calibrated using the neuralmagic/calibration dataset (LLM split). This setup balances calibration quality perfectly against GPU time. |
Qwen3_5ForConditionalGeneration model in BF16 onto the GPU.neuralmagic/calibration, tokenized with the official chat template (Max length: 2,048 tokens).NVFP4_DEFAULT_CFG with explicit disable rules for *visual* (vision encoder) and *mtp* (multi-token prediction heads).mtq.quantize() with a forward loop across all 256 calibration samples, collecting per-layer activation statistics (amax values) to compute static FP4 scaling factors.export_hf_checkpoint(), outputting FP4 weights and float8 input_scales.mtp.* tensors from the original BF16 model and wrote them into a separate shard (model_mtp.safetensors). Updated model.safetensors.index.json accordingly to prevent loading/saving artifacts.quantization_config.ignore in config.json, instructing vLLM to automatically bypass quantization and load these layers in BF16.1python3 -m vllm.entrypoints.openai.api_server \
2 --model /path/to/Qwopus3.6-27B-v2-NVFP4 \
3 --served-model-name Qwopus3.6-27B-v2-NVFP4 \
4 --quantization modelopt \
5 --trust-remote-code \
6 --dtype auto \
7 --gpu-memory-utilization 0.93 \
8 --max-model-len 112000 \
9 --max-num-seqs 4 \
10 --max-num-batched-tokens 8192 \
11 --enable-prefix-caching \
12 --enable-chunked-prefill \
13 --enable-auto-tool-choice \
14 --tool-call-parser qwen3_coder \
15 --default-chat-template-kwargs '{"enable_thinking": true}' \
16 --speculative-config '{"method": "mtp", "num_speculative_tokens": 1}' \
17 --reasoning-parser qwen3 \
18 --host 0.0.0.0 \
19 --port 8000