月之暗面开源 Kimi K2.6 多模态智能体模型
moonshotai/Kimi-K2.6
月之暗面发布开源原生多模态智能体模型 Kimi K2.6,采用 MoE 架构,总参数 1T、激活参数 32B,上下文长度 256K,视觉编码器为 400M 参数的 MoonViT。
模型卡给出完整架构、评测对比和部署方式,可据此判断开源多模态智能体模型的当前水平。
🤗 huggingchat | 📰 技术博客
1. 模型简介
Kimi K2.6 是一个开源的原生多模态智能体模型,在长程编码、编码驱动的设计、主动自主执行以及基于集群的任务编排方面提升了实用能力。
核心特性
- 长程编码:K2.6 在复杂的端到端编码任务上取得显著提升,能够稳健地泛化到多种编程语言(Rust、Go、Python)以及涵盖前端、DevOps 和性能优化的多个领域。
- 编码驱动的设计:K2.6 能够将简单的提示词和视觉输入转化为可投入生产的界面和轻量级全栈工作流,以审慎的美学精度生成结构化布局、交互元素和丰富的动画。
- 升级的智能体集群:K2.6 可横向扩展至 300 个子智能体执行 4,000 个协同步骤,能够动态地将任务分解为并行的、领域专用的子任务,在一次自主运行中交付从文档到网站再到电子表格的端到端成果。
- 主动与开放编排:在自主任务方面,K2.6 在驱动持久运行的 24/7 后台智能体上表现出色,这些智能体无需人工监督即可主动管理日程、执行代码并编排跨平台操作。
2. 模型概要
| 架构 | 混合专家(MoE) |
| 总参数量 | 1T |
| 激活参数量 | 32B |
| 层数(含稠密层) | 61 |
| 稠密层数 | 1 |
| 注意力隐藏维度 | 7168 |
| MoE 隐藏维度(每个专家) | 2048 |
| 注意力头数 | 64 |
| 专家数量 | 384 |
| 每个 Token 选中的专家数 | 8 |
| 共享专家数量 | 1 |
| 词表大小 | 160K |
| 上下文长度 | 256K |
| 注意力机制 | MLA |
| 激活函数 | SwiGLU |
| 视觉编码器 | MoonViT |
| 视觉编码器参数量 | 400M |
3. 评估结果
| 基准测试 | Kimi K2.6 | GPT-5.4 (xhigh) |
Claude Opus 4.6 (max effort) |
Gemini 3.1 Pro (thinking high) |
Kimi K2.5 |
|---|---|---|---|---|---|
| 智能体 | |||||
| HLE-Full (w/ tools) |
54.0 | 52.1 | 53.0 | 51.4 | 50.2 |
| BrowseComp | 83.2 | 82.7 | 83.7 | 85.9 | 74.9 |
| BrowseComp (Agent Swarm) |
86.3 | 78.4 | |||
| DeepSearchQA (f1-score) |
92.5 | 78.6 | 91.3 | 81.9 | 89.0 |
| DeepSearchQA (accuracy) |
83.0 | 63.7 | 80.6 | 60.2 | 77.1 |
| WideSearch (item-f1) |
80.8 | - | - | - | 72.7 |
| Toolathlon | 50.0 | 54.6 | 47.2 | 48.8 | 27.8 |
| MCPMark | 55.9 | 62.5* | 56.7* | 55.9* | 29.5 |
| Claw Eval (pass^3) | 62.3 | 60.3 | 70.4 | 57.8 | 52.3 |
| Claw Eval (pass@3) | 80.9 | 78.4 | 82.4 | 82.9 | 75.4 |
| APEX-Agents | 27.9 | 33.3 | 33.0 | 32.0 | 11.5 |
| OSWorld-Verified | 73.1 | 75.0 | 72.7 | - | 63.3 |
| 编码 | |||||
| Terminal-Bench 2.0 (Terminus-2) |
66.7 | 65.4* | 65.4 | 68.5 | 50.8 |
| SWE-Bench Pro | 58.6 | 57.7 | 53.4 | 54.2 | 50.7 |
| SWE-Bench Multilingual | 76.7 | - | 77.8 | 76.9* | 73.0 |
| SWE-Bench Verified | 80.2 | - | 80.8 | 80.6 | 76.8 |
| SciCode | 52.2 | 56.6 | 51.9 | 58.9 | 48.7 |
| OJBench (python) | 60.6 | - | 60.3 | 70.7 | 54.7 |
| LiveCodeBench (v6) | 89.6 | - | 88.8 | 91.7 | 85.0 |
| 推理与知识 | |||||
| HLE-Full | 34.7 | 39.8 | 40.0 | 44.4 | 30.1 |
| AIME 2026 | 96.4 | 99.2 | 96.7 | 98.3 | 95.8 |
| HMMT 2026 (Feb) | 92.7 | 97.7 | 96.2 | 94.7 | 87.1 |
| IMO-AnswerBench | 86.0 | 91.4 | 75.3 | 91.0* | 81.8 |
| GPQA-Diamond | 90.5 | 92.8 | 91.3 | 94.3 | 87.6 |
| 视觉 | |||||
| MMMU-Pro | 79.4 | 81.2 | 73.9 | 83.0* | 78.5 |
| MMMU-Pro (w/ python) | 80.1 | 82.1 | 77.3 | 85.3* | 77.7 |
| CharXiv (RQ) | 80.4 | 82.8* | 69.1 | 80.2* | 77.5 |
| CharXiv (RQ) (w/ python) | 86.7 | 90.0* | 84.7 | 89.9* | 78.7 |
| MathVision | 87.4 | 92.0* | 71.2* | 89.8* | 84.2 |
| MathVision (w/ python) | 93.2 | 96.1* | 84.6* | 95.7* | 85.0 |
| BabyVision | 39.8 | 49.7 | 14.8 | 51.6 | 36.5 |
| BabyVision (w/ python) | 68.5 | 80.2* | 38.4* | 68.3* | 40.5 |
| V* (w/ python) | 96.9 | 98.4* | 86.4* | 96.9* | 86.9 |
脚注
- General Testing Details
- 我们报告了 Kimi K2.6 和 Kimi K2.5 在启用思考模式下的结果,Claude Opus 4.6 采用 max effort,GPT-5.4 采用 xhigh 推理强度,Gemini 3.1 Pro 采用高思考级别。
- 除非另有说明,所有 Kimi K2.6 实验均在 temperature = 1.0、top-p = 1.0 和 262,144 个 token 的上下文长度下进行。
- 未公开分数的基准测试在与 Kimi K2.6 相同的条件下重新评估,并以星号(
*)标记。除带星号注明者外,所有其他结果均引自官方报告。
- Reasoning Benchmarks
- GPT-5.4 和 Claude 4.6 的 IMO-AnswerBench 分数取自 z.ai/blog/glm-5.1。
- Humanity's Last Exam(HLE)及其他推理任务的最大生成长度为 98,304 tokens。默认情况下,我们报告 HLE 全集上的结果。对于纯文本子集,Kimi K2.6 在无工具时达到 36.4% 准确率,有工具时达到 55.5%。
- Tool-Augmented / Agentic Tasks
- 在 HLE with tools、BrowseComp、DeepSearchQA 和 WideSearch 中,Kimi K2.6 配备了搜索、代码解释器和网页浏览工具。
- 对于带工具的 HLE-Full,最大生成长度为 262,144 tokens,每步上限为 49,152 tokens。我们采用简单的上下文管理策略:一旦上下文窗口超过阈值,仅保留最近一轮与工具相关的消息。
- 对于 BrowseComp,我们报告使用与 Kimi K2.5 和 DeepSeek-V3.2 相同的 discard-all 策略进行上下文管理所获得的分数。
- 对于 DeepSearchQA,Kimi K2.6 测试未应用上下文管理,超过支持上下文长度的任务直接计为失败。Claude Opus 4.6、GPT-5.4 和 Gemini 3.1 Pro 在 DeepSearchQA 上的分数引自 Claude Opus 4.7 System Card。
- 对于 WideSearch,我们报告在“hide tool result”上下文管理设置下的结果。一旦上下文窗口超过阈值,仅保留最近一轮与工具相关的消息。
- 测试系统提示词与 Kimi K2.5 技术报告中使用的完全相同。
- Claw Eval 使用 1.1 版本进行,max-tokens-per-step = 16384。
- 对于 APEX-Agents,我们评估公开 480 任务版本中的 452 个任务,与 Artificial Analysis 的做法一致(排除具有外部运行时依赖的 Investment Banking Worlds 244 和 246)
- Coding Tasks
- Terminal-Bench 2.0 分数使用默认 agent 框架(Terminus-2)和提供的 JSON 解析器获得,运行于 preserve thinking 模式。
- 对于 SWE-Bench 系列评估(包括 Verified、Multilingual 和 Pro),我们使用了基于 SWE-agent 改编的内部评估框架。该框架包含一组最小工具——bash 工具、createfile 工具、insert 工具、view 工具、strreplace 工具和 submit 工具。
- 所有报告的编码任务分数均为 10 次独立运行的平均值。
- Vision Benchmarks
- Max-tokens = 98,304,三次运行取平均(avg@3)。
- 使用 Python 工具的设置中,多步推理的 max-tokens-per-step = 65,536,max-steps = 50。
- MMMU-Pro 遵循官方协议,保留输入顺序并在前面添加图像。
4. 原生 INT4 量化
Kimi-K2.6 采用与 Kimi-K2-Thinking 相同的原生 int4 量化方法。
5. 部署
你可以在 https://platform.moonshot.ai 上访问 Kimi-K2.6 的 API,我们为你提供兼容 OpenAI/Anthropic 的 API。为验证部署是否正确,我们还提供了 Kimi Vendor Verifier。 目前,推荐在以下推理引擎上运行 Kimi-K2.6:
- vLLM
- SGLang
- KTransformers
Kimi-K2.6 与 Kimi-K2.5 架构相同,部署方法可直接复用。
transformers 的版本要求为 >=4.57.1, <5.0.0。
部署示例可参见 模型部署指南。
6. 模型使用
下面的使用示例演示了如何调用我们的官方 API。
对于使用 vLLM 或 SGLang 部署的第三方 API,请注意:
与视频内容对话是一项实验性功能,目前仅在我们的官方 API 中支持。
推荐在 Thinking 模式下使用
temperature为1.0,在 Instant 模式下为0.6。推荐的
top_p为0.95。要使用 instant 模式,你需要在
extra_body中传入{'chat_template_kwargs': {"thinking": False}}。
聊天补全
这是一个简单的聊天补全脚本,展示了如何在 Thinking 和 Instant 模式下调用 K2.6 API。
import openai
import base64
import requests
def simple_chat(client: openai.OpenAI, model_name: str):
messages = [
{'role': 'system', 'content': 'You are Kimi, an AI assistant created by Moonshot AI.'},
{
'role': 'user',
'content': [
{'type': 'text', 'text': 'which one is bigger, 9.11 or 9.9? think carefully.'}
],
},
]
response = client.chat.completions.create(
model=model_name, messages=messages, stream=False, max_tokens=4096
)
print('====== Below is reasoning content in Thinking Mode ======')
print(f'reasoning content: {response.choices[0].message.reasoning}')
print('====== Below is response in Thinking Mode ======')
print(f'response: {response.choices[0].message.content}')
# To use instant mode, pass {"thinking" = {"type":"disabled"}}
response = client.chat.completions.create(
model=model_name,
messages=messages,
stream=False,
max_tokens=4096,
extra_body={'thinking': {'type': 'disabled'}}, # this is for official API
# extra_body= {'chat_template_kwargs': {"thinking": False}} # this is for vLLM/SGLang
)
print('====== Below is response in Instant Mode ======')
print(f'response: {response.choices[0].message.content}')
带视觉内容的聊天补全
K2.6 支持图像和视频输入。
以下示例演示了如何以图像输入调用 K2.6 API:
import openai
import base64
import requests
def chat_with_image(client: openai.OpenAI, model_name: str):
url = 'https://hf-mirror.com/moonshotai/Kimi-K2.6/resolve/main/figures/kimi-logo.png'
image_base64 = base64.b64encode(requests.get(url).content).decode()
messages = [
{
'role': 'user',
'content': [
{'type': 'text', 'text': 'Describe this image in detail.'},
{
'type': 'image_url',
'image_url': {'url': f'data:image/png;base64, {image_base64}'},
},
],
}
]
response = client.chat.completions.create(
model=model_name, messages=messages, stream=False, max_tokens=8192
)
print('====== Below is reasoning content in Thinking Mode ======')
print(f'reasoning content: {response.choices[0].message.reasoning}')
print('====== Below is response in Thinking Mode ======')
print(f'response: {response.choices[0].message.content}')
# Also support instant mode if you pass {"thinking" = {"type":"disabled"}}
response = client.chat.completions.create(
model=model_name,
messages=messages,
stream=False,
max_tokens=4096,
extra_body={'thinking': {'type': 'disabled'}}, # this is for official API
# extra_body= {'chat_template_kwargs': {"thinking": False}} # this is for vLLM/SGLang
)
print('====== Below is response in Instant Mode ======')
print(f'response: {response.choices[0].message.content}')
return response.choices[0].message.content
以下示例演示了如何以视频输入调用 K2.6 API:
import openai
import base64
import requests
def chat_with_video(client: openai.OpenAI, model_name:str):
url = 'https://hf-mirror.com/moonshotai/Kimi-K2.6/resolve/main/figures/demo_video.mp4'
video_base64 = base64.b64encode(requests.get(url).content).decode()
messages = [
{
"role": "user",
"content": [
{"type": "text","text": "Describe the video in detail."},
{
"type": "video_url",
"video_url": {"url": f"data:video/mp4;base64,{video_base64}"},
},
],
}
]
response = client.chat.completions.create(model=model_name, messages=messages)
print('====== Below is reasoning content in Thinking Mode ======')
print(f'reasoning content: {response.choices[0].message.reasoning}')
print('====== Below is response in Thinking Mode ======')
print(f'response: {response.choices[0].message.content}')
# Also support instant mode if pass {"thinking" = {"type":"disabled"}}
response = client.chat.completions.create(
model=model_name,
messages=messages,
stream=False,
max_tokens=4096,
extra_body={'thinking': {'type': 'disabled'}}, # this is for official API
# extra_body= {'chat_template_kwargs': {"thinking": False}} # this is for vLLM/SGLang
)
print('====== Below is response in Instant Mode ======')
print(f'response: {response.choices[0].message.content}')
return response.choices[0].message.content
保留思考
Kimi K2.6 支持 preserve_thinking 模式,该模式可在多轮交互中保留完整的推理内容,并提升编码智能体场景中的表现。
此功能默认关闭。以下示例演示了如何在 preserve_thinking 模式下调用 K2.6 API:
def chat_with_preserve_thinking(client: openai.OpenAI, model_name: str):
messages = [
{
"role": "user",
"content": "Tell me three random numbers."
},
{
"role": "assistant",
"reasoning_content": "I'll start by listing five numbers: 473, 921, 235, 215, 222, and I'll tell you the first three.",
"content": "473, 921, 235"
},
{
"role": "user",
"content": "What are the other two numbers you have in mind?"
}
]
response = client.chat.completions.create(
model=model_name,
messages=messages,
stream=False,
max_tokens=4096,
extra_body={'thinking': {'type': 'enabled', 'keep': 'all'}}, # this is for official API
# extra_body={"chat_template_kwargs": {"thinking":True, "preserve_thinking": True}}, # this is for vLLM/SGLang
# We recommend enabling preserve_thinking only in think mode.
)
# the assistant should mention 215 and 222 that appear in the prior reasoning content
print(f"response: {response.choices[0].message.reasoning}")
return response.choices[0].message.content
交错思考与多步工具调用
K2.6 与 K2 Thinking 采用相同的交错思考与多步工具调用设计。使用示例请参阅 K2 Thinking 文档。
编码智能体框架
Kimi K2.6 与作为其智能体框架的 Kimi Code CLI 配合效果最佳——欢迎在 https://www.kimi.com/code 试用。
7. 许可证
代码仓库和模型权重均依据 Modified MIT License 发布。
8. 第三方声明
9. 联系我们
如有任何问题,请通过 [email protected] 联系我们。
来源:月之暗面 Kimi 模型发布 · hf-mirror.com