Kimi-K3.1-Pro-Global-Pruned-30
This model applies Nota AI's non-uniform expert pruning (30.4% of routed experts removed) to moonshotai/Kimi-K3.1-Pro.
512K context on 8 x B200 (TP8) with a 1,045 GiB checkpoint, FP8 KV cache and DSpark speculative decoding
The original MXFP4 checkpoint (1,454 GiB) does not fit in 8 x B200 memory; the vLLM recipe serves it on
8 x B300. 512K uses --gpu-memory-utilization 0.98; all other arguments follow the vLLM recipe.
- Routed experts: 82,432 → 57,408 (600–712 per layer; the first two and last two MoE layers keep all 896; layer 0 is dense)
- Experts per layer:
text_config.num_experts_per_layerinconfig.json; kept expert ids:pruning_info.json - Checkpoint size: 1,454 GiB → 1,045 GiB
- With the vLLM recipe settings plus FP8 KV cache (max-model-len 524,288), this model serves on NVIDIA B200 × 8 (TP8) with a KV cache of 663,070 tokens, speculative decoding and the vision encoder enabled, while the original checkpoint does not fit on B200 × 8
- Not supported with this checkpoint: expert parallel load balancing (EPLB) and the
latency_specializeddecode path
Installation
Kimi-K3.1-Pro support is not in a vLLM release yet; use the vllm/vllm-openai:kimi-k31 image
(vLLM 0.1.dev24216+g266e88c05) and patch the vLLM package inside it.
cd patch
python apply_patch.py --dry-run # show the changes
python apply_patch.py # apply the patch (originals are backed up to vllm/.nota_patch_backup/)
python apply_patch.py --revert # restore the original files
export VLLM_ENGINE_READY_TIMEOUT_S=3600
vllm serve <this repo> \
--trust-remote-code \
--tensor-parallel-size 8 \
--load-format fastsafetensors \
--enable-auto-tool-choice \
--tool-call-parser kimi_k3 \
--reasoning-parser kimi_k3 \
--speculative-config '{"model":"Inferact/Kimi-K3.1-Pro-DSpark-preview","num_speculative_tokens":5,"method":"dspark","draft_sample_method":"probabilistic"}' \
--kv-cache-dtype fp8 \
--max-model-len 524288 \
--gpu-memory-utilization 0.98 \
--max-num-batched-tokens 8192 \
--max-num-seqs 128 \
--disable-flashinfer-autotune
Performance (vs. the original)
| Benchmark | Original (model card) | Ours (B200 × 8) | Δ |
|---|---|---|---|
| IFEval (English) | - | 97.31 | - |
| IFBench (English) | - | 82.21 | - |
| GPQA-Diamond (English) | 94.20 | 94.44 | +0.24 |
| AIME 2026 (English) | - | 99.17 | - |
| LiveCodeBench v6 (English) | - | 92.37 | - |
| BenchMAX IFEval-ko (Korean) | - | 93.56 | - |
| KoBALT (Korean) | - | 73.72 | - |
| CLIcK (Korean) | - | 86.35 | - |
- Max generation length: 65,536 tokens (including reasoning); reasoning effort max, temperature 1.0, top-p 0.95 (the settings of the Kimi-K3.1-Pro model card)
- Original: score reported in the Kimi-K3.1-Pro model card; the other benchmarks are not reported there, and the original does not fit on B200 × 8 for our own evaluation
Notification Commitment
The full Notification Commitment you agree to when requesting access to this repository is in
NOTIFICATION_COMMITMENT.md. If any of its criteria apply to you, notify Nota at
contact@nota.ai in advance. This commitment does not restrict, modify, or supersede the
license below.
License
This model is licensed under the Kimi K3.1-Pro License (LICENSE).
You must not use this model in a manner that infringes, misappropriates, or otherwise violates any third party’s rights, including intellectual property rights.