【Kimi K3 技术报告 · 大白话版:最强闭源之下的第一名,它把2.8万亿参数全部免费开源了】
这份文档是给完全没学过机器学习的人看的。
不需要任何技术背景。我们会像朋友聊天一样,把 Kimi K3 这份技术报告从头到尾讲一遍:
它是个什么东西、为什么这么造、遇到了什么麻烦、怎么解决的、考试考了多少分、不如谁。
所有关键数字都保留,但每个数字后面都会马上告诉你"这意味着什么"。
先给你一份"名词翻译表"(全文通用)
整篇文章用同一套生活类比,先混个脸熟,后面看到就不会懵:
- 大模型:一个超级大的"人工大脑",能聊天、写代码、看图、干活。
- 参数:大脑里的"脑细胞连接数"。参数越多,脑容量越大。K3 有 2.8 万亿个。
- token:模型眼里文字的"最小碎块"。一个字、半个词都算 token。100 万 token ≈ 一口气读完两三部长篇小说(比如《三体》三部曲约 88 万字),或者一个大型软件项目的全部代码。
- 训练 = 上学读书。预训练 = 从小学到大学的通识教育;后训练 = 毕业后的岗前培训和实习。
- MoE(混合专家)= 大医院分诊制。院里养了 896 个科室医生,每个病人进门,分诊台只挑 16 个相关科室会诊,不用全院出动,省钱省力。
- 注意力(Attention)= 开会。每讨论一个新议题,大家都要决定"该重点听谁的发言",记笔记。
- 强化学习(RL)= 打游戏闯关练级。做对了给金币(奖励),做错了扣分,玩着玩着就会了。
- 蒸馏 = 把九个专科老师的本事,教给一个全科医生。
- 显存 = 办公桌桌面。桌面越大,手边能同时摊开的书和文件越多。
- KV 缓存 = 开会时的会议记录 / 读书时的读书笔记,不用每次都从头重读。
- 量化 = 把精装百科全书缩印成口袋版,省地方、带着方便,字稍微模糊一点点。
- 沙箱 = 带围栏的儿童游乐场。让孩子在里面随便折腾,拆了东西也不影响外面。
一句话看懂全文
Kimi K3 是目前全世界最大的开源 AI 大脑:它有 2.8 万亿个"脑细胞",但每次干活只叫醒其中一小部分,所以又快又省;它天生能看图看视频,一口气能读完一整部长篇小说还记住细节;它靠三样自研的"省钱黑科技"和一套"打游戏式"的训练方法,把学习效率做到了上一代的 2.5 倍;最后考试总分只输给两个最强的收费闭源模型(Claude Fable 5 和 GPT-5.6 Sol),排世界第三梯队最前面——而且它的"大脑"全部免费公开,谁都能下载拿去用。
要点速览(赶时间只看这里)
- 多大:2.8 万亿(2.8T)参数,目前开源模型里最大的一档;但每次处理一个字只激活 1040 亿(104B),相当于"大脑很大、每次只用一小块",所以运行成本没那么吓人。
- 多长:一口气能处理 100 万 token——约等于把《三体》三部曲从头读到尾还能回答你关于第 37 页某个细节的问题。
- 多快:同样的算力和数据,K3 学到的本事约是上一代 K2 的 2.5 倍。相当于别人花 2.5 块钱学到的东西,它 1 块钱就学会了。
- 怎么做到的:三件自研武器——KDA(便宜的长文阅读法)、AttnRes(大脑各层之间修直达电梯)、Stable LatentMoE(896 个专家分诊不翻车)。
- 怎么练的:先"上学"(预训练)再"实习"(强化学习)——3 个工种 × 3 档思考强度 = 9 个专科老师,最后用"蒸馏"把 9 个老师的本事教给一个全科医生。
- 考了多少分:总分只输给 Claude Fable 5 和 GPT-5.6 Sol 这两个最强闭源模型,赢过其他所有参评的开源和闭源模型;智能体类(自己干活)的考试拿了好多项第一;还成为史上第一个在 WebDev Arena(真人盲评的网页开发擂台)登顶的开源模型。
- 性价比:好几个考试里,用 Claude Fable 5 三分之一甚至十分之一的钱,拿到几乎一样的分数。
- 不如谁:最前沿的科研级难题(比如"人类最后的考试"HLE 里的硬骨头)还打不过最强的闭源模型;网络安全上"端到端写出完整攻击程序"的能力也不如最前沿水平。这些报告自己都承认了。
- 全免费:完整模型权重开源,任何人可以下载、研究、商用、二次开发。
第一部分:Kimi K3 是个什么东西
1.1 先认识一下 K3:一个"按科室分诊"的超级大脑
Kimi K3 是一个 AI 大模型,你可以把它当成一个装在电脑里的超级大脑。它有几个硬指标:
第一,脑容量巨大,但每次只用一小块。
它的总参数量是 2.8 万亿(2.8T)——参数就是大脑里的"脑细胞连接",这个数字在开源模型里是历史最大的一档。但它用的是 **MoE(Mixture of Experts,混合专家)**架构,也就是我们说的"大医院分诊制":
- 这家"医院"里一共养了 896 个科室医生(可路由专家);
- 但每来一个"病人"(模型每处理一个 token),分诊台只挑 16 个最相关的科室会诊;
- 另外还有 2 个"全科门诊",不管什么病人都先过一遍,负责常见问题的通用处理。
所以每次真正干活的"激活参数"只有 1040 亿(104B)——总脑容量 2.8 万亿,每次只用 1040 亿,大约二十七分之一。这意味着:它有顶级大模型的知识储备,运行成本却接近一个中等模型。这就是 MoE 的核心好处,也是现在顶级大模型的主流做法。
第二,天生有眼睛。
很多模型是"先学会读文字,再外挂一个看图模块",像后天装的假肢。K3 是原生多模态:从训练第一天起,文字、图片、视频就混在一起学,看图看视频是它的本能,不是外挂。
第三,记性超长。
它的"上下文窗口"是 100 万 token——就是它一次性能装进脑子里的内容量。100 万 token 什么概念?大约两三部长篇小说,或者一个大型软件项目的全部代码。你可以把一整本书扔给它,然后问"第三章那个人物后来怎么样了",它真答得上来。
一个要注意的小细节:报告开头的跑分对比图里,测试条件不完全对等——K3 的编程成绩是"思考力度开到最大"下测的;对手 Claude Fable 5 的成绩可能触发了"回退机制"(考砸了重来的保险),GPT-5.6 Sol 的部分成绩带着"网络安全护栏"(相当于考试时有人盯着不让它干坏事)。报告提前打了招呼,算是比较老实。
1.2 背景:让 AI 变强的两条路,开源社区只走通了一条
要理解 K3 为什么重要,先看整个行业的大局。让 AI 模型变强,其实只有两条路:
- 第一条路:把模型本身练大(预训练扩展)。就像培养孩子:上更好的学校、读更多的书、脑子本身长得更大。这条路在模型部署之前就完成,靠的是砸算力、砸数据。
- 第二条路:用的时候让它多想一会儿(测试时扩展)。模型已经定型了,但回答问题时允许它"先打草稿再作答"、多想几步、多用几次工具。像考试时给你草稿纸和计算器。OpenAI 的 o 系列、Anthropic 的 extended-thinking、DeepSeek-R1、Kimi K1.5 都是这条路的代表。
行业尴尬在哪:开源社区(模型免费公开的那一派)在第二条路上追得飞快,各种"让模型多思考"的花样玩得很好;但在第一条路上基本停滞了——最近的开源模型大多还停在 1 万亿参数上下,两年多没明显长大。
后果就是:一帮开源模型拿着差不多大的脑子,互相卷"思考技巧",彼此水平越来越接近,但和最强闭源模型(Claude、GPT 的最新版,人家脑子又大又会思考)的差距越拉越大。
K3 的回答:两条路一起拉满。 预训练脑容量直接冲到 2.8 万亿(接近 3 万亿,开源史上第一次),同时在 100 万 token 的超长上下文下玩"多思考、多调用工具"的强化学习。相当于:不但把孩子送进更好的学校,还教会他考试时打草稿。
1.3 总体思路:大脑内部的三条路 + 一套训练流水线
报告把 K3 的架构创新概括成"在大脑内部修三条信息高速公路",方向各不同:
- 长度方向(读长文不破产):用一种叫 KDA 的便宜机制处理长序列,每隔几层插一层传统的"全功率"注意力保住全局视野。好比看长篇小说:大部分时候快速扫读(便宜),每隔几章停下来开一次全员讨论会(贵但全面),不至于读后面忘前面。
- 深度方向(层与层之间修电梯):大脑有 93 层。传统做法是信息一层层"传话"往上走,传到顶楼容易糊。K3 用 AttnRes 让每一层都能"坐电梯"直接翻看前面所有层的笔记。
- 宽度方向(896 个医生不翻车):把专家池扩到 896 个、每次只用 16 个——稀疏程度极高(每个专家被用到的概率不到 2%),靠三个稳定装置保证训练不崩。
训练流程则是:先上学读书(预训练),然后分三个工种(通用任务、智能体干活、写代码)、三档思考强度(少想/多想/往死里想)做强化学习,练出 3×3 = 9 个"专科老师";最后用"多教师蒸馏"把 9 个老师的本事压缩进一个模型——就像九个专科教授合教一个全科学生,学生出师后一个人顶九个。
成绩定位(先把话放这,后面细说):总分只输给 Claude Fable 5 和 GPT-5.6 Sol 两个最强闭源模型,赢过其他所有参评模型;权重全部开源。
第二部分:这个大脑内部长什么样(模型架构)
先看整体结构。K3 的大脑是 93 层"积木块"摞起来的,每个积木块的配方是固定的:
- 3 层 KDA + 1 层 Gated MLA——三种"省钱的快速通道"配一个"全功率大会",4 层一循环,从头滚到尾;
- 每个注意力层后面都接一个"专家分诊台"(Stable LatentMoE);
- 主干最后还额外加了一层 Gated MLA,保证大脑做最终决定前一定有一次"通观全局"的机会。
下面拆开讲。
2.1 怎么让模型读长文又不破产:KDA 混合注意力
先搞懂问题:传统注意力为什么贵
前面说过,注意力 = 开会。传统注意力(叫"全局注意力")的规则是:每来一个新议题,所有人都翻出从会议开始到现在的全部记录,逐条比对谁和自己的关系大。
会议短还好,会议开到 100 万 token(读一整部长篇小说)就出事了:记录本越来越厚,每说一个新词都要翻一遍全本,计算量和内存占用爆炸式增长。这就是大模型"读长文贵到破产"的根源。
K3 的解法:两种开会方式掺着用
K3 没有让每层都开"全员大会",而是 4 层一循环:
- 前 3 层用 KDA(Kimi Delta Attention):便宜的"记事本"机制,擅长记住最近发生的事;
- 第 4 层用 Gated MLA:传统的全员大会,所有人互相通气,把全局信息捞回来。
打个生活化的比方:你在读一部长篇小说。KDA 像你手边一块大小固定的白板——读每一页时,把要点写上去,板子写满了就挑着擦掉一些旧内容再写新的,板子永远那么大,所以读多长的书都不增加成本。MLA 像你每隔几章停下来,把整本书翻一遍开个总结会,把人物关系、前情伏笔重新对齐。光用白板会丢失全局,光开大会会累死,3:1 掺着用,又省钱又不丢全局。
2.1.1 KDA:一块"会遗忘、会改错"的白板
KDA 这块白板的运作规则,每来一个新 token 做三件事:
- 先遗忘:把白板上的旧内容打个折扣。妙处在于这个遗忘是"分栏目的"——白板上一栏记人物、一栏记地点、一栏记时间,每一栏有自己独立的遗忘速度。重要人物关系忘得慢,路人甲忘得快。这是 KDA 相比前辈机制的核心升级。
- 再改错(delta rule,增量规则):写新内容之前,先看看新内容和板上旧内容冲不冲突——如果之前记的是"张三恨李四",这页写的是"张三和李四和解了",就把旧记录擦掉再写新的,而不是越堆越乱。
- 最后读取:要回答问题时,拿当前的问题去白板上查。
因为白板大小固定,所以不管书读多长,成本都不涨。这就是"线性注意力"这个名字背后的含义:开销随长度线性增长(其实是只随"读写次数"增长),而不是传统注意力的爆炸式增长。
工程上的两个关键改进(这里稍微技术一点,但故事很简单):
-
改进一:给遗忘速度"设下限",换来 GPU 全力加速。
麻烦:白板的遗忘系数都是 0 到 1 之间的小数,连乘之后会变得极小极小,做除法时会大到超出显卡能表示的数字范围——就像计算器显示"E"(溢出报错)。前辈方案(Kimi Linear)的绕法是切成小块算,但边角料部分只能用最慢的方式逐格算,拖慢全局。
K3 的解法出人意料地简单:规定白板"一步之内最多忘掉 99.33%,不许全忘光"(具体做法是把遗忘参数压在固定区间内,技术上叫"缩放 Sigmoid",参数 g_min = -5)。有了这个下限,所有数字都不会溢出,边角料也能跑上显卡最快的计算通路(Tensor Core,GPU 里专门做矩阵乘法的单元)。
一句话:用"不许瞬间失忆"这一点点记性上的限制,换来了整块白板计算全部跑上最快车道。这是很典型的工程智慧——不是硬算,而是改规则让账好算。 -
改进二:给每个 token 一个"水龙头"。
从白板读出内容时,K3 让每个 token 自己决定每个栏目"放多少流量"(技术上叫全秩输出门)。好比水龙头不是一个总闸,而是每个格子独立的小阀门,控制精细得多,模型的表达力更强。
2.1.2 Gated MLA:开大会也精打细算
每隔 3 层 KDA,来一次"全员大会"——这就是 MLA(Multi-head Latent Attention,DeepSeek-V2 首创的机制,K2 也在用)。它要解决的麻烦:开大会时的会议记录太占桌面(显存)。每个词、每个分会场的记录都要全量保存,桌子再大也不够摊。
MLA 的办法是压缩存档:不把每本书都堆在桌上,而是把每页内容压成一张"压缩卡片"存着(技术上叫潜在向量),开会时要用哪页,现场把卡片还原。存档体积大幅缩小,这是它能开得起"百万 token 大会"的关键。
K3 在 MLA 上还做了两个改动:
-
完全不贴"座位号"(NoPE,No Position Encoding)。传统模型要告诉大脑"每个词坐在第几排第几号"(位置编码),一旦书变长、座位号超出训练时见过的范围就容易乱套,得做各种"手术"调参数。K3 干脆不贴座位号:反正夹在中间的 KDA 白板天然知道"哪些内容是最近写的"(它按顺序更新、越近忘得越少),位置感由白板负责;MLA 大会只管"谁和谁内容相关",不管谁坐哪。
好处非常实在:上下文长度从十几万扩到 100 万,模型一行位置编码的代码都不用改。 -
和 KDA 同款的"水龙头":大会读出的内容,每个 token 也自己控制每个栏目放行多少。
还有一个不起眼的细节值得一提:K3 训练时发现注意力计算有微小的舍入误差,解决办法是计算时保持高精度(FP32),代价是显存占用翻倍。他们重新设计了计算程序(kernel),让省出来的空间用于流水线加速——结果不但修了 bug,训练速度反而更快了。顺手还赚了一笔。
2.2 AttnRes:给大脑的 93 层楼修"直达电梯"
问题:传统大脑像"传话游戏"
K3 的大脑有 93 层,信息从第 1 层一层层传到第 93 层。传统设计叫"残差连接":每层把上一层的输出加一点自己的改动,再传给下一层。这像传话游戏——第 1 层知道的信息,要原话接力传 92 次才能到顶层,传着传着就走样了。所有历史信息都挤在一个"传话内容"里,越到后面越糊。
解法:每层都能回头翻所有前辈的笔记
AttnRes(Attention Residuals,注意力残差)的思路和当年注意力机制的出世一模一样:既然"开会"能解决"读长文"的问题,那"修电梯"就能解决"传话"的问题——每一层不再只听上一层的,而是用一次小型的"注意力投票",从前面所有层的笔记里挑自己要的信息。
生活化一点:传统设计里,93 楼的住户想了解 5 楼的情况,只能问 92 楼、92 楼问 91 楼……一路问下去。AttnRes 是给每层楼装了一部电梯加一屋子档案:任何一层都可以直接坐电梯下去,翻阅下面任何一层留下的笔记,还能按重要性打分——5 楼的笔记对我最有用,就重点抄 5 楼的。
有个细节很关键:翻笔记前先把各层笔记"调到同一音量"(技术上叫 RMSNorm)——防止某些层的笔记数值特别大,"嗓门大"霸占了所有注意力,不管内容重不重要。
分块版:前辈笔记每 12 页装订成一册
完整版 AttnRes 有个代价:要把全部 93 层的笔记都留着随时可查,太占桌面(显存),而且多台电脑协同训练时传来传去很贵。
K3 的实际做法是装订成册:每 12 层的笔记装订成一册,93 层一共 8 册(最后一册带点零头,加上最开始的原始输入,实际 9 册参与查询)。每层只翻"册",不翻"页"——桌面占用从存 93 份笔记降到存 9 册,开销降了一个数量级,而效果损失很小(实验发现 8 册左右就够拿回大部分收益了)。
一句话:传话游戏改成查档案室,档案太多查不过来,就把档案装订成册,只按册翻。省内存、跑得快、效果基本不打折。
2.3 Stable LatentMoE:896 个科室的医院怎么不翻车
先说麻烦:医院越大,管理越难
前面说过,K3 这家"医院"有 896 个专科医生,每个病人只看 16 个。这个稀疏程度很夸张——每个医生被叫到的概率不到 2%。规模干到这个级别,会出两个乱子:
- 数值爆炸:病人资料送到专科科室前,要先"压缩"成简报(省得每个医生都读全本病历),医生看完简报再"还原"成完整结论。这一压一还,中间数值容易失控放大——就像把一句话耳语传四道,声音可能突然大得吓人。2.8 万亿参数的体量下,这种失控会直接让训练崩掉。
- 分诊失衡:分诊台(路由器)是模型自己学的,学着学着容易偏心——少数热门科室病人排长队,几百个冷门科室整天没病人。热门科室累死、冷门科室永远学不到经验,整个医院效率被最忙的科室拖死。
解法一:简报进档案前先"调到标准音量"
第一个改动简单到不可思议:各科室汇总的意见,在"还原成完整结论"之前,先统一调到标准音量(技术上叫 RMSNorm,把向量长度归一化)。
就像十几个科室主任开完会,有人声如洪钟有人细声细气,汇总意见时先把每个人的音量调到一样大再录音。改动很小,但效果不只是"防崩"——模型考试成绩也实打实变好了。
解法二:给数值装上"软限位器"(SiTU-GLU)
大模型内部的计算结构里有个经典部件叫 SwiGLU,可以理解成一个"水龙头系统":一路算出"要放多少水"(内容),一路算出"阀门开多大"(开关),两路相乘。问题是这两路都没有上限——输入越大输出越大,偶尔两路同时爆表,就产生"数值尖峰",低精度计算时直接溢出。
K3 换成自家的 SiTU-GLU:给两路各装一个"软限位器"(数学上是 β·tanh(x/β) 函数)。这个限位器的脾气是:数值小的时候完全不干预,数值大到接近上限时被平滑地压住,而不是一刀砍断。
- 一路的上限设为 4,另一路设为 25,所以最终输出永远不会超过 100——物理上不可能爆炸了;
- 小数值时和老方案表现一模一样,等于白捡一个保险;
- 之所以是"软"限位:数值贴到天花板时模型还能继续学习调整;如果是硬砍断,卡在天花板上的神经元就"学不动"了。
解法三:分诊台用"分位数"一次算到位(Quantile Balancing,QB)
这是 K3 的一个巧妙设计,值得细讲。
背景规则:K3 的分诊台不搞"惩罚式"管理(那会干扰医院的主业),而是给每个科室设一个"挂号加分"(偏置):冷门科室加分让它也能被病人选上,热门科室减分。加分只影响"谁能被选上",不影响医生实际看病时的权重——就像招聘时给冷门岗位加分让它上榜,但入职后的薪资待遇还是按真实能力算。
老办法的缺陷:原来的调整方式是"固定步长"——每个科室根据忙闲,每次把加分上调或下调固定一小格。这个"一小格"很难定:大了,忙闲来回震荡;小了,追不上变化。科室扩到 896 个之后,这套办法彻底失灵。
QB 的思路:别一格一格挪了,直接算出正确答案。 打个比方:
学校食堂有 896 个窗口,要保证每个窗口的队伍一样长。老办法是每小时观察一次,每个窗口的引导牌挪一格,慢慢调。QB 的办法是:看一眼今天全校学生的口味分布,一次计算出每个窗口的引导牌该写几分,使得分完后队伍恰好一样长——不用迭代,一步算到位。
具体怎么算:挂号时看每个病人的"第 17 名候选科室的分数"当门槛线(前 16 名才接诊),然后对每个科室统计所有病人"超出门槛多少",取一个分位数直接定为新加分——这就是 Quantile Balancing(分位数均衡)名字的由来。效果上,原来可能出现 (4,3,1,0) 这种"有的窗口挤爆、有的窗口没人"的分布,QB 一次调整就变成完美的 (2,2,2,2)。
大规模下的工程实现也很省:真实训练时病人有几百万个、分散在几百张显卡上,把所有数据收集起来算精确分位数不现实。他们的办法是给每个科室建一个"票数直方图"(分 1000 个桶计数)——各显卡只把自己桶里的计数加起来汇总(计数天然可以加),从汇总直方图里读出分位数。误差不超过千分之几,通信成本只有原始方案的 1% 不到。
2.4 天生有眼睛:原生视觉
核心理念:K3 看文字、图片、视频用的是同一个大脑、同一条信息流。这意味着它可以"写一段网页代码 → 看一眼渲染出来的页面截图 → 不满意接着改",全程不需要把活儿转交给另一个模型。代码和它画出来的画面住在同一个上下文里,这就是"原生多模态"的实际意义。
MoonViT-V2:从零练出来的眼睛(这是报告的意外发现)
- K3 的视觉编码器(把图片转成大脑能理解的信号的部件)叫 MoonViT-V2,参数只有 4 亿(相对 2.8 万亿的主脑就是个小不点),27 层。
- 行业惯例是:拿别人预训练好的视觉模型(比如 SigLIP)来当起点,“站在巨人肩膀上”。K3 偏不——从白纸一张开始练。
- 首要原因不是情怀,是稳:实验发现把 SigLIP 接到大模型上一起训练时,梯度(训练时的"纠错信号")持续偏高、频繁出现尖峰,像个闹脾气的学生;从零练的 MoonViT-V2 全程平稳。
- 还有个理论好处:从零练意味着"眼睛"是奔着"帮大脑预测下一个词"这个目标练出来的,会更注意图片里的文字、界面结构这些细节(对 OCR、看懂软件界面很重要);而 SigLIP 那类预训练偏爱"这是一只猫"这种整体语义,容易忽略细节。
- 关键结论:从零练的 MoonViT-V2 在各项视觉考试上追平了用 SigLIP 起点的方案——说明在多模态大模型的规模下,"站在巨人肩膀上"不是必需品。这个结论对整个行业都有参考价值。
省 token 的小技巧:图片进大脑前先做一次 2×2 压缩(pixel-shuffle),视觉 token 数量减到 1/4——这样哪怕 3584×3584 像素的超高清大图,也能塞进 100 万 token 的上下文里不挤爆预算。
2.5 Per-Head Muon:给每个声部单独调音量
训练大脑需要"优化器"——相当于学习时的"纠错系统",告诉大脑每个参数该往哪个方向调、调多少。K3 沿用 K2 的 Muon 优化器,并做了一个精细改进:
- 大脑做注意力时要算三组投影矩阵(Q、K、V),每组内部又分几十个"头"(可以想成合唱团里的几十个声部)。
- 老做法是对整个矩阵统一纠错,相当于合唱团总指挥按同一个音量标准纠正所有声部——结果嗓门大的声部(数值大的头)永远盖过别人,小声部始终练不到位。
- K3 的 Per-Head(按头)版本:把纠错信号按声部切开,每个声部单独调音量,各声部的学习进度被拉平。
- 附带好处:分块后计算量反而更小,优化器开销还略降了。
第三部分:上学读书——预训练
预训练就是大脑的"基础教育阶段":把海量的书、代码、图片喂给它,让它自己从里面学规律。这一阶段的产出叫"预训练模型",决定了模型的底子有多厚。
3.1 教材怎么选、怎么洗
俗话说"吃什么补什么",训练数据就是教材。K3 的教材分两大类:
- 文字教材:网页文本、代码、数学、知识类内容四大块;
- 视觉教材:带说明文字的图片、图文混排的文档、图片识字(OCR)、视频,以及一个重点品类——"代码和它的画面"配对数据(比如一段 SVG 代码和它画出来的图、一段网页代码和渲染出来的页面)。见多了"代码 ↔ 画面"的对应关系,模型自然更会写前端、画图。
教材怎么洗(脏数据比没数据更可怕):每块教材过三道筛子——先用写死的规则粗筛(比如去掉乱码、垃圾网页);再用专门训练的小模型给每条数据打质量分;最后去重(防止模型把同一段话背一百遍)。每块教材在课程表里占多大比例,不是拍脑袋定的,是先拿小模型做"试菜实验"(每次只改一个变量看效果,行话叫消融实验 ablation)摸索出来的。
一个巧妙做法——改写(rephrasing):对知识和数学类教材,让 AI 把原文"换个讲法重新讲一遍"(换风格、换视角),最后还要和原文核对保证没瞎编。相当于把同一本教材改写出好几个版本,同样的知识以更多样的表达出现,模型学得更扎实。
3.2 Scaling Law:先算小账,再花大钱
训练一个 2.8 万亿参数的模型要花的算力是天文数字,赌错了就是几亿级别的损失。所以行业里有个标准做法叫 Scaling Law(扩展定律):先拿一堆小模型做实验,跑出"模型变大、数据变多,成绩按一条可预测的曲线提升"的规律,再据此推算大模型该怎么配参数——相当于先用小试验田试种,再决定几千亩大田怎么播种,而不是拿全部身家去赌。
K3 因为架构、数据、训练方法全改了,老配方不适用,团队专门重做了一轮试验田研究,重新调四个旋钮:每批喂多少数据(batch size)、学习步子多大(学习率)、每个参数配多少教材(TPP)、大脑体型怎么长(层数 vs 宽度)。
核心成果:所有改进加起来,整体学习效率约是 K2 的 2.5 倍。翻译成人话:同样一份算力和教材,K3 学到的本事约是 K2 的 2.5 倍;反过来说,达到同样的水平只需要大约 1/2.5 的投入。这个数字是整个报告的经济学核心——模型变大不可怕,可怕的是变大之后学费同比例暴涨,2.5 倍效率意味着"大"和"养得起"可以兼得。
一个有意思的小发现:训练时"学习步子"怎么安排有两派做法——cosine decay(步子一路平滑变小,像下山越走越慢)和 WSD(先大步快走很久,最后才突然收小)。之前有研究说 WSD 更好,K3 团队发现那场比赛不公平:两派各自最喜欢的参数完全不同,拿同一套参数比相当于"让游泳运动员和跑步运动员穿同一双鞋比赛"。他们给两派各自单独调好参数再比——cosine 稳定胜出,K3 就用 cosine。
K2 → K3,大脑规格变了多少
把两代模型摆一起对比(挑重点说):
- 层数:61 → 93 层。大脑明显变"深"了,思考的"加工工序"更多。
- 总参数:1.04 万亿 → 2.78 万亿。医院专家总数暴涨。
- 每次干活用多少:326 亿 → 1042 亿。每个病人会诊的阵容也大了。
- 专科医生数:384 → 896 个;每次会诊 8 → 16 个;全科门诊 1 → 2 个。医院规模全面升级。
- 能读多长:12.8 万 → 100 万 token,8 倍提升。从"一次读一本中篇"到"一次读几部长篇"。
- 阅读机制:全部 61 层都用传统注意力 → 69 层用便宜的 KDA 白板 + 24 层开全员大会。这是省钱的大头。
- 新增眼睛:K2 没有视觉编码器,K3 自带 4 亿参数的"眼睛"(27 层),天生能看图。
3.3 训练配方:几点细节
- 从第一天起就图文混着学:不是先练语文再补美术,而是语文课美术课一起上。大脑从一开始学到的就是统一的多模态理解,不是"语言脑 + 外挂视觉模块"。
- 防翻车三件套:Per-Head Muon 优化器(§2.5 的合唱团调音量)+ 权重裁剪(防止参数暴涨导致训练崩溃)+ QB 分诊均衡(§2.3)。
- 先学短文再学长文:预训练先用 8K token 的窗口开练(便宜),后期再扩到 6.4 万。短窗口学费低,先用便宜的方式把基础能力学扎实。
3.4 怎么学会读 100 万 token:循序渐进 + 故意出难题
让模型会读长文,不是把窗口开大就行,有三个工程要点:
- 洗长教材:天然的长文档、长视频里垃圾特别多——重复段落、乱码块、被截断的文件、碎视频。走专门的清洗线,视频还要给画面算"指纹"(感知哈希)来去重。
- 多喂长教材:真正又长又连贯的内容在语料里太稀有了,不干预的话模型会被海量短文本"带偏"。所以人为提高长教材的出现频率。
- 故意出"不集中注意力就解不出"的难题(最妙的一条):光有长度练不出真本事——一篇 100 万 token 的灌水文,模型只看局部就能糊弄过去。于是他们人工合成特殊教材:把答案依赖的线索故意撒在 100 万 token 的各个角落,不集中注意力扫完全文就解不出来。这相当于强制注意力机制做超长距离的"健身"。
节奏是渐进的:预训练阶段 8K → 64K,训练收尾阶段 25.6 万 → 100 万。为什么不一上来就 100 万?因为长序列训练极其烧钱,把烧钱的部分集中到整个训练预算的一小撮里,既省钱又让模型循序渐進适应。而百万 token 能跑得动的关键技术(序列切分到多张卡上)留到第五部分讲。
第四部分:毕业后的岗前培训和实习——后训练
预训练出来的模型像个博学的应届生:读了很多书,但不会上班。后训练就是把它培养成"会干活的员工",分三步走:岗前培训(SFT)→ 分科室实习(RL)→ 九合一出师(MOPD)。
4.1 三步走流水线
第一步:岗前培训(SFT,监督微调)
用高质量的"标准答案示范"先教模型基本职业素养:怎么调用工具、怎么分步推理、怎么按规矩干活。相当于给应届生看一堆"优秀员工工作录像"。
- 数据来源:先让上一代 Kimi 模型批量合成"干活全程录像",再经过多轮机器检查 + 人工把关。
- 如果这一步底子差,后面的强化学习就像让小学生直接参加高考——所以要把示范数据做足,尤其侧重复杂的多步任务。
- 一个关键细节:从这一步起就全程"穿着小一号的鞋训练"(QAT,量化感知训练)。最终部署时模型要压缩成口袋版(量化),提前在训练时就模拟这种压缩带来的精度损失,让模型提前适应——免得培训时穿皮鞋、上岗换拖鞋,直接不会走路了。
第二步:分科室实习(RL,强化学习)
强化学习 = 打游戏闯关练级:模型试着干活,干得好给金币(奖励),干得差扣分,玩着玩着水平就上去了。
练出几个高手? 不按单个任务练,而是按 3 大工种 × 3 档思考强度交叉组合:
- 三个工种:通用任务(问答、搜索、知识活儿)、通用智能体(长程助理、深度研究、写作)、编程智能体(软件工程、GPU 内核、网页开发);
- 三档思考强度:低(简单问题少想,省 token 省钱)、高、最大(难题往死里想)。
3 × 3 = 9 个专科高手。报告里有张图很说明问题:往强化学习里砸的算力越多,各科目分数稳定上涨,而且模型平均调用工具的步数也随之增加——它真的学会了"多动手、多查证",而不是瞎猜。
实习中解决的三个实际问题:
- 干活快的等干活慢的,怎么办? 同一批任务里,有的几秒完成,有的要调几百次工具跑很久。如果等最慢的跑完再总结学习,算力大量时间在干等。K3 的办法叫 partial rollout(部分采样):只要完成比例达标就先开课总结,没跑完的任务排队,下一轮接着跑(靠后面要讲的"可暂停沙箱"支持断点续跑)。
副作用是一条长任务可能横跨好几轮学习,等它跑完时模型已经更新过好几版——它产生的经验相对"现在的模型"来说有点过期。K3 用逐 token 的约束把每次学习幅度限制在小范围内,即使经验过期得厉害也不翻车。 - 怎么防止"不分轻重都往死里想"? 给每道题设 token 预算(草稿纸配额):先用冷启动模型估个初始预算,实际用量超额就扣分——“超时扣分”。训练时先用宽松预算练出"最大档"高手,再把预算收紧,依次练出"高档"和"低档"。模型由此学会"该多想时多想、该省时省"。
- 没有标准答案的开放题怎么打分? 用一个"会行动的裁判模型"按固定流程打分:先看成果、再制定评分细则、按细则给两个候选答案 PK 打分、记到记分板——强制走流程是为了让打分有依据、可审计。还有防"注水"机制:谁的回答超过典型长度上限直接判负,话多不算本事(防止模型靠越写越长骗高分,这叫 reward hacking 防作弊)。
第三步:九合一出师(MOPD,多教师在线蒸馏)
9 个专科高手各有所长,但用户只想要一个模型。怎么办?让 9 个老师合教一个学生(多教师蒸馏 multi-teacher on-policy distillation):
- 学生每写一个字,对应的老师就打分:"这个字写得合不合我意?"老师越赞成,学生得分越高。
- 老师的打分只当参考答案,不许学生反向去改老师(技术上叫 stop-gradient);分数设上下限,防止极端打分把学生带崩。
- 每个字都有即时反馈,这种"稠密奖励"练起来又快又稳。
学生出师后,一个模型就同时具备了 9 个专科老师的本事,还能按用户需求切换思考档位——简单问题少想省钱,难问题多想求准。
顺手做的两件部署优化
- 全程"小鞋训练"见效:部署时占参数大头的专家权重压成 4 位浮点(MXFP4,可以理解成"每个数只保留很少几位,大幅省显存"),激活值用 MXFP8;精密部件(注意力投影、分诊台等)保持高精度不动——大件压缩、精密件不压。因为训练全程都在模拟这种压缩,模型上线后成绩基本不掉。
- 配了个"速记员"提速(投机解码):模型说话时是一个字一个字蹦的,慢。投机解码的原理是配一个小"草稿模型"先快速猜出接下来几个字,大模型一次性检查,猜对了就批量采纳,速度快好几倍。妙的是 K3 预训练时自带的 MTP 层(多 token 预测层,一次猜后面好几个词的结构件)稍微改造一下就能当这个速记员用,大模型完全不用动,成本极低。训练目标也很讲究:直接优化"采纳率"(草稿和大模型意见的重合度),而不是传统的间接指标。
4.2 练功房:模型在哪实习
强化学习的效果高度依赖"练功房"是否丰富、仿真、可验证。K3 搭了一大批,挑重点讲:
- 统一白盒环境:如果模型总在同一种"工作软件界面"里实习,换个界面就抓瞎(这叫过拟合)。他们把工具接口、系统提示、上下文管理等拆成可拼装的积木,能拼出 Kimi Code、Claude Code 等各种主流工作环境的模样,让模型什么场面都见过。
- 知识图谱出题:维护一张会自我生长的知识图谱,派 AI 智能体对每个概念做多轮网络调研,概念够细了就停止生长;出题时从不同粒度的节点采样、搜真实材料、合成训练题。保证题目又广又深,还有冷门知识。
- 仿真办公软件:做了 Gmail、Notion、Slack 等常用软件的高仿版——保留真实软件的核心逻辑,但不依赖外部接口,可以大规模、可复现地折腾。在此基础上设计接近真实职业流程的任务(人力、法务、金融场景):智能体在多个"模拟工作日"里处理跨应用的几十个关联事件,一次任务最多涉及上千次工具调用、上百万 token 上下文——这就是"长程智能体能力"的练兵场。
- 自主执行任务(AET):最难的一种练功房——只给目标、工具、预算和验收标准,不给示范、不给流程,模型必须自己拆任务、选工具、规划、纠错、决定何时收工。评分只看"验收器对最终结果的检查",不信模型自称"我做完了"。还有个绝的任务:让模型只能通过对一个隐藏系统发问来摸索,最后用网页应用把这个系统复刻出来——纯靠试探和推理还原黑盒。
- 防作弊三板斧:模型和验收器隔离(不许偷看评分标准);公开验收器(给反馈)和隐藏验收器(考没见过的场景)配对;提交次数有限且乱提交扣分——防止靠瞎蒙刷分。
- GPU 内核题库:为练写高性能显卡代码的能力,攒了从单个算子到巨型融合内核的大规模题库,奖励同时看正确性和速度——追平专家给一半分,越接近硬件理论极限分越高。还配了反作弊系统:检测"回放旧结果、缓存答案、偷降精度"这些假优化手段,发现新作弊套路就持续打补丁(模型越聪明越会钻空子,这是真实发生的猫鼠游戏)。
- 网页开发任务:从"一句话建个站"到"按需求文档写全栈应用"都有,跑在隔离容器里,用多种不同的工作框架实习。评分 = 自动化功能测试(构建失败、运行报错、造假糊弄直接零分)+ 其他模型审查代码和实际体验成品。
一句话总结这部分:K3 的后训练是"先岗前培训打底 → 3 工种 × 3 档练出 9 个专科高手(部分采样解决快慢不均、预算控制管理思考长度、流程化裁判防注水)→ 九师合教一个学生"的流水线,再配上一整套可自动验收、防作弊、高度仿真的练功房。模型是在接近真实工作的场景里,真刀真枪练出来的。
第五部分:幕后基建——那些"让一切跑得动"的工程活
前面讲的都是"大脑怎么设计、怎么教"。这部分讲的是怎么让这个怪物级的大脑在真实机房、真实显卡上跑得动、跑得起。K3 把三个很少同时出现的难题凑到了一起:新型注意力机制(KDA)、近 3 万亿参数的训练、百万 token 的超长任务。下面的每个故事都是同一个结构:遇到了什么麻烦 → 怎么巧妙解决 → 效果如何。
5.1 让 KDA 白板在显卡上跑得飞快
麻烦:KDA 白板的规则是"一个词一个词地更新",而 GPU 的天性是"喜欢几万个活一起干"。让一个习惯批量的机器去干串行活,就像让一条流水线工人一个一个拧螺丝——大部分工人闲着。
解法分两层:
- 单张卡内:FlashKDA。把白板更新拆成"可以并行的部分"(一段话内部)和"必须串行的部分"(段与段之间传白板),然后让这两部分重叠着干——串行段在传白板的同时,并行段已经开始算下一段了。效果:大幅超过参考实现,训练和推理两头都用它。
- 多张卡间:KCP(KDA 上下文并行)。读 100 万 token 的长文时,要把文章切成很多段分给多张卡算。麻烦在于:KDA 白板的特性是"这段内容会把白板改成什么样,取决于进这段时白板上已经有什么"——所以每张卡没法在不知道前一张结果的情况下先开工,大家只能排队,卡住。
K3 的洞察很巧:把每段的作用拆成两份本地就能算的东西——① “这段内容会让旧白板褪色、修改多少”(一个变换);② “如果白板上啥都没有,这段内容自己会写出什么”(一个局部结果)。两份都只依赖本段内容,每张卡不用等任何人,先算好自己的两份,然后互相广播一次,再按顺序拼装出各自的真实起点。
效果:不管文章多长,卡间通信就是一次固定大小的广播(传统方法序列越长交换越多),卡数翻倍算力就近乎翻倍。这是百万 token 训练跑得动的关键。
5.2 3 万亿参数训练:让几百张卡谁都不闲着
训练时用了好几种"分工方式"的组合(流水线并行、专家并行、数据并行……你不用记名字,理解成"把活切成不同维度分给几百张卡"就行)。三大麻烦:
麻烦一:有的卡忙死,有的卡闲死 → MoonEP 完美均衡
医院(MoE)的科室分散在几十张卡上。分诊台是模型自己学的,分到各卡的病人数量天然不均——整体速度被最忙的那张卡拖死。
MoonEP 的解法:给科室开"分院"。前向计算时,实时算出哪些科室病人会爆,提前把这些科室的"分院"(冗余副本)开到闲卡上,让每张卡收到的病人数量一模一样。
- 妙在有个数学保证:他们证明了每张卡最多开 E/R 个分院(E=科室总数,R=卡数)就必然能找到完美均衡方案,而且这个数基本压不下去了(附录 E 有这笔账)。老办法是预设分院数或设上限,一旦超限训练就得停。
- 分院规划每步都要算,精确最优解太贵——他们离线先算好参照解,再设计了一个 GPU 上的快速规划程序,接近最优、开销可忽略。
- 完美均衡还带来一串连锁好处:每张卡活一样多,通信缓冲区大小固定、省掉中间拷贝;每层的计算量提前可知,CPU 不用每层都跟 GPU 对一次表(老办法每层对表一次,流水线老卡壳)。
麻烦二:桌面(显存)不够大 → 一整套省桌面组合拳
2.8 万亿参数训练时,要存的东西(中间结果、梯度、优化器状态)远超单卡显存。K3 的解法是一堆小聪明的组合,说几个有代表性的:
- 统一储物柜:每个中间结果挂一个可插拔的"存储策略"——可以重新算(用算力换空间)、可以压缩(FP8)、可以搬到别的卡甚至硬盘上,按件自由组合,跟模型代码完全解耦。
- 梯度放 CPU 内存:算出来的梯度(纠错信号)切片后存到 CPU 内存里,显卡上只留两个缓冲槽轮用。
- 给参考模型"蹭床位"(这个最妙):强化学习时需要留一个"旧版本模型"当参照物,防止新模型学跑偏,但它的权重太大没法常驻显卡。办法:参照物平时睡 CPU 内存,要用时搬上显卡——而且不占新地方,直接睡在训练用的梯度缓冲区里(那段时间反正闲着)。等真正要算梯度时这块区域本来就会被覆盖,所以完全安全。白嫖一块显存。
- 视觉编码器塞进"流水线气泡":流水线训练像接力赛,交接棒时总有空档(气泡)。他们观察到前几个接力段的开头、最后几段的结尾之间有空档,就把看图(ViT)的计算拆开塞进气泡里——结果大部分视觉计算被藏进了本来要浪费的空档里,"眼睛"的开销基本归零。
麻烦三:大图长视频让计算忽大忽小 → 动态切图
一张 3584×3584 的大图或一段长视频,会让视觉编码器的计算时间暴增。解法:把大图沿"小方块"维度切到多张卡上一起算,多张大图再均匀分发到各小组,防止有的组噎着有的组饿着。
5.3 百万 token 实习:一个"沙箱工厂"
麻烦:让模型做"上千次工具调用、上百万 token"的长任务实习,算力有限,必须抠着花。而且智能体干活需要"沙箱"(隔离的执行环境,带围栏的游乐场)——需要几万个同时开工,还要能暂停、能恢复。
解法一:训练和采样同一批显卡轮着用
实习分两个环节:模型跑任务产生经验(采样)、拿经验学习(训练)。K3 让同一批显卡轮流干这两件事,这样一个百万 token 的实习实验只需要几百张 GPU。配合前面说的 partial rollout,超长任务不用一口气跑完。
但新麻烦来了:采样时攒下的"读书笔记"(KV 缓存)要留到下一轮,训练也要占显存,两者抢桌面。三个对策:
- 外部读书笔记池:正在用的笔记留显卡,暂时闲置但以后还会用的笔记,只在被挤出显卡的那一刻才搬到 CPU 内存的大池子里,要用之前再提前搬回来(行话叫"写回式"——只有真正离开桌面的文件才搬去仓库,不为没必要的搬运付运费)。训练一结束,训练状态搬到固态硬盘上,给池子腾地方。为什么在乎?因为百万 token 下丢一次笔记,等于让一个读完 80 万字的人从头重读,代价极高。
- 自动节流阀:实习开头大家上下文都短,结尾都很长。按平均长度定并发数,前期显卡吃不饱、后期又爆。于是做了个自动阀门:看实时压力(活跃请求数、缓存占用率)动态决定放多少任务进来,前期放开跑、后期自动收紧,不用人管。
- 参考模型蹭床位:就是上面说的那个,不再重复。
解法二:AgentENV 沙箱——从"合租隔断间"到"独门独户"
麻烦一:智能体太能折腾。 越聪明的模型越爱钻空子。早期用容器沙箱(类似合租屋的隔断间,隔得不严实)时,智能体的意外操作搞出过好几次系统内核崩溃和死锁。但又不能把它捆死——复杂任务需要接近真实的环境,比如让它随便挂磁盘、跑容器、甚至自己开虚拟机。
解法:用 Firecracker(亚马逊开源的轻量虚拟机技术)给每个智能体一个 microVM(微型虚拟机)——隔离性从"合租隔断间"升级成"独门独户",随便折腾。
麻烦二:等待时间 98% 都在浪费。 智能体干活时要频繁等模型出结果,这个等待最长可占沙箱生命周期的 98%——沙箱干占着 CPU 和内存在那傻等。
解法:microVM 支持"快进快出"的生命周期——暂停的沙箱不占任何资源(等待时冻住);分叉可以从当前状态克隆一个副本(评委在克隆体里验收,不污染正在干活的那个);快照定期存档出错可回滚。底层是"增量检查点":存档时只存上次以来改过的内存页,所以存档只要 133 毫秒、恢复只要 49 毫秒——一眨眼的功夫。
麻烦三:几秒内要开张几万个游乐场,每个装修还不一样。
解法:镜像分层共享、P2P 传输、写时复制内存等一系列手段,实现亚秒级开张;内存超配比达到 6.5——1 份物理内存当 6.5 份用(因为大部分沙箱大部分时间在冻结,敢这么超)。
最终规模:整个 K3 训练和评估期间,一共创建了 51,219,741 个沙箱,涉及 1,505,678 个不同镜像——五千多万个。说是"沙箱工厂"毫不夸张,这个规模本身就说明了 K3 的实习强度有多大。
5.4 上线服务:让百万 token 和一句话的问题和平共处
模型训练好了要上线接客。三大麻烦:
麻烦一:两种"记忆"要一起管 → KDA 感知前缀缓存
K3 每个积木块里有两种记忆:MLA 的会议记录(越记越厚)和 KDA 的白板(大小固定)。一份历史对话要被下次复用,必须两种记忆在同一个位置都能接上,缺一不可。
麻烦在细节上:传统缓存按"凑满一整块才算数"复用,而 KDA 白板太大只能隔很远存一次快照,导致块被拉到 1024–6144 token 那么粗——短于一个块的请求永远复用不了缓存。
解法:两套粒度各管各的——复用匹配按 512 token 的细颗粒算(够不够格复用),存储分配按粗颗粒管(怎么省地方),白板快照只存在细颗粒的边界点上。再加上"链式哈希"(每个边界点的指纹覆盖前面所有内容,对上一个点就等于认证了整段前缀),最终效果是:任何共享前缀都能在任何 512 token 的边界上复用——跟全注意力模型一样灵活。比如一个前 2800 token 和历史对话重复的新请求,可以从第 2560 个 token 直接接着算,前面 2560 个一字不差地白捡。
麻烦二:新零件没有现成的快算法 → 专门打磨的 kernel
KDA、AttnRes、超稀疏专家层都是新零件,现成的计算程序(kernel,显卡上跑的最底层代码)不适配,团队给每个零件专门打磨:
- KDA 解码:模型说话时白板要一步步原地更新,配上"速记员"(投机解码)后更麻烦——速记员猜错了要回滚,但白板已经改过了。解法:不存白板本身,只存比它小得多的"原料",需要回滚时在芯片上现场重放出白板状态。效果:验证延迟低于所有基线方案。
- AttnRes:计算开销大头在搬数据而不是算,所以优化主打"少搬运"——训练时把数据切片存放消除冗余,推理时把多个小计算揉进一次通信里顺便做完。
- 超稀疏专家层:896 选 16 的调度开销很大,解法包括把"压缩"和"分诊"两道手续合并成一次矩阵乘、小批量时改用"以 token 为中心"的读取方式(每个线程小队负责一个输出、直接流式读权重)等。共同主题:少搬数据、通信藏进计算里。
麻烦三:一条消息和一本书同时来 → 集群调度
上线后,有的请求不到 2K token(一句话问题),有的带 100 万 token(扔进来一整个代码库),单请求成本差约三个数量级(上千倍)。这带来两个事故隐患:
- 缓存没命中贵到肉疼:典型编程场景是"输入带 40 万 token 的历史,实际只需新算 4 千"——命中缓存就白捡 40 万,没命中就要重算,成本差几个数量级。解法:缓存亲和调度——每个请求路由到"持有它历史缓存"的那个集群。但吊死在一个集群上又怕它挂,于是用一致性哈希给每个会话绑两个集群:主集群平时服务,备用集群提前指派好、主挂了就接管(接管时虽然要重算,但不同会话的备用均匀散布在全机群,压力被分摊)。
- 长请求饿死短请求:一波百万 token 请求吃光算力,后来的短请求排不上队。解法:分车道——给不同请求类别各配独立的资源预算,长上下文流量再猛最多吃掉自己那份配额,不会拉低短请求的服务水平。相当于高速公路给快车和慢车各划专用道。
第六部分:考试成绩——到底行不行,分数说话
6.1 主要评测:一场全科考试
考什么、跟谁比:K3 参加了一整套"全科考试",分四大科目。对手方面,闭源阵营是 Claude Fable 5、GPT-5.6 Sol、Claude Opus 4.8、GPT-5.5,开源阵营是 GLM-5.2——大家都开到"最高思考档位"来比,算是公平对决。
总体名次一句话:K3 紧紧咬住最强的两个闭源模型(Fable 5 和 GPT-5.6 Sol),稳定压过其他所有参评模型。开源第一,全场第三梯队领头羊。下面分科目看:
科目一:推理与知识(考"脑子好不好使")
- GPQA Diamond(研究生级别的科学问答,考物理化学生物硬知识):K3 拿 93.5%,和前沿基本持平(GPT-5.6 Sol 94.1%、Fable 5 92.6%)。这个分数意味着:给博士生出的专业题,它能答对九成以上。
- HLE(Humanity’s Last Exam,“人类最后的考试”):专门收集各科顶级难题、号称"如果连这个都会了考试就没意义了"的变态试卷。K3 不带工具 43.5%、带工具 56.0%,都落后于 Fable 5(53.3 / 63.0)。另一项科研级测试 CritPt 只有 23.4%(GPT-5.6 Sol 32.3%)。报告坦承:最前沿的科研级推理仍是短板,这是重点改进方向。
- AA-LCR(长上下文检索,考"扔给你一部长篇小说你能不能找到那根针"):K3 反而拿了第一(74.7%)——100 万 token 的记性不是吹的。
科目二:编程(考"能不能当程序员")
- ProgramBench:77.8%,全场第一。
- SWE-Marathon(GPU 内核优化,编程里的"举重项目",考写显卡底层代码):K3 42.0%,比第二名 Fable 5 高 7 分,GPT-5.5 只有 14 分。这项优势很大,和它专门拿 GPU 题库练过(§4.2)直接相关。
- Terminal-Bench 2.1(在命令行里干活):88.3%,几乎追平 GPT-5.6 Sol 的 88.8%。
- FrontierSWE(长时程软件工程):81.2% 排第二,输给 Fable 5 的 86.6%。
- DeepSWE:67.5%,排在 Fable 5(70.0)和 GPT-5.6 Sol(73.0)之后,但赢了 Opus 4.8 和 GPT-5.5。
科目三:智能体(考"能不能当数字员工",K3 的主场)
这类考试是让 AI 自己调用工具、上网搜索、操作软件完成真实任务——是最接近"AI 替你上班"的测试。K3 拿了一大片第一:
- BrowseComp(联网搜索答题,考"会不会查资料"):91.2%,第一。这项测试里它还会做"上下文压缩"(内容太多时把前面看过的做摘要腾地方);如果完全不压缩、用满 100 万 token,能拿 90.4%。
- DeepSearchQA(深度搜索问答):95.0,第一。
- MCPMark-Verified(调用标准化工具接口干活):94.5%,大幅领先(第二名 92.9)。
- τ³-Banking(银行客服场景):33.4%,第一(这分数看着低,是因为题本身极难,已经是全场最高)。
- Harvey Lab-AA(法律专业场景):94.6%,第一。
- 例外也有:两项用 Elo 积分制(像下棋积分,赢加分输扣分)的知识工作测试——GDPval-AA v2 排第三(1686 分)、AA-Briefcase 排第二(1548 分),都被 Fable 5 领先。CorpFin v2 和 OSWorld-Verified(真实操作电脑桌面)都只落后 Fable 5 区区 0.2 分。
科目四:视觉(考"眼睛好不好使")
一个明显规律:允许带 Python 工具(相当于允许用计算器)时分数大涨,说明 K3 会"边算边看":
- Math-Vision(看图做数学题):裸考 94.3%,带 Python 涨到 97.8%。
- ZeroBench(超难视觉题,难到大多数模型接近零分):裸考 23.0%(和 Fable 5 打平),带 Python 飙到 41.0%。
- OmniDocBench(看懂各种文档):91.1%,全场最高。
- WorldVQA(世界知识视觉问答):51.0%,排第二。
6.2 内部评测:自家出的考卷,专考公开考试测不到的
公开榜单大家都能刷,Kimi 团队还维护一批内部考试,题目经常换,专盯模型最新犯的错。结论比公开榜单更能拉开差距:
- 最亮眼的强项:会"当领导"和"搞研究"。
- Swarm Bench(指挥一群子智能体分工并行干活,考"当项目经理"的能力):76.3,第一(GPT-5.6 Sol 73.2)。
- Deep Research Bench(深度调研):90.0,第一。
说明 K3 特别擅长把复杂目标拆开、派活给多个分身、最后交出符合要求的成果。
- 编程也是强项,而且"手感"好。
- Kimi Code Bench 2.0(真实端到端软件工程):73.7,只输 Fable 5 的 76.9——而且 Fable 5 这 76.9 里还有 13 次"考砸了重来"和 1 次拒答。
- Coding Experience(当编程搭子的"情商":沟通质量、行为得体、指令执行稳不稳):59.9,第一——分数之外的使用体验领先更多。
- 网页开发盲评(专家不知道哪个模型写的,纯按质量打分):K3 对 Claude Opus 4.8 赢 58.6%、输 27.6%,净胜 +31.0 分;其中 3D/WebGL/Shader 类任务净胜 +59.1 分——写炫酷网页是它的绝活。
- 短板也列清楚:
- Agent Behavior Bench(干活过程规不规范):65.0,对手 75+,明显落后;
- MIRA Bench(多角色多系统的企业协作长链路):64.1 vs Fable 5 的 72.9;
- 24/7 ClawBench(7×24 小时不间断助理)、Agentic Vision(干活时能不能注意到画面里的关键信息)等也落后。
- 其余项目(KAET 长时程自主执行、CLIF 边学边做、Faithfulness 幻觉控制 85.5、聊天体验 85.2、做 PPT 等)都是第一或并列第二。
网络安全专项:能挖真漏洞,但写完整攻击程序还不如最前沿
这块报告评得很认真,因为这是把双刃剑——既能帮防御方找漏洞,也可能被滥用。分两级考:
- 第一级:挖漏洞(偏防御)。让模型在现在仍在用的真实软件里找以前没人知道的新 bug。结果:在几十个广泛部署的系统(操作系统内核、数据库、AI 服务、Web 框架、区块链、VPN)里找出几百个候选,人工审核后约 70% 是真的,包括 6 个项目里的 16 个未知漏洞。其中两个 Linux 内核漏洞相当有分量:一个是可远程触发、能让服务器瘫痪的;一个被专家确认为"稳定可用的本地提权手段"(普通用户能拿到最高权限)。这些漏洞已按负责任流程上报。
- 第二级:写漏洞利用程序(和滥用风险直接相关)。36 道经人类专家验证可解的题(整套题人类专家要做约 540 小时,平均一题 15 小时):K3 解出 14/36(38.9%),GLM-5.2 解出 8/36(22.2%)。没解出的题复盘下来主要死在四处:拿到关键突破口却走不完最后一步、面对防护选错路线、陷进无效调试死循环、提交前不验证成果。
- 外部独立评估(英国 AI 安全研究所和 NIST CAISI)结论一致:K3 强于 GLM-5.2,但端到端完成完整攻击的能力不如最前沿模型(41 个拿到任意代码执行的任务里完成 0 个)。团队声明这是能力的下限估计,每次大版本更新都会重测。
- 值得一提:Anthropic 和 OpenAI 的模型会直接拒绝网络安全任务,所以没法同场对比。
6.3 第三方评测:别人考的试(截至 2026 年 7 月 23 日)
自家办的考试说了不算,看独立机构的:
- Artificial Analysis(综合智力指数):57.1 分,580 个模型里排第四,前面只有 Claude Fable 5(59.9)和 GPT-5.6 Sol(58.9)。
- Vals AI(按各行业 GDP 加权的实用价值榜):74.7%,39 个模型里排第二,仅落后 Fable 5 的 75.1%,领先 GPT-5.6 Sol 的 73.1%。
- WebDev Arena(真人盲评擂台:用户出题、各家模型匿名做网页、真人投票):第一名,Elo 1678,超过 Claude Fable 5 的 1634——史上第一个登顶该榜的开源模型。真人真金白银投票选出来的第一,含金量比刷题高。
- 另外两个擂台:Text Arena(纯文字聊天盲评)第 8/200;Agent Arena(智能体盲评)第 4/37。
6.4 性价比:这部分可能是普通用户最该看的
不看绝对分数,看"每分钱买到多少分":
- Kimi Code Bench 2.0:K3 比 Fable 5 低 4 分,但成本只有对方的 38%;而且 K3 开"高"档就能追平 Opus 4.8 开"满"档的分数,成本约三分之一。
- BrowseComp:K3 拿全场最高分 91.2%,每题仅 2.03 美元——是 GPT-5.6 Sol(90.4 分)的一半,比 Claude 系开满档便宜约十倍。
- GDPval-AA v2:和 GPT-5.6 Sol 分差在 50 分以内,成本低 13%;比 Fable 5 便宜 2.6 倍。
- AA-Briefcase:分数第二(仅次 Fable 5),成本约为后者一半。
总结:四个套件上 K3 都处在"性价比前沿"——用 Claude Fable 5 零头的成本,拿到接近顶尖的成绩。对真正要用 AI 干活的公司来说,这条可能比总分排名更值钱。
7 案例研究:它到底能干什么级别的活
光说分数抽象,看几个实战(都是报告里的真实案例):
- 给自己的大脑做"手术器械":让 K3 在沙箱里最多跑 24 小时,去优化四种 GPU 内核(就是第五部分讲的那些底层计算程序)。结果:一个内核延迟从 283.6 毫秒砍到 114.4 毫秒,另一个快了 73.6%,整体追平 Fable 5、明显超过其他对手。最魔幻的是:项目开发后期,一个早期版本的 K3 就已经在帮团队干自家大部分内核优化活了——模型在优化承载自己的基建。
- 手搓一个 GPU 编译器:K3 从零写了一个迷你版 Triton 编译器(编译器是把人类代码翻译成机器指令的软件,写编译器是程序员里的"造工具"级别的活)。这个编译器跑核心基准,几何平均性能超过 PyTorch 的标准模式;手写的矩阵乘法逼近英伟达官方库,达到实测硬件上限的约 90%;用它完整训练一个 GPT,训练曲线和 PyTorch 参考几乎重合。这说明它不是会写几段孤立的代码,而是能搭出一套完整的软件系统。
- 设计芯片:48 小时无人值守,K3 用开源芯片设计工具,为"一个迷你版自己"设计了一款推理芯片原型:4 平方毫米面积内集成了 146 万个标准单元,仿真吞吐超过 8700 tokens/s。设计文件已开源。
- 搞科研:复现计算天体物理里的一个经典关系——读了 20 多篇论文并交叉验证、实现完整数值计算管线、算了 300 多个物理模型、还发现并指出了论文公式里的不一致之处、写了 3000 多行代码,全程约 2 小时,而有经验的研究者通常要 1–2 周。
- 做行业研究:做了一个覆盖 AI 芯片行业 42 年历史的交互式研究网站——迭代 120 多轮,消化 87 份季报和 99 份原始 PDF(超过 11000 页),发起 2800 多次网络搜索。另一个案例:用 20 多个并行分身分析了引力波目录里的 391 个事件,产出可视化图表和文献综述。
- 剪视频:发挥原生多模态,从 56 个素材片段剪出一条预告片——选片段、按动作匹配剪辑点、帧级卡点配乐、多轮修改。同等密度的短片,熟练剪辑师一般要 1–2 天。
8 结论
Kimi K3 是一个开源的 2.8 万亿参数 MoE 模型,天生能看图,能一口气读 100 万 token,底层靠 KDA 和 AttnRes 两项自研技术撑着。作为全球首个开源的 3 万亿参数级别模型,它在长时程编程、智能体、知识、推理、视觉上都达到了前沿水平。报告自己承认:和最强的两个闭源模型还有差距。但它把"开放模型的前沿"推进到了所有人触手可及的范围内——这个差距第一次变成了人人可以免费拿到手、研究透、再创新的东西。
第七部分:附录选讲——数学部分在算什么账
附录里都是数学推导,不看公式也能懂。每个附录用一两段话说清"它在算什么账、为什么这么算"。
附录 B:SiTU-GLU 的细节(§2.3 的"软限位器"到底怎么设计)
在算什么账:给"水龙头系统"加上限,同时不能破坏它原来的好脾气。SwiGLU 的两路相乘没有上限,超大规模训练时个别数值会爆炸。SiTU-GLU 用 tanh 函数当"软夹子":数值小时它几乎不干预(数学上误差极小),数值大时平滑压到天花板,而不是一刀砍断。因为两路各自被夹住,乘积的绝对值永远不超过 4×25 = 100——爆炸在数学上被彻底排除。为什么不直接硬砍断(clamp)?因为砍断处模型收不到"纠错信号"(梯度为零),卡在边界的神经元就学不动了;软夹子在接近天花板时仍有信号,实验上训练行为确实更好。而且把上限参数调到无穷大,它就退化回原版 SwiGLU——等于这是个带保险旋钮的升级版,关掉保险就是老产品。
附录 C:Quantile Balancing 的推导(§2.3 的"一步算到位"为什么是对的)
在算什么账:证明"分诊台直接算出正确加分"不是拍脑袋,而是有严格数学依据。推导路径(不用管细节):先把"896 个窗口队伍一样长"写成一个数学规划问题(约束是所有窗口恰好分到一样多病人,目标是总分诊质量最高);通过放松变量、对偶变换这几步标准操作,最后解出来的答案恰好是"取分数分布的某个分位数"——这就是方法名字的由来。这笔账算出两个很实用的结论:① 真正部署时每个科室只需要存一个数字(加分),病人侧的临时变量用完就扔,线上推理零额外成本;② 老办法(DeepSeek 的符号更新法)相当于"每步只朝正确方向挪一小格",而 QB 是"一步跳到该方向的最优点"——所以它不需要调步长、几步就收敛,哪怕科室近千个。附录还对比了其他方案:有的只能压热门科室、扶不起冷门科室,有的允许每个病人挂不同数量的号(规则不一致),都不如 QB 干净。
附录 D:基于直方图的分位数估计(§2.3 的"票数直方图"为什么又准又省)
在算什么账:QB 需要"全体几百万病人"的分位数,但数据分散在几百张卡上,全收集起来算精确值不现实。这笔账的关键洞察是:更新根本不需要每个病人的具体分数,只需要每个科室的分数分布——而分布可以用直方图廉价概括。具体做法:把分数区间均匀切成 1000 个桶,各卡只统计自己桶里的票数(零通信),最后把各卡的票数加一次总(计数天然可加),从汇总直方图里读分位数。三个性质让它站得住:准(误差不超过一个桶宽,约千分之几,实测没有残余不均);省(通信量只有"交换原始分数"方案的 1% 不到,且和病人总数无关);对(因为计数可加,算出来的一定是"全体病人的分位数",而不是"各卡分位数的平均"——这两者一般并不相等,后者是错的)。
附录 E:MoonEP 冗余专家上界的证明(§5.2 的"开多少分院必然够")
在算什么账:第五部分说"每张卡最多开 E/R 个分院就必然能完美均衡",这个数是证明出来的,不是试出来的。证明思路像"倒水找平":R 杯水水量不均,每次挑一杯最满的和一杯最空的,从满的倒过去把空的恰好灌满——每灌一次就有一杯永久达标,最多灌 R−1 次全部平衡。顺着这个构造就能算出:每张卡的"外来病人"最多只来自一张别的卡,涉及的专家不超过 E/R 个。第二个定理再证明这个数基本压不下去:构造一种最刁钻的分诊(0 号卡的专家一个病人都没有,病人全在别的卡上),此时任何方案下 0 号卡都需要约 E/R 个分院。两个定理一夹,E/R 既是上界又近乎最紧——分院开在刀刃上,一个都不多开。
附录 F:聊天模板(模型和用户之间的"电报格式")
这个不算数学,但值得知道:模型和用户、工具之间传递消息需要一套固定格式(聊天模板),K3 重新设计了叫 XTML 的格式,三个设计目标很务实:可扩展(新功能靠加消息类型引入,不用改版模板,一套模板服务整代模型);好学(格式简单,少量示范就能教会模型,降低"对齐税");好解析(结构边界都是显式标记,软件处理起来不费劲)。两个贴心设计:① 工具声明等全局设置放在对话最前面,单次请求的参数放在最后面——这样改一次参数不会让历史缓存作废(缓存复用是省钱的关键);对话中途还能动态补充新工具,不用重建上下文。② “思考强度"是用自然语言写成一条指令放在上下文里(比如"请用高强度思考”),模型自己照着做——把"几档变速器"变成了一句人话。
这份报告的意义 / 一句话总结
Kimi K3 这份报告的分量,不只在"又发了一个大模型",而在于它一次性回答了两个行业级问题:
- 开源模型还能不能继续"长大"? 能。开源阵营在 1 万亿参数附近停滞了两年多,K3 一口气推进到 2.8 万亿,并且用三件事证明"大"和"高效"可以兼得:KDA 解决长文成本、AttnRes 解决深层传话、Stable LatentMoE 解决超稀疏分诊,整体学习效率达到上一代 2.5 倍。更难得的是,报告把设计动机、踩过的坑(SigLIP 起点不稳定、SwiGLU 会爆炸、固定步长调不动 896 个科室)和工程实现(FlashKDA、MoonEP、KCP、前缀缓存)全部公开——等于给整个社区留下了一份"3 万亿模型的完整工程手册"。
- "会自己干活的 AI"怎么工业化量产? 报告给出了一条完整流水线:分工种分档位的强化学习(部分采样对付快慢不均、预算控制管理思考长度、流程化裁判对付开放题)、九师合教一个学生的蒸馏合并、几十种高度仿真且防作弊的练功房、以及支撑百万 token 实习的"可暂停沙箱工厂"(全程开了五千多万个沙箱)。
一句话总结:Kimi K3 用"三条信息流通路 + 一套工业化训练流水线 + 全栈基础设施",把开源大模型推进到 3 万亿参数、百万 token、前沿智能体能力的时代,并且把全部权重和绝大多数工程细节免费开放给所有人——它离最强的两个闭源模型还差一点,但这个"差一点"的距离,第一次变成了人人都可以免费拿到手、拆开研究、接着创新的东西。
更多推荐




所有评论(0)