Views
No views yet
KimiK25ForConditionalGeneration)recipe.yaml and the published quantization configuration.1from compressed_tensors.entrypoints.convert import CompressedTensorsDequantizer
2from llmcompressor import model_free_ptq
3
4MODEL_ID = "moonshotai/Kimi-K2.6"
5SAVE_DIR = "Kimi-K2.6-NVFP4"
6
7ignore = [
8 "re:.*mlp.gate$",
9 "re:.*lm_head",
10 "re:.*self_attn.*",
11 "re:.*kv_a_proj_with_mqa$",
12 "re:.*q_a_proj$",
13 "re:.*vision_tower.*",
14 "re:.*embed_tokens$",
15 "re:.*norm$",
16 "re:.*mm_projector.*",
17 "re:.*vision.*",
18]
19
20model_free_ptq(
21 model_stub=MODEL_ID,
22 save_directory=SAVE_DIR,
23 scheme="NVFP4",
24 ignore=ignore,
25 converter=CompressedTensorsDequantizer(
26 MODEL_ID,
27 quant_config_key="text_config.quantization_config",
28 ignore=ignore,
29 ),
30 max_workers=2,
31 device="cuda:0",
32)1vllm serve RedHatAI/Kimi-K2.6-NVFP4 \
2 --trust-remote-code \
3 --mm-encoder-tp-mode data \
4 --tool-call-parser kimi_k2 \
5 --reasoning-parser kimi_k2 \
6 --enable-auto-tool-choice1from openai import OpenAI
2
3client = OpenAI(base_url="http://127.0.0.1:8000/v1", api_key="EMPTY")
4
5resp = client.chat.completions.create(
6 model="RedHatAI/Kimi-K2.6-NVFP4",
7 messages=[{"role": "user", "content": "Explain how transformers use attention."}],
8)
9
10print(resp.choices[0].message.content)0.22.1) OpenAI-compatible endpoint.| Category | Benchmark | Score |
|---|---|---|
| Reasoning and instruction following | AIME25 (pass@1, avg@8) | 96.25% |
| Reasoning and instruction following | GPQA Diamond (pass@1, avg@3) | 91.08% |
| Reasoning and instruction following | MATH-500 (pass@1, avg@3) | 93.13% |
| Reasoning and instruction following | MMLU-Pro Chat (custom-extract, avg@3) | 86.75% |
| Reasoning and instruction following | GSM8K Platinum CoT (strict-match, avg@3) | 92.50% |
| Reasoning and instruction following | GSM8K Platinum CoT (flexible-extract, avg@3) | 96.94% |
| Reasoning and instruction following | IFEval (prompt-level strict, avg@3) | 94.02% |
| Reasoning and instruction following | IFEval (instruction-level strict, avg@3) | 95.96% |
| Agentic function calling (accuracy) | BFCL v4 non_live | 86.44% |
| Agentic function calling (accuracy) | BFCL v4 live | 78.31% |
| Agentic function calling (accuracy) | BFCL v4 multi_turn | 63.75% |
| Agentic function calling (accuracy) | BFCL v4 memory | 63.23% |
| Agentic function calling (accuracy) | BFCL v4 web_search | 13.00% |
| Agentic coding | SWE-Bench Lite (dev) | 21.74% |
moonshotai/Kimi-K2.6)| Benchmark | Base model (moonshotai/Kimi-K2.6) | This model | Recovery |
|---|---|---|---|
| AIME25 (pass@1, avg@8) | 90.00% | 96.25% | 106.94% |
| GPQA Diamond (pass@1, avg@3) | 84.51% | 91.08% | 107.77% |
| MATH-500 (pass@1, avg@3) | 93.53% | 93.13% | 99.57% |
| MMLU-Pro Chat (custom-extract, avg@3) | 86.70% | 86.75% | 100.06% |
| GSM8K Platinum CoT (strict-match, avg@3) | 93.80% | 92.50% | 98.61% |
| GSM8K Platinum CoT (flexible-extract, avg@3) | 96.33% | 96.94% | 100.63% |
| IFEval (prompt-level strict, avg@3) | 94.82% | 94.02% | 99.16% |
| IFEval (instruction-level strict, avg@3) | 96.52% | 95.96% | 99.42% |
1lm_eval --model local-chat-completions \
2 --tasks gsm8k_platinum_cot_llama \
3 --model_args "model=RedHatAI/Kimi-K2.6-NVFP4,max_length=40960,base_url=http://127.0.0.1:8000/v1/chat/completions,num_concurrent=32,max_retries=3,tokenized_requests=False,tokenizer_backend=None,timeout=3600" \
4 --num_fewshot 0 \
5 --apply_chat_template \
6 --output_path results_gsm8k_platinum.json \
7 --seed 1234 \
8 --gen_kwargs "do_sample=True,temperature=1.0,top_p=0.95,top_k=20,min_p=0.0,max_gen_toks=64000,presence_penalty=1.5,repetition_penalty=1.0,seed=1234"1model_parameters:
2 provider: "hosted_vllm"
3 model_name: "hosted_vllm/RedHatAI/Kimi-K2.6-NVFP4"
4 base_url: "http://127.0.0.1:8000/v1"
5 api_key: "EMPTY"
6 timeout: 3600
7 max_model_length: 40960
8 concurrent_requests: 8
9 generation_parameters:
10 temperature: 1.0
11 max_new_tokens: 65536
12 top_p: 0.95
13 seed: 1234
14 top_k: 20
15 presence_penalty: 1.51lighteval endpoint litellm litellm_config.yaml \
2 "aime25@1@8|0,math_500@1@3|0,gpqa:diamond@1@3|0" \
3 --output-dir results_lighteval \
4 --save-details1# BFCL categories: non_live, live, multi_turn, memory, web_search
2./scripts/bfcl/run_bfcl_local.sh kimi_nvfp4 non_live
3./scripts/bfcl/run_bfcl_local.sh kimi_nvfp4 live
4./scripts/bfcl/run_bfcl_local.sh kimi_nvfp4 multi_turn
5./scripts/bfcl/run_bfcl_local.sh kimi_nvfp4 memory
6./scripts/bfcl/run_bfcl_local.sh kimi_nvfp4 web_search1# SWE-Bench Lite dev (full split)
2SWEBENCH_SUBSET=lite SWEBENCH_SPLIT=dev SWEBENCH_SLICE= \
3 ./scripts/swebench/run_swebench_lite_local.sh kimi_nvfp4
4
5# Official SWE-bench resolved-rate evaluation
6/home/shubhra/environments/mini-swe-agent/bin/python -m swebench.harness.run_evaluation \
7 --dataset_name princeton-nlp/SWE-Bench_Lite \
8 --split dev \
9 --predictions_path /home/shubhra/kimik2.6_evals/results/swebench_resolved_eval/kimi_nvfp4_lite_dev_preds_merged.json \
10 --max_workers 4 \
11 --run_id kimi_nvfp4_lite_dev_20260701_resolvedevery_eval_ever/aime25.jsonevery_eval_ever/gpqa_diamond.jsonevery_eval_ever/gsm8k_platinum_cot_llama.jsonevery_eval_ever/ifeval.jsonevery_eval_ever/math_500.jsonevery_eval_ever/mmlu_pro_chat.jsonevery_eval_ever/bfcl_v4.jsonevery_eval_ever/swebench_lite_dev.json