Kimi-K2技术报告解读:万亿参数大模型,开源模型新SOTA
1.简介
Kimi K2 是由月之暗面团队推出的开源万亿级 MoE 大模型,总参数量 1.04 T,激活 32 B,主打“开放式智能体能力”。它用新提出的 MuonClip 优化器在 15.5 T token 上完成零损失尖峰预训练,显著提升了 token 效率;后训练阶段通过大规模合成工具使用轨迹与统一 RL 框架(可验证奖励 + 自我批判奖励)进一步强化代理、推理与代码能力。K2 在 SWE-bench、τ2-bench、ACE、LiveCodeBench、AIME、GPQA-Diamond 等十余项基准上刷新开源非思考模型 SOTA,逼近甚至超越 Claude 4、GPT-4.1 等闭源模型,并在 LMSYS 排行榜上位列开源第一、总榜第五。团队开源了基座与指令模型权重,以推动社区在软件工程和智能体方向的研究与应用。
• 作者提出 MuonClip 优化器,将高 token 效率的 Muon 算法与稳定机制 QK-Clip 融合。借助 MuonClip,模型在 15.5 万亿 token 上完成预训练,全程未出现一次损失尖峰。
• 作者构建了大规模智能体数据合成管线,可在仿真与真实环境中系统生成工具调用示范。该管线自动构建多样化工具、智能体、任务与轨迹,产出高保真、可验证的大规模智能体交互数据。
• 作者设计了一套通用强化学习框架,将可验证奖励 RLVR 与自我批判的评分奖励机制结合。模型既从外部任务中学习,也通过评价自身输出实现自我对齐,从而把对齐能力从静态场景拓展到开放领域。
权重地址:https://huggingface.co/moonshotai/Kimi-K2-Instruct
论文地址:https://github.com/MoonshotAI/Kimi-K2/blob/main/tech_report.pdf
在线体验:Kimi - 会推理解析,能深度思考的AI助手
技术博客:Kimi K2: Open Agentic Intelligence
-
-
2.预训练
Kimi K2 的基座模型为一万亿参数的稀疏混合专家 Transformer模型,在 15.5 万亿高质量 token 上完成预训练。模型架构采用超稀疏 MoE 与多头潜在注意力 MLA,其设计源自经验性的缩放律分析,与 DeepSeek-V3 类似。
鉴于高质量人工数据日益稀缺,作者认为 token 效率正成为大模型规模扩展的关键系数。为此,作者提出一整套旨在最大化 token 效率的预训练技术:具体而言,采用 token 高效的 Muon 优化器,并通过引入 QK-Clip 来消除其训练不稳定;同时引入合成数据生成,进一步从有限的高质量 token 中榨取价值。
-
2.1 MuonClip:稳定训练与权重裁剪
作者使用 token 高效的 Muon 优化器训练 Kimi K2,并在其中加入权重衰减与一致的更新 RMS 缩放。先前在 Moonlight 中的实验表明,在相同的算力预算与模型规模下,Muon 显著优于 AdamW,因此成为提升大模型 token 效率的有效手段。
Muon 在规模扩展中的训练不稳定性
尽管 Muon 高效,但在放大训练规模时出现挑战:注意力 logits 爆炸导致训练不稳定,这一问题在 Muon 中比在 AdamW 中更频繁出现。现有缓解策略并不够。例如,logit soft-cap 直接裁剪注意力 logits,但在裁剪生效前,query 与 key 的点积仍可能过度增长。另一方面,Query-Key Normalization 由于 MLA 在推理时并不完全实例化 Key 矩阵,因此无法应用于多头潜在注意力。
Muon 与 Adam(具体指 AdamW)的核心区别体现在梯度更新方式
- Adam 采用逐元素自适应学习率:
,其中
和
是一阶和二阶矩的指数滑动平均,更新是逐元素的。
- Muon 在权重矩阵级别进行更新,使用矩阵符号函数(matrix sign)和牛顿-舒尔茨迭代来保持更新矩阵的正交性和谱范数稳定性:
,更新是**整体矩阵乘法**,而非逐元素。
用 QK-Clip 驯服 Muon
为解决此问题,作者提出一种新的权重裁剪机制 QK-Clip,以显式约束注意力 logits。QK-Clip 在每次参数更新后,对 query 与 key 的投影权重进行重新缩放,限制注意力 logits 的增长。
注意力输出为
作者定义每个注意力头的最大 logit 为在该批次 B 内 softmax 输入的最大值:,其中 i,j 是训练样本 X 中不同 token 的索引。
当 超过目标阈值 T 时,执行 QK-Clip。对 query 和 key 的投影矩阵做等比例缩放:
重要的是,这一操作不会改动当前步骤的前向/反向计算——作者只是用最大 logit 作为信号,决定控制权重增长的力度。
作者观察到在实际训练中,仅有少数注意力头会出现 logit 爆炸。为将副作用降至最低,作者仅对需要控制的头执行 QK-Clip。对于常规多头注意力(MHA),裁剪操作直接作用于相应权重即可;而在 MLA 中,作者仅裁剪未被共享的头专属分量:
与
(每头专属分量),各自按
缩放;
(每头专属旋转分量),按 h 缩放;
(共享旋转分量),保持不动,避免影响其他头。
MuonClip:新优化器
作者将 Muon、权重衰减、一致的 RMS 匹配以及 QK-Clip 整合为一个统一优化器,命名为 MuonClip(见算法 1)。
作者通过多项扩展实验验证 MuonClip 的有效性。首先,使用 vanilla Muon 训练一个中等规模的 9B 激活 / 53B 总参数 MoE 模型。如图 2(左)所示,最大注意力 logit 迅速突破 10^2 量级,表明在 Muon 训练到该规模时,注意力 logit 爆炸已十分明显。此量级的 logit 通常会在训练中带来严重损失尖峰乃至偶发散。
随后,作者证明 QK-Clip 不会降低模型性能,并确认 MuonClip 优化器在保留 Muon 优化特性的同时,对损失轨迹没有任何负面影响。
最终,作者使用 MuonClip(阈值 τ = 100)训练大规模 MoE 模型 Kimi K2,并在整个训练过程中持续监测最大注意力 logits(见图 2 右)。训练伊始,由于 QK-Clip 的作用,logits 被限制在 100;随着训练推进,最大 logits 逐渐衰减到典型工作区间,且无需再调整 τ。重要的是,如图 3 所示,训练损失始终平滑稳定,没有出现任何可观测的尖峰,从而验证了 MuonClip 在大规模语言模型训练中能够对注意力动态实现稳健且可扩展的控制。
-
2.2 预训练数据:通过改写提升 token 效用
token 效率指训练时每消耗一个 token 所能带来的性能提升。token 效用——即每个 token 对学习信号的有效贡献——越高,对模型参数的更新就越有冲击力,从而直接提升 token 效率。最简单的提升手段是重复曝光同一份 token,但这容易导致过拟合、泛化下降。
作者设计了一条精密的改写流水线,可在不显著引发过拟合的前提下,放大高质量 token 的体积。本文重点介绍两条面向特定领域的改写技术——分别针对知识领域与数学领域——实现受控的数据增强。
知识数据改写
在自然知识密集型文本上预训练面临两难:单轮遍历不足以充分吸收知识,而多轮重复又带来收益递减与过拟合风险。为提升高质量知识 token 的效用,作者提出如下合成改写框架:
- 风格与视角多样的提示:为在保持事实准确性的同时提升语言多样性,作者采用一系列精心设计的提示,引导大模型以不同风格、不同视角对原文进行忠实改写。
- 分块自回归生成:为保持长文档的全局连贯并避免信息丢失,作者采用基于分块的自回归重写策略:将文本切分为片段,逐段改写后再拼接成完整段落,从而缓解大模型隐式输出长度限制带来的截断问题。流程概览见图 4。
- 保真度验证:为保证改写内容与原文一致,作者对每段改写文本进行语义对齐校验,作为进入训练前的首轮质控。
作者在 SimpleQA 上对比了数据改写与多轮重复的效果:使用 K2 早期检查点,比较三种训练策略:
(1) 原始数据重复 10 轮;
(2) 改写一次后重复 10 轮;
(3) 改写 10 次后仅训练 1 轮。
表 1 显示准确率随策略递进持续提升,验证了基于改写的数据增强效果。作者已将该方法扩展到其他大规模知识语料,每份语料最多改写两次,结果同样积极。
数学数据改写
为强化数学推理能力,作者将高质量数学文档改写成“学习笔记”风格,沿用 SwallowMath 的方法论。此外,作者还把其他语言的高质量数学资料译成英文,进一步丰富数据多样性。尽管改写子集的初步实验结果喜人,但把合成数据作为持续扩展策略仍处于积极研究阶段。主要挑战包括:在保持事实准确性的前提下将方法推广到多样化源领域、减少幻觉与意外毒性、并确保面向超大规模数据的可扩展性。
预训练数据总览
Kimi K2 的预训练语料共 15.5 万亿 token,覆盖四大领域:网页文本、代码、数学与知识。大多数处理流程沿用 Kimi K1.5 的方法。作者对每个领域均进行严格正确性与质量验证,并设计针对性数据实验,确保精选语料兼具高多样性与高效能。
-
2.3 模型架构
Kimi K2 是一个拥有 1.04 万亿参数的稀疏混合专家(MoE)Transformer 模型,每次前向激活 320 亿参数。其架构沿袭 DeepSeek-V3 的设计,采用多头潜在注意力(MLA)机制,模型隐藏维度为 7168,专家隐藏维度为 2048。作者的缩放律分析表明,在固定激活参数规模(即固定计算量)的前提下,继续提高稀疏度可带来显著性能提升,因此将专家总数从 256 增加到 384。为降低推理阶段的计算开销,作者将注意力头数从 128 减至 64。表 2 列出了 Kimi K2 与 DeepSeek-V3 的详细架构对比。
稀疏度缩放律
作者针对 MoE 家族提出了稀疏度缩放律。稀疏度定义为总专家数与激活专家数之比。
通过严格的小规模实验,作者观察到:在激活参数(FLOPs)固定的情况下,增加总专家数(即提高稀疏度)能够一致地降低训练与验证损失,从而提升整体性能(见图 5)。具体而言,在计算最优的稀疏度缩放律下,若目标验证损失同为 1.5,稀疏度 48 相比稀疏度 8、16、32 分别节省 1.69×、1.39×、1.15× 的 FLOPs。虽然继续提高稀疏度可带来额外收益,但会显著增加基础设施复杂度。为在性能与成本间取得平衡,作者为 Kimi K2 选择稀疏度 48,即每次前向从 384 位专家中激活 8 位。
注意力头数量
DeepSeek-V3 将注意力头数设为层数的两倍,以更好利用内存带宽并提高计算效率。然而,随着序列长度增长,加倍注意力头会带来显著的推理开销,在长序列场景下反而降低效率。作者在同等 token 训练条件下,比较了“头数等于层数”与“头数两倍于层数”两种配置在不同计算预算下的验证损失。结果显示,加倍注意力头仅能带来 0.5%–1.2% 的验证损失改善(见图 6)。鉴于稀疏度 48 已提供强劲性能,这种边际收益无法抵消推理成本的增加,因此作者最终选择 64 个注意力头。
-
2.4 训练基础设施
2.4.1 计算集群
Kimi K2 在一套配备 NVIDIA H800 GPU 的集群上完成训练。每个 H800 节点配备 2 TB 内存和 8 张 GPU,节点内部通过 NVLink 与 NVSwitch 互联;跨节点则使用 8×400 Gbps RoCE 网络进行通信。
2.4.2 面向模型规模的并行策略
大模型训练往往面临资源动态变化。与其针对特定资源量设计单一并行方案,作者采用了灵活策略,使得 Kimi K2 可以在任意为 32 的整数倍的节点数上训练。该策略组合了以下并行方式:
• 16 路流水线并行(PP)并引入虚拟阶段;
• 16 路专家并行(EP);
• ZeRO-1 数据并行。
在此配置下,若把模型参数以 BF16 存储、梯度累加缓冲区以 FP32 存储,共需约 6 TB GPU 显存,分布在 256 张 GPU 的模型并行组上。优化器状态的放置随训练规模而变:
- 节点总数较大时,优化器状态被分布式存储,每张设备的显存占用可忽略不计;
- 节点总数较小时(例如 32 节点),可将部分优化器状态卸载到 CPU。
该设计允许作者在小规模和大规模实验中使用同一套并行配置,每张 GPU 平均只需约 30 GB 显存来存放所有状态,其余显存全部留给激活值。这种一致性大幅简化了系统,显著加快了实验迭代速度。
-
EP 通信与交错 1F1B 的重叠
通过增加热身微批次数量,作者可以在标准交错 1F1B 调度下把 EP 的 all-to-all 通信与计算重叠。相比之下,DualPipe 需要将参数与梯度内存翻倍,从而必须进一步增大并行度以弥补额外开销;而继续增大 PP 会引入更多气泡,增大 EP 又会带来更高通信成本。对超过 1 万亿参数的模型而言,这些额外成本过高,因此作者未采用 DualPipe。
“DualPipe” 指的是 DeepSeek-V3 论文(Hu et al., 2024)提出的一种 流水线并行调度策略,其核心思想是:同时运行两条方向相反的流水线,一条做前向计算,另一条做反向计算,从而把原本要串行等待的通信时间“隐藏”在计算里,理论上实现 零气泡(zero-bubble) 的流水线并行。
EP 通信:在 MoE(Mixture-of-Experts)模型里,EP = Expert Parallelism(专家并行)。每个 token 只激活全部专家里的 8 个,因此需要把 token 路由到拥有目标专家的 GPU,再把计算结果汇总回来。这一来一回的 all-to-all 集合通信就叫 。
1F1B = One-Forward-One-Backward,是流水线并行中最常用的调度策略:
先让流水线 热身,逐层把 micro-batch 前向推到底;
进入 稳态 后,每个 GPU 严格按“前向 1 次 → 反向 1 次”的节奏交替执行,减少激活缓存并降低气泡。
不过,交错 1F1B 将模型切分为更多阶段,会带来不可忽视的 PP 通信开销。为降低此成本,作者把每个微批次的权重-梯度计算与其反向传播解耦,使之与对应的 PP 通信并行执行。最终,除热身阶段外,所有 PP 通信均可被有效覆盖。
-
更小的 EP 规模
因为注意力头从 128 砍到 64,注意力算得快了,专家并行(EP)如果还是原来那么大,就会“算完等通信”,GPU 空转。于是把 EP 直接压到最小——16 路。这样做有两个好处:
-
EP 通信时间本身被压缩到最短;
-
专家分布更宽松,不用费劲做负载均衡就能跑满速。
在为参数、梯度缓冲区和优化器状态预留显存之后,每张 GPU 的剩余空间已不足以容纳完整的 MoE 激活张量。为了确保激活内存始终落在设备限制之内——特别是对 1F1B 热身阶段会累积最大激活张量的前几个流水线阶段——作者采用了以下技术。
-
选择性重算
显存被参数、梯度、优化器状态占掉大半,剩下的放不下全部激活。作者挑那些“占地方多但算起来便宜”的算子做重算:LayerNorm、SwiGLU、MLA 上投影,还有 MoE 的下投影。
该重算步骤虽非强制,却能在训练初期因专家分布不均而显存紧张时,有效避免程序崩溃。
-
FP8 存储不敏感激活
把 对数值误差不敏感、但显存占用大的激活张量(例如 MoE 上投影、SwiGLU 的输入)从前向计算时的 BF16 直接 离线量化 成 FP8-E4M3 格式保存;
小规模实验显示,此举不会带来可测的损失上升。鉴于前期实验曾观察到潜在的精度风险,作者未将 FP8 用于实际计算。
激活 CPU 卸载
剩下的激活直接搬到 CPU RAM。系统里专门跑了一个“复制引擎”:在 GPU 做反向的同一时刻,把上一轮的前向激活搬到 CPU,再把下一轮需要的反向激活提前拉回 GPU;
-
2.5 训练设置
作者在 4096 token 的上下文窗口下,使用 MuonClip 优化器(算法 1)与 WSD 学习率调度,共处理 15.5 T token。前 10 T token 在 500 步热身之后以 2e-4 的恒定学习率训练,随后 5.5 T token 采用余弦衰减,从 2e-4 降至 2e-5。权重衰减全程设为 0.1,全局批次大小固定为 67 M token。整体训练曲线见图 3。
预训练末期,作者先执行退火阶段,再进入长上下文激活阶段。此阶段批次大小仍保持 67 M token,学习率由 2e-5 进一步衰减到 7e-6。模型先用 4 k 序列长度训练 400 B token,再用 32 k 序列长度训练额外 60 B token。为将上下文窗口扩展至 128 k,作者采用了 YaRN 方法。
-
-
3.后训练
3.1 监督微调
3.1.1 面向工具使用的大规模智能体数据合成
现代大语言模型智能体的一项关键能力,是能够在面对陌生工具时自主学习调用,与外部环境交互,并通过推理、执行与纠错不断改进策略。这种“智能体工具使用”能力是解决复杂、多步、需与现实系统动态交互任务的先决条件。
近期在合成数据生成方面的工作已证明无需依赖真实交互即可创造大规模数据。作者受 ACEBench 综合数据合成框架的启发,构建了一条可大规模模拟真实工具使用场景的流水线,能够生成数万条多样化且高质量的示例。该流水线如图 8 所示,分为三个阶段:
- 工具规范生成:首先从真实工具与由大模型合成的工具中构建大规模工具规范库;
- 智能体与任务生成:从工具库中采样工具集后,为每套工具集生成一个专用智能体及相应任务;
- 轨迹生成:针对每一对智能体与任务,生成完整的调用工具轨迹,使智能体最终完成任务。
领域演化与工具生成
作者采用两条互补路径构建全面的工具仓库。
- 从 GitHub 仓库直接拉取 3000 余条真实 MCP(Model Context Protocol)工具,复用现有高质量规范。
- 通过分层领域演化流程系统生成合成工具:先确定金融交易、软件应用、机器人控制等大类,再在每个大类下演化出若干具体子领域,并为每个子领域合成接口清晰、描述完整、语义明确的专用工具。最终累计获得 2 万余条合成工具。图 9 用 t-SNE 可视化展示了工具分布,可见 MCP 工具与合成工具在表征空间互补覆盖,形成更宽广的工具空间。
智能体多样化
通过为不同系统提示词与工具组合生成数千条独特配置,作者得以构建出具备各异专长、行为模式和能力的智能体群体,确保用例覆盖度最大化。
基于评分标准的任务生成
针对每种智能体配置,作者生成从简单到复杂的任务,并为每项任务配套明确的评分标准:成功条件、预期工具调用模式与检查点。评分标准指导后续客观、一致的性能评估。
多轮轨迹生成
作者通过以下模块模拟真实工具使用场景:
- 用户模拟:由大模型生成的多样化用户人设,以不同沟通风格与偏好与智能体多轮交互,形成自然对话流。
- 工具执行环境:功能等价于世界模型的高保真工具模拟器负责执行工具调用并返回真实反馈。模拟器在每次调用后维护并更新状态,支持带持久效应的复杂多步交互,并引入受控随机性,产生成功、部分失败及边界情况等多变结果。
质量评估与过滤
由大模型担任的评审员依据任务评分标准对每条轨迹进行打分,仅保留满足成功条件的高质量轨迹用于训练,既确保数据质量,又保留任务完成策略的自然多样性。
混合方案:真实执行环境
尽管模拟带来规模优势,其保真度仍有局限。为此,作者在关键场景(尤其是编码与软件工程任务)中引入真实执行沙箱。沙箱运行真实代码,与真实开发环境交互,并通过测试通过率等客观指标提供真值反馈。
-
这种“可扩展模拟 + 定点真实执行”的混合方式,使模型既能从丰富多样的模拟情境中学习,又能受益于真实环境的真实性,显著增强实际部署时的智能体能力。
通过上述混合流水线,作者实现了大规模拒绝采样:在质量过滤阶段自动筛除低质轨迹,从而产出兼具覆盖面与真实性的高质量工具使用示范数据。该合成数据用于监督微调后,在广泛的真实应用场景中显著提升了模型的工具使用能力。
-
3.2 强化学习
作者认为,相比监督微调(SFT),强化学习(RL)在 token 效率和泛化能力上更具优势。基于 K1.5 的经验,作者在 K2 中继续从任务多样性和训练算力两个维度扩大 RL 的规模。为此,作者构建了一个类似 Gym 的可扩展框架,可在众多场景中便捷地开展强化学习。框架新增了大量带有可验证奖励的任务;对于创意写作、开放式问答等依赖主观偏好的任务,作者引入自评奖励机制——让模型对自身输出进行成对比较并打分。该方法使各领域任务都能统一受益于强化学习范式。
-
可验证奖励 Gym
数学、STEM 与逻辑推理任务
作者为数学、STEM 和逻辑推理领域准备 RL 数据时遵循两条核心原则:广泛覆盖与难度适中。
- 广泛覆盖
- 数学与 STEM:作者通过专家标注、内部 QA 抽取管线以及开放数据集收集高质量问答对,并用标签系统刻意补足以前覆盖不足的领域。
- 逻辑任务:数据集包含结构化数据任务(多跳表格推理、跨表聚合)和逻辑谜题(24 点、数独、谜语、字母算术、摩斯解码等)。
- 难度适中
- RL 提示集既不能过易也不能过难,否则信号微弱、学习效率低。作者用 SFT 模型的 pass@k 通过率评估题目难度,仅保留中等难度的问题。
复杂指令遵循
有效遵循指令不仅需理解显式约束,还要处理隐含要求、边界情形并在长对话中保持一致。作者通过“混合验证框架 + 可扩展课程生成”解决这些挑战:
- 混合规则验证
- 可验证输出(长度、风格等)用代码解释器做确定性评估;
- 需细腻语义理解的约束用大模型评审;
- 针对模型“声称已满足但实际未满足”的对抗行为,增设 hack-check 层专门检测虚假声明。
- 多源指令生成
- 数据团队手工编写高复杂度条件提示与评分标准;
- 借鉴 AutoIF 思想的智能体指令扩增;
- 用专门微调模型生成专攻特定失效模式或边界情形的额外指令。
忠实性
在多轮工具调用、自生成推理链及开放环境交互中,忠实性至关重要。受 FACTS Grounding 评估框架启发,作者训练了一个句子级忠实性裁判模型,可自动检测无上下文证据支持的事实性断言,并将其作为奖励模型以提升整体忠实度。
编程与软件工程
为提升竞赛级编程能力,作者从开源数据集及合成来源收集题目与评测器。为保证合成数据多样性与奖励信号正确性,额外引入预训练数据中检索到的高质量人工编写单元测试。
对于软件工程任务,作者抓取海量 GitHub 的 PR 与 issue,构建由用户提示 / 缺陷报告与可执行单元测试组成的开发环境。该环境基于 Kubernetes 的健壮沙箱,支持 1 万以上并发实例,性能稳定,适用于竞赛编程与通用软件工程任务。
安全
安全强化始于人工精选的初始提示,涵盖暴力、欺诈、歧视等主要风险类别。为模拟复杂越狱攻击(角色扮演、文学叙事、学术讨论等),作者部署了三组件自动提示演化流水线:
- 攻击模型:迭代生成旨在诱导不安全回复的对抗提示;
- 目标模型:对这些提示生成回复,暴露潜在漏洞;
- 裁判模型:依据任务专用评分标准判断对抗提示是否成功绕过安全机制,并给出二元成功 / 失败标签。
-
超越验证:自评评分奖励
为了把模型对齐从可验证任务扩展到更广泛的主观任务,作者提出一套基于自我批判反馈的通用强化学习框架。其核心机制为“自评评分奖励”:由模型自身对输出进行评价,生成偏好信号。为使 K2 具备合格的评审能力,作者精选了开源与内部偏好数据混合集,并在 SFT 阶段先对其进行批判者能力初始化。
自评策略优化
在学习循环的第一环节,K2 作为行动者针对覆盖广泛场景的通用提示生成回答;随后 K2 作为批判者,用一套评分表对所有回答进行成对排序。评分表由三部分组成:
- 核心评分表——承载作者所珍视的 AI 助手基本价值观;
- 处方评分表——用于防止奖励劫持;
- 数据团队为特定指令情境人工撰写的评分表。
虽然某些评分项可被设为强制,但 K2 仍可依据自身内部先验灵活权衡,从而在与演进中的策略保持一致的同时,动态地、持续地实现与核心身份及特定指令的双重对齐。
K2 把“没有标准答案的主观任务”也送进 RL,做法是让模型自己当裁判,流程分三步:
预训练一个小型 Self-Critique Judge:
先用一批公开+内部偏好数据 SFT,让模型学会按“清晰度、准确性、创意、安全性”等多维 rubrics 打分。同策略(on-policy)闭环:
Actor(主模型)对给定问题生成 k 个回答;
Judge(同一个模型的“裁判模式”)用 pairwise 比较给这些回答打分,输出相对排序;
排序差值作为奖励信号,直接参与 RL 目标优化。
持续校准:
每轮 RL 训练后,把带可验证答案的任务再喂给 Judge,用客观结果校正其打分偏差,防止“裁判”随主模型一起漂移。
闭环批判者精炼与对齐
在 RL 训练期间,批判者模型通过可验证信号持续精进。作者使用来自可验证奖励提示的在线推出数据不断更新批判者,将 RLVR 中的客观性能信号直接蒸馏进评估模型。此迁移学习过程使批判者在缺乏显式奖励的复杂任务上,也能以可验证数据为锚点作出更可靠的主观判断,确保可验证任务带来的性能增益反哺到主观评价。闭环机制保证批判者的评价标准与策略演化同步校准。通过把主观评价锚定于可验证数据,该框架实现对复杂、不可验证人类目标的稳健且可扩展的对齐。最终,这一整体对齐在广泛领域带来全面性能提升,包括用户意图理解、创意写作、复杂推理与细腻语言理解。
做题模型每做一次可验证题(比如数学题、代码题),裁判模型就拿到标准答案,立刻知道自己打分对不对;如果不对,马上改。这样,裁判的“打分手感”始终跟得上最新策略。
等裁判模型被客观题调教得够准后,再拿它去给没有标准答案的主观题(写诗、写长文、聊天)打分,就能把“对错”这一硬尺子,间接用在“好坏”这种软任务上。
-
RL 算法
作者以 K1.5 提出的策略优化算法作为 K2 的基础。对每个问题 x,作者从历史策略 π_old 中采样 K 个回答 {y₁, …, y_K},并以如下目标函数优化 π_θ:
其中 为采样回答的平均奖励,
为正则化系数,用于稳定训练。与 SFT 阶段一致,作者仍使用 Muon 优化器最小化该目标。
随着 RL 训练任务范围扩大,作者发现跨领域持续提升性能成为首要难题,于是引入以下改进。
预算控制
已有研究表明,RL 往往导致模型回答显著变长。虽然长回答可让模型在复杂推理任务上利用额外推理算力,但在非推理领域,其收益常不抵推理成本。为鼓励模型合理分配推理预算,作者在 RL 训练中为每种任务设定每样本最大 token 预算;超出预算的回答将被截断并施加惩罚。实验表明,该方法显著提升 token 效率,使各领域均产出简洁而高效的答案。
PTX 损失
为防止联合 RL 训练时遗忘珍贵的高质量数据,作者精选一批高质量样本,并通过辅助 PTX 损失将其并入 RL 目标。该策略既利用高质量数据优势,又缓解对有限训练任务过拟合的风险,显著增强模型在更广泛领域的泛化能力。
PTX 损失 做法:从人工精选的高质量样本里随机抽一个小 batch,用普通的语言建模损失(CE loss)加到 RL 总损失上,权重可调。
温度衰减
在创意写作与复杂推理等任务中,作者发现训练初期需以较高采样温度鼓励探索,以产生多样且具创造性的回答,从而发现有效策略并避免早熟收敛。但若后期或推理阶段仍维持高温,则会引入过量随机性,降低输出的可靠性与一致性。因此,作者采用温度衰减调度:训练初期高温探索,后期逐步降温以转为利用。此策略确保模型在最需探索时保持多样性,最终收敛于稳定且高质量的输出。
-
3.3 RL 基础设施
3.3.1 同址架构
沿用 K1.5 的设计,作者为同步式 RL 训练采用混合同址架构:训练引擎与推理引擎共存于同一批工作节点。任一引擎处于活跃状态时,另一引擎即释放或卸载其 GPU 资源以腾出算力。在 RL 训练的一次迭代中,中心控制器首先调用推理引擎生成新的训练数据,随后通知训练引擎在新数据上训练,并将更新后的参数回传给推理引擎供下一轮使用。两大引擎均针对吞吐做了深度优化。
同址架构就是把 RL 训练引擎和采样(推理)引擎放在同一批 GPU 上,但错开时间片轮流干活——谁用谁占卡,另一个把权重/状态腾出来让位,从而省掉独立推理集群的成本。
随着模型规模扩大到 K2 量级,引擎切换与故障恢复的时延成为关键瓶颈,作者对此给出了系统级设计考量。
-
高效引擎切换
问题背景:训练引擎和推理引擎的参数分片格式不同,不能直接互拷。如果走传统网络文件系统重分片,带宽要数 PB/s——显然不可能。
解决方案:共置 checkpoint engine
-
每个训练节点上都跑一个 checkpoint worker。
-
Step 1 每个 worker 先从本地训练进程把 完整 1T 参数 拉到内存。
-
Step 2 所有 worker 之间 全网广播 这份完整参数(相当于复制 N 份)。
-
Step 3 推理引擎 按需只拿自己那份 shard,多余的直接扔掉。
为什么这么做反而更快
-
广播整份数据虽然“浪费”流量,但少了复杂的同步、对齐、重分片逻辑,实现简单。
-
全带宽打满,同步开销低,实测 30 秒 就完成一次全量更新,对一次 RL 迭代来说基本无感。
图 10 展示了该流程。对于 1 T 参数模型,作者按参数粒度流水线执行更新,显著降低峰值内存占用。尽管广播全量参数比理论上“按需传输”多搬数倍数据,但系统设计更简单,对训练与推理引擎零侵入;同时,由于减少同步开销并充分利用网络带宽,实际耗时反而更短。Kimi K2 的全量参数更新可在 30 秒内完成,对一次 RL 迭代而言可忽略不计。
-
高效系统启动
训练节点和推理节点都用同一个‘检查点引擎’当搬运工:它一次性把 checkpoint 从磁盘搬到内存,然后按需广播给所有训练 worker,再按分片喂给各个推理副本——这样即使某个节点挂了,也能自己单独重启,不用跟别人打招呼。
训练引擎启动
每个训练 worker 不会傻乎乎地全读一遍磁盘,而是:
-
有的 worker 只读自己那 1/N 参数;
-
有的干脆不读;
-
然后大家用一次 全局广播 把缺的补齐。
结果:整块 checkpoint 在磁盘上只被扫一次,磁盘 IO 降到最低。
推理引擎启动
推理节点是互相独立的,作者不想让它们之间再搞同步。
-
继续让“检查点引擎”统一把 checkpoint 读到内存;
-
然后按之前参数更新的老办法(广播+按需拉 shard)把状态喂给任意一个还没初始化的推理副本;
-
这样即使某个推理节点崩溃,也能单独重启,不需要等其他节点握手或对齐,真正做到 无单点依赖。
-
智能体 Rollout
作者的 RL 基础设施支持长距、多轮智能体任务的训练。这类任务在 rollout 阶段面临两大挑战:复杂的环境交互与漫长的轨迹时长。作者通过以下优化缓解:
- 提升 GPU 利用率
- 将重量级环境(如虚拟机、代码解释器)部署为可水平扩展的独立服务;
- 启动大量并发 rollout,摊平昂贵交互带来的延迟。
- 防止长尾阻塞
- 个别轨迹可能极长。作者采用 partial rollout 技术:长任务可中途暂停,并在下一次 RL 迭代继续,避免阻塞整体流程。
- 统一接口
- 为提高研究效率,作者设计了受 OpenAI Gym 启发的统一接口,方便快速接入新环境。未来作者希望将 RL 基础设施扩展到更多样化的交互场景。
-
-
4.评估
本节先汇报 Kimi-K2-Instruct 的后训练评测结果,再简要概述 Kimi-K2-Base 的能力,最后给出全面的安全性评价。
4.1 后训练评估
4.1.1 评测设置
基准
作者在多维度对 Kimi-K2-Instruct 进行测评:
- 编程:采用 LiveCodeBench v6(题目时间 2024.8–2025.5)、OJBench、MultiPL-E、SWE-bench Verified、TerminalBench、Multi-SWE-bench、SWE-Lancer、PaperBench、Aider-Polyglot。
- 工具使用:τ2-Bench 与 ACEBench,侧重多轮工具调用。
- 推理:涵盖数学、科学、逻辑任务——AIME 2024/2025、MATH-500、HMMT 2025、CNMO 2024、PolyMath-en、ZebraLogic、AutoLogi、GPQA-Diamond、SuperGPQA、Humanity’s Last Exam(仅文本)。
- 长上下文:检索用 MRCR4,推理用 DROP、FRAMES、LongBench v2。
- 事实性:FACTS Grounding、Vectara Hallucination Leaderboard、FaithJudge。
- 通用能力:MMLU、MMLU-Redux、MMLU-Pro、IFEval、Multi-Challenge、SimpleQA、LiveBench(截至 2024-11-25)。
基线
作者同时选取开源与闭源前沿模型作为基线,并确保所有候选模型均在其非思维链模式下评估,以排除额外测试时算力增益。
- 开源:DeepSeek-V3-0324、Qwen3-235B-A22B(后者按官方推荐的非思维链配置运行)。
- 闭源:Claude Sonnet 4、Claude Opus 4、GPT-4.1、Gemini 2.5 Flash Preview(2025-05-20),均通过官方 API 在非思维链模式下调用,温度与 top-p 设置统一。
评测配置
所有测试均在模型的非思维链模式下进行。输出 token 上限统一设为 8192,仅 SWE-bench Verified(Agentless)放宽至 16384。对于方差较大的基准,作者采用重复采样 k 次并取平均分,记作 Avg@k。长上下文任务统一以 128 K token 窗口评估,超长输入做截断。SWE-bench Verified 分两种模式:
- Agentless Coding:单补丁无测试(Acc)。
- Agentic Coding:bash/editor 工具,单次尝试(Acc)与多次尝试(Acc),内部验证器在 best-of-N 后出结果;SWE-bench Multilingual 仅测单次尝试 agentic 模式。
部分数据点因评测成本过高已省略。
-
4.1.2 评测结果
Kimi-K2-Instruct 的完整得分见表 3。Kimi-K2-Instruct 在四大核心领域全面领先或对标最强模型,总结如下:
1. 智能体与竞赛编程
• 真实软件工程任务(SWE-bench 系列)取得开源最佳,逼近 Claude 4 系列;
• 竞赛级编程(LiveCodeBench、OJBench)同样领跑。
2. 智能体工具使用
• 多轮工具调用基准 τ2-Bench、ACEBench 均刷新纪录,显著超越所有基线。
3. 通用能力
• 通用知识、数学/STEM、指令遵循、长上下文检索与事实性全面领先开源模型,与顶级闭源模型差距极小。
4. 真实用户体验
• LMSYS Arena 榜单(2025-07-17)排名开源第一、总榜第五,3 000+ 盲测投票验证其开放端任务的高质量表现。
-
4.2 预训练评估
4.2.1 评测设置
基准
作者在多个能力维度评估 Kimi-K2-Base:
- 通用能力:MMLU、MMLU-Pro、MMLU-Redux、BBH、TriviaQA、SuperGPQA、SimpleQA、HellaSwag、AGIEval、GPQA-Diamond、ARC-Challenge、WinoGrande。
- 编程能力:EvalPlus(综合 HumanEval、MBPP 及其加强版)、LiveCodeBench v6、CRUXEval。
- 数学推理:GSM8K、GSM8K-Platinum、MATH、CMATH。
- 中文能力:C-Eval、CMMLU、CSimpleQA。
基线
作者与当前领先的开源基础模型对比:DeepSeek-V3-Base、Qwen2.5-72B-Base(Qwen3-235B-A22B-Base 未开源,Qwen 系列最大开源基座为 72B)、Llama 4-Maverick(Behemoth 同样未开源)。所有模型在相同配置下评测,确保公平。
评测配置
- 基于困惑度的评测:MMLU、MMLU-Redux、GPQA-Diamond、HellaSwag、ARC-Challenge、C-Eval、CMMLU。
- 基于生成的评测:MMLU-Pro、SuperGPQA、TriviaQA、BBH、CSimpleQA、MATH、CMATH、GSM8K、GSM8K-Platinum、CRUXEval、LiveCodeBench、EvalPlus。
- GPQA-Diamond 方差高,作者取 8 次独立运行的平均分。
- 所有评测均采用作者内部基于 LM-Harness-Evaluation 衍生的框架,保证配置一致。
-
4.2.2 评测结果
表 4 展示了 Kimi-K2-Base 与领先开源基座模型在全量基准上的对比。结果显示,Kimi-K2-Base 在绝大多数任务上达到开源 SOTA,确立其在开源基础模型中的领先地位。
Kimi-K2-Base 在 12 项英文通用基准中拿下 10 项开源第一,关键指标全面领先。
- 编程任务刷新开源纪录:EvalPlus 80.33%,CRUXEval 两项均超 74%,LiveCodeBench 26.29%。
- 数学推理三项第一:MATH 70.22%,GSM8K 92.12%,GSM8K-Platinum 94.21%;CMATH 90.26% 与最佳差距仅 0.27%。
- 中文任务同样领先。
-
4.3 安全评估
4.3.1 实验设置
作者围绕有害内容、隐私泄露与安全漏洞三大类场景,采用提示注入、迭代越狱等多种攻击策略,对 Kimi K2 与其他开源大模型进行红队测试。作者选用 Promptfoo 生成对抗提示并分析模型回复,以实现可扩展的安全评估。
模型选择
作者将 Kimi K2 与 DeepSeek-V3、DeepSeek-R1 和 Qwen3 三款开源大模型进行对比。
Promptfoo 配置
表 5 列出了所启用的插件与策略。每个插件与全部策略组合测试。
- 测试用例数量:考虑到大模型输出的非确定性,作者为每个插件-策略组合生成 3 条攻击提示;
- 语言设置:作者预先验证插件-策略对中英文的兼容性。若支持双语,则各生成 3 条提示,共 6 条。
Promptfoo 是一个开源的自动化“红队”框架。
它的工作方式是:
1. 预先定义好 “插件”(比如“诱导暴力”“泄露隐私”“越狱”等不同攻击类型);
2. 再配上一组 “策略”(Basic、Prompt-Injection、Iterative-Jailbreak、Crescendo 等);
3. 插件 + 策略组合后,Promptfoo 会自动生成大量 针对性的对抗提示(adversarial prompts);
4. 把这些提示喂给被测模型,收集回答,再用内置或自定义的 评判器 判断攻击是否成功。
人工复核
作者引入多轮人工复核以降低主观偏差:同一评审员负责整个测试集,确保评分一致性与可比性。
-
安全评估结果
表 6 给出了各模型在不同插件–策略组合下的通过率。在未针对特定评估场景做专门优化的情况下,Kimi K2 在部分复杂攻击(如 Harmful–Iterative Jailbreak)上的通过率相较其他模型仍更低,表现出更好的鲁棒性。
不同攻击策略下模型表现趋势各异:
- Base64 策略下,各模型通过率普遍接近或达到 100%,说明简单的编码变换对模型基础鲁棒性影响有限。
- Crescendo 策略则普遍拉低通过率,表明其对抗性更强。
此外,复杂攻击并不总优于简单提示。某些对抗提示经多轮转换后语义失真,导致模型输出失去原意,反而降低了攻击效果。
Base64:一种编码策略,先把“有害、敏感或违规内容”用 Base64 编码成看似无害的字符串,再让模型解码,从而绕过表层关键词过滤。
Crescendo:一种“递进式越狱”策略,从无害话题开始,逐步诱导模型回答越来越敏感的问题,像“温水煮青蛙”一样循序渐进地突破安全防线。
-
自动化红队局限性
由于评估过程包含人工复核,结果不可避免带有主观成分。同时,部分插件涉及 API 滥用或外部工具调用,更适合评估具备工具调用能力的智能体模型;对于基座大模型而言,这类测试的适用性有限。
-
-
总结
作者发布 Kimi K2,这是一个面向智能体智能的 1 万亿参数开源 MoE 模型。借助 token 高效的 MuonClip 优化器与 15.5 T 高质量 token 数据,作者实现了稳定且可扩展的预训练。后训练阶段,作者将大规模合成工具使用数据与统一 RL 框架相结合,同时利用可验证奖励与自评反馈。Kimi K2 在智能体与推理基准上刷新开源纪录,成为迄今最强的开源大模型。