Moonshot AI 的又一力作。Kimi K2.5 是一款视觉智能体模型,在 OpenRouter热门模型榜单上名列前茅 ,且在多项基准测试中超越闭源模型,充分展现了研究层面的突破。从架构、训练和实现的角度来看,这款模型值得深入探索。
在之前关于 Kimi K2 的文章中,我们深入探讨了这款模型,特别关注了其后训练阶段的相关内容。我们还分析过 Kimi 团队推出的线性注意力架构------Kimi Linear。除了这些亮眼的发布外,Moonshot AI 还发布了大量高密度的技术报告 。阅读本文时,请务必参考 Kimi-K2.5 技术报告。
Kimi K2.5 的发布包含了后训练阶段的检查点,并采用修改后的 MIT 许可证开源使用。
本文的目标是突出我们认为最值得关注的内容 ,即 Kimi K2 团队究竟采取了哪些措施来实现如此出色的性能。同时,我们还将展示如何在 DigitalOcean GPU Droplet 云服务器上运行这个模型。

本文核心要点
- Kimi K2.5 与 Kimi K2 相同,采用 MoE 架构,总参数 1 万亿,活跃参数 320 亿。之所以命名为 K2.5 而非 K3,是因为Kimi K2.5 建立在 K2 的基础上 ,进行了大规模联合预训练,模型在 15 万亿视觉和文本 Token 上进行了训练。
- Kimi K2 与 K2.5 的主要区别在于,K2.5 更加注重联合视觉训练------特别是预训练和后训练的强化学习阶段。而监督微调则仅使用文本数据。
- 该模型采用修改后的 MIT 许可证开源,包含后训练检查点。模型提供三种模式:即时模式、思考模式和智能体模式。
- 引入了Agent Swarm(智能体集群)和**PARL(并行智能体强化学习)**,用于解决单一智能体在处理复杂场景时能力有限的问题。
- Toggle 启发式方法通过交替使用推理时扩展和预算约束优化,实现了 Token 高效的强化学习。
- 解耦编码器流程(DEP)解决了处理不同尺寸视觉数据(如图像和视频)时出现的负载不均衡和内存波动问题。
- 对于更复杂的任务,Kimi K2.5 可以自指挥多达 100 个子智能体组成的集群,支持并行执行最多 1,500 次工具调用。子智能体各有专长(如 AI 研究员、物理研究员、事实核查员)。
模型概览
| 规格 | 说明 |
|---|---|
| 架构:Transformer,混合专家(MoE) | 混合专家(MoE)架构允许在降低计算成本的同时实现更大的模型规模和更高的质量。它使用稀疏的前馈神经网络层(专家 )和门控网络(路由器 ),将 Token 有选择地路由到 Top-k 专家,为每个 Token 仅激活部分参数。这种方法使得构建更大规模的模型成为可能,而无需按比例增加计算成本。 |
| 参数:总参数 1 万亿,活跃参数 320 亿 | 由于 K2 是 MoE 架构,因此有总参数和活跃参数之分。总参数是指整个模型中所有参数的总和,包括所有专家网络、路由器/门控网络和共享组件,无论推理时使用哪些专家。活跃参数则仅计算特定输入所使用的参数子集------通常是激活的专家加上共享组件。 |
| 注意力机制:MLA(多头潜在注意力) | MLA 由 DeepSeek V2(第 2.1 节)引入,是一种用于提升推理效率的注意力机制。MLA 通过将注意力输入压缩到低维潜在向量中工作,之后可以通过恢复键值来计算。由于 K2 使用了 MLA,QK-Norm------一种通常应用于查询-键矩阵的归一化技术------不适用于扩展 Muon 训练,因为 MLA 中的键矩阵在推理时并未完全具体化。因此,K2 研究人员引入了 QK-Clip,这是一种权重剪枝机制,用于约束大规模 Muon 优化训练中出现的注意力 Logit。 |
| 优化器:MuonClip | Muon 虽然是一种 Token 高效的优化器,但需要针对大规模训练进行修改。Kimi K2 技术报告第 2.1 节引入的MuonClip 优化器,是将 Muon 与权重衰减、一致的 RMS 匹配和 QK-Clip 相结合的产物。 |
| 专家数量:384;每 Token 选择专家数:8;共享专家数:1 | 有关专家数量如何影响稀疏性的更多细节,请参阅 Kimi K2 相关博客的稀疏性部分。 |
| 层数:61(包括 1 个 Dense 层) | 这里的"层数"指的是模型中 Transformer 块的数量。每一层处理和精炼输入数据,使模型能够学习越来越抽象的表示。Dense 层是全连接层。 |
| 注意力头数:64;注意力隐藏维度:7168 | 注意力头允许模型同时关注输入的不同部分。每个头学习捕捉数据中不同类型的关系。 |
| **MoE 隐藏维度(每个专家)**:2048 | 每个单独专家处理 2048 维的表示。 |
| 激活函数:SwiGLU | 这不足为奇。SwiGLU 是现代大语言模型的标准选择。例如:gpt-oss |
| 视觉编码器:MoonViT-3D(4 亿参数) | 这是 Kimi K2 的新特性。如果你熟悉 Kimi-VL,你可能认得 MoonViT。Kimi K2 使用的是MoonViT-3D,这是对 SigLIP 在图像-文本对和视频-文本对上进行持续预训练的结果。连续的四帧被分组处理,通过共享的 MoonViT 编码器,然后在 patch 级别进行时间平均------这种设计使 K2.5 能够在相同上下文窗口内处理 4 倍长度的视频。 |
本文探讨三个相互关联的主题:
- 视觉-语言融合:通过联合优化技术,让文本和视觉模态相互增强。预训练和强化学习阶段都是多模态的。
- 可扩展并行:通过 Agent Swarm 实现,支持专业智能体并发执行异构子任务。
- 强化学习 :该模型在多个方面采用了强化学习,本文将详细展开:
- 联合多模态强化学习
- 基于结果的视觉强化学习
- PARL(并行智能体强化学习)
- 推理优化:使研究人员能够在提升任务性能的同时,实现高达 4.5 倍的延迟降低。由于并行化带来的推理改进,Kimi K2.5 能够在相同上下文窗口内处理 4 倍长度的视频,同时保持图像和视频编码器之间的完整权重共享。

表中结果表明,视觉强化学习在需要复杂推理和知识整合的任务中具有优势,在测试事实理解和长上下文理解的各种基准测试中表现出一致的性能提升。
Agent Swarm(智能体集群)

使用智能体集群可以实现:
- 动态任务分解
- 子智能体实例化
- 并行子任务调度
在 Kimi 网站上,你实际上可以体验 K2.5 的 Agent Swarm。
K2.5 技术报告第 5.2 节详细说明了这一设计如何转化为性能提升。三个基准测试评估了智能体集群框架:BrowseComp 用于浏览难以找到的信息和深度推理,WideSearch 用于大规模检索,以及一个内部开发的 Swarm Bench 用于测试真实世界的复杂性。内部基准测试涵盖四个领域的编排、可扩展性和协调能力。有趣的是,可以看到对以下能力的大规模重视:信息收集、下载、解读和写作。
| 内部 Swarm Bench 任务 | 说明 |
|---|---|
| WildSearch | 无限制地从整个互联网收集信息,不受任何限制 |
| Batch Download | 大规模收集各种类型的文件和资料 |
| WideRead | 处理和理解 100 多份文档的大量文本 |
| Long-Form Writing | 创建超过 100,000 字的精心结构化的长篇内容 |
PARL(并行智能体强化学习)
在 K2.5 中,并行智能体强化学习(PARL)意味着与并行化相关的决策 是通过环境反馈 和强化学习驱动的探索 来学习的。其工作方式是:K2.5 有一个可训练的编排智能体。强化学习框架通过训练小规模子智能体并动态调整推理实例比例来提高效率。
研究人员观察到一个常见的失败模式是串行崩塌,即编排智能体尽管有并行能力可用,却默认选择单智能体执行。为了解决这个问题,PARL 使用分阶段奖励,在训练早期鼓励并行化,并逐渐将重点转向任务成功。
后训练
监督微调
你可能会好奇为什么这个阶段只使用文本。研究人员发现,在 SFT 中添加人工设计的视觉轨迹 会对泛化产生负面影响。另一方面,仅使用文本的 SFT 具有更高的性能,研究人员推测这是因为联合预训练建立了促进泛化的视觉-文本对齐。
合成数据生成管道从 K2、K2 Thinking 以及一系列专有内部专家模型生成高质量的候选文本响应。我们对这些内部模型非常好奇。最终的指令微调数据集包含多样化的提示,并优先训练模型的推理和工具调用能力。
强化学习
这里采用的方法与传统方法不同,因为强化学习的领域不是按输入模态(如图像、文本)组织的,而是按能力(如知识、推理、编码、智能体等)组织的。
统一智能体强化学习环境

为了最小化定制和实现环境的相关开销,有一个标准化的类 Gym 接口,具有可插拔的组件(如工具集、评判器、提示和指令增强)。
| 模块 | 目的 |
|---|---|
| 工具集 | 用沙箱支持各种工具 |
| 评判器 | 多方面奖励信号 |
| 提示多样化和指令遵循增强 | 提示多样化并改进指令遵循 |
性能
Kimi K2.5 技术报告第 5 节详细介绍了模型的性能。K2.5 在以下领域表现出色:
- 推理和通用能力
- 复杂编码和软件工程
- 智能体能力
- 视觉、推理知识和感知
- 视频理解
- 计算机使用能力
在 DigitalOcean 上运行 K2.5
运行不同版本 Kimi K2.5 有多种方式:vllm、sglang、unsloth。注意内存需求:1 万亿参数的混合推理模型需要 600GB 磁盘空间,而量化的 Unsloth Dynamic 1.8-bit 版本将其减少到 240GB(-60%):Kimi-K2.5-GGUF
首先设置一个 DigitalOcean GPU Droplet,然后通过 SSH 登录到你的 Droplet。注意你需要多少 GPU。
vLLM 实现
我们遵循 vLLM 的使用指南。
scss
uv pip install -U vllm \
--torch-backend=auto \
--extra-index-url https://wheels.vllm.ai/nightly
我们设置-tp 为 1,将模型的各层和数学操作"分片"到 1 个 GPU 上。注意原始文档中-tp 8 表示使用 8 路张量并行将模型分布到 8 个 GPU 上。
css
vllm serve $MODEL_PATH -tp 1 --mm-encoder-tp-mode data --trust-remote-code --tool-call-parser kimi_k2 --reasoning-parser kimi_k2
Sglang 实现
这里我们遵循 Kimi-K2.5 部署指南中的 sglang 实现。
ini
pip install "sglang @ git+https://github.com/sgl-project/sglang.git#subdirectory=python"
pip install nvidia-cudnn-cu12==9.16.0.29
css
sglang serve --model-path $MODEL_PATH --tp 8 --trust-remote-code --tool-call-parser kimi_k2 --reasoning-parser kimi_k2
关键参数说明:
- --tool-call-parser kimi_k2:启用工具使用时必需。
- --reasoning-parser kimi_k2:正确处理推理内容时必需。
常见问题
为什么模型叫 K2.5 而不是 K3?
K2.5 直接建立在 K2 的基础上,通过在 15 万亿视觉和文本 Token 上进行大规模联合预训练进行扩展。因为核心架构(MoE、参数数量、MuonClip 优化器)保持不变,团队将其定位为 K2 的演进,而不是全新的一代。
为什么早期视觉融合以较低的视觉比例优于激进的晚期视觉注入?
论文的消融实验(表 1)表明,以适度比例(10:90 的视觉-文本)早期引入视觉数据,始终优于高比例(50:50)的晚期融合。晚期融合会导致"下降-恢复"模式,文本性能最初会因模态域转换而下降。早期融合避免了这种干扰,允许两种模态从一开始就共同发展统一表示。
为什么视觉强化学习能提升文本性能?
论文发现,基于结果的视觉强化学习提升了 MMLU-Pro、GPQA-Diamond 和 LongBench v2 的分数。可能的解释是,涉及计数、OCR 和结构化提取的视觉任务会校准并减少类似文本推理模式中的不确定性。
如果 K2.5 是多模态模型,为什么 SFT 只使用文本?
发现在 SFT 阶段添加人工设计的视觉轨迹会损害泛化。联合预训练阶段已经建立了强大的视觉-文本对齐,因此仅使用文本的 SFT 足以激活视觉推理,而不会过度拟合低多样性的视觉演示的风险。这就是论文所说的"零视觉 SFT"。
Toggle 如何防止模型在追求 Token 效率的同时牺牲推理质量?
Toggle 每 m 个训练迭代在两个阶段之间交替:一个奖励简洁推理的预算约束阶段,以及一个允许完全 Token 使用的标准扩展阶段。这防止了"长度过度拟合",即在严格预算下训练的模型在更难的问题上无法有效利用额外计算。平均而言,Toggle 将输出 Token 减少 25-30%,而性能损失可以忽略不计。
Agent Swarm 与简单地并行调用工具有何不同?
Agent Swarm 不是静态并行------编排智能体通过 PARL 学习何时以及如何并行化。编排智能体动态分解任务、实例化专业子智能体,并并发调度它们。关键的是,子智能体保持独立的工作内存,只向编排智能体返回与任务相关的输出,这是一种主动的上下文管理,而不是被动的截断。
为什么在 PARL 训练期间子智能体被冻结?
同时训练编排智能体和子智能体会产生信用分配模糊性------正确的最终答案并不意味着每个子智能体都表现良好,反之亦然。通过冻结子智能体并将其输出视为环境观察,团队可以稳定地只训练编排智能体,将高级编排与低级执行解耦。
什么是"串行崩塌",如何解决?
串行崩塌是指编排智能体尽管有并行能力可用,却默认选择单智能体执行------本质上是选择阻力最小的路径。PARL 奖励包括一个实例化奖励(rparallel),明确鼓励在训练早期生成子智能体。然后这个辅助奖励逐渐衰减为零,使模型最终纯粹优化任务成功,而不是为并行化本身进行优化。
超参数衰减为零是什么意思?(参见第 3 节关于 PARL 奖励的部分)

在 Kimi K2.5 的 Agent Swarm 训练中,超参数衰减为零意味着在强化学习过程中逐渐降低辅助奖励的权重。
- 初始阶段:权重 λ1 和 λ2 设置为大于零,提供"训练轮"鼓励模型探索并行执行(rparallel)并确保子任务实际完成(rfinish)。
- 过渡阶段:这些值随时间降低,防止模型"奖励黑客"或优先考虑并发而非质量。
- 最终阶段:权重达到零后,模型纯粹优化主要目标:成功解决任务(rperf)。
什么是虚假并行,如何防止?(参见第 3 节关于 PARL 奖励的部分)
虚假并行是一种"奖励黑客"行为,编排智能体生成大量子智能体而没有有意义的任务分解,只是为了夸大并行化指标。
通过以下方式防止:
- rfinish 奖励,激励成功完成分配给子智能体的子任务,确保分解是可行和有效的。
- 关键步骤指标,衡量最长执行路径而非总步骤,使创建不会减少延迟的过度子任务变得无用。
- 超参数衰减,逐渐将并行化的辅助奖励降至零,使模型最终优先考虑主要任务结果。
运行 K2.5 需要多少 GPU 内存?
完整的 1 万亿参数模型需要约 600GB 磁盘空间。量化的 Unsloth Dynamic 1.8-bit GGUF 版本将其减少到约 240GB。对于通过 vLLM 或 SGLang 的全精度部署,需要使用张量并行分布在多个 GPU 上(文档建议-tp 8 进行 8 路分布)。所以理论上讲,有两个方案可行。
方案一:单卡运行量化版本
- 推荐 GPU:NVIDIA B300(288GB 显存)
- 理由:单卡 288GB > 240GB 需求,可以直接运行量化版本,性价比最高
方案二:多卡运行全精度版本
- 推荐 GPU:8×H200 或 8×B300
- 理由:8 卡并行可以承载完整的 1 万亿参数模型
- B200×8 也可以,但 B300 带宽更高
目前 NVIDIA B300 GPU 云服务器即将在 DigitalOcean 云平台上线,现在可以咨询 DigitalOcean 中国区战略合作伙伴卓普云(aidroplet.com)进行预约提前测试,锁定 B300 资源。
什么是解耦编码器流程(DEP),为什么对训练效率很重要?
在标准管道并行中,视觉编码器与文本嵌入一起位于 Stage-0,导致严重的负载不均衡,因为图像的分辨率和数量差异很大。DEP 将视觉前向传播、主干训练和视觉重计算分为每个训练步骤的三个不同阶段。这实现了负载均衡,无需自定义管道配置,尽管增加了多模态复杂性,K2.5 仍达到了 90% 的纯文本训练效率。
最终思考
最让我们印象深刻的是 Moonshot AI 团队系统性地处理这个问题的方式:联合多模态预训练在强化学习之前建立强大的视觉-文本基础,仅使用文本的 SFT 保持泛化,以及按能力而非模态组织的强化学习。每个决定都反映了关于模型需要学习什么以及何时学习的深思熟虑。PARL 可以说是最具前瞻性的贡献。并行化行为应该学习而非硬编码,串行崩塌是一个需要分阶段奖励塑造的真正失败模式------这些见解表明团队正在认真思考规模化时智能体的可靠性问题。Toggle 启发式方法同样显示了 sophistication:与其将推理时扩展和预算优化视为竞争目标,不如在两者之间交替。
对于从业者来说,一个 1 万亿参数的 MoE 模型,活跃参数 320 亿,采用修改后的 MIT 许可证开源,可以通过 vLLM 或 SGLang 部署,是真正可访问的。unsloth 提供的量化 GGUF 变体进一步降低了门槛。无论你是在探索多模态推理管道,还是在构建需要编排并行工作流的智能体,K2.5 都值得认真评估。
Moonshot AI 团队继续发布强大的开源模型和详尽的技术报告,造福更广泛的开发者和研究社区。我们期待报道这个团队以及社区中拥有优秀技术报告和令人印象深刻使用量的其他开源模型的更多发布。
参考资料和更多资源
Kimi K2.5 技术博客:视觉智能体智能 Kimi K2.5 论文 Unsloth Kimi-K2.5 实现 Kimi K2.5 部署指南
感谢与 DigitalOcean 社区一起学习。了解我们计算、存储、网络和托管数据库的产品,可访问卓普云官网 aidroplet.com 或 DigitalOcean 英文官网。