177: 详解Kimi K3:强到冲击Anthropic估值的模型什么样?

【嘉宾】我接触到的像美国Frontier Lab的一些普通大厂员工里面,确实有部分人会认为开权重模型能力上涨,对于Frontier Lab的估值是有很潜在的影响的。就比如说未来很多公司,他们可能不愿意去把自己的数据发给Swin或者OpenAI这样的第三方。
【嘉宾】比较好玩的是,我觉得这个世界上是不存在老老实实做Transformer这回事的。比如K3的注意力是线性注意力、加上全局注意力MHA的混合,然后残差被改成了深度方向上的Mean Attention,而FFN则是压缩空间里面的稀疏专家,甚至连位置编码都几乎是被删掉了。这几年的开源模型几乎把每一种可能的部件组合都尝试过。我可以称其为某种意义上的忒修斯之船,忒修斯之船的船板换过了,甲板换过了,龙骨甚至都换过了,但是这艘船的船名就是没有变,Attention机制就是我认为我们的AI研究领域的忒修斯之船。
【嘉宾】我觉得这次K3带给我,以及包括很多人的启发可能就是,我们其实并不需要把FFN和Transformer去理解成一个二选一的这么一个关系。MLA确实是一个很有前景的方向。权重是一次训练的产物,但是环境是能够反复复用、并且产生出下一代权重的流水线。我们得到了K3的权重,但是全世界仍旧没有得到怎么造出下一代智能模型的这条流水线。
【主持人】欢迎收听晚点聊,我是曼琪。本期是技术解读系列的新一期,会放在模型利于美这个合集之中。我邀请了Redix ARC创始成员赵晨洋和华盛顿大学的博士生曾志远,分别从INFRA与算法两条线拆解K3。它真的比肩Fab5吗?3T开放权重、混合注意力和智能体训练环境意味着什么?开放模型真正开放了什么又保留了什么?进入具体的技术报告解读前,我们也聊了K3如今在美国AI界和更广泛的投资市场所引起的巨大关注,以及与K3直接相关的开源大讨论。下面我们正式进入节目吧。
【主持人】今天晚点聊邀请了两位嘉宾,我们一起来聊一聊K3。因为在7月27号K3刚刚是分享了47页的详细的技术报告。两位嘉宾,一位是陈杨,是晚点聊的老朋友,在163期和DeepSeek V3的解读中是担任过嘉宾。他是SGLang开源框架社区的核心贡献者,也是基于SGLang成立的创业公司Redix ARC的创始成员。陈杨会主要从INFRA的角度来分享。陈杨你可以和我们的听友简单打个招呼再介绍一下。
【嘉宾】我是赵陈杨,非常感谢晚点的邀请,可以来跟大家分享一些K3上INFRA的细节。我目前就职于一家叫做Redix ARC的人工智能基建公司,我们也管这家公司戏称为基础方舟。其中基础一词或者说Redix一词,其实比较生僻,但是这个词还源自于目前大语言模型推理领域的一个关键技术,叫做Redix Tree,这也是我们公司维护的核心项目SGLang的起点。我在接下来的播客当中也会分享到一些和前缀缓存有关的内容,我们也可以见到K3相比于之前的模型,类似于DeepSeek V3,它会在前缀缓存上面有一些有趣的变化。在加入Redix ARC之前,我本科毕业于清华大学计算机系,然后博士毕业于加州大学洛杉矶分校。之前我也参加过晚点组织的技术播客,然后上次是分享我们开源团队在DeepSeek V3模型上的推理加速和强化学习两部分。这次如我所预见,K3再次作为中国的顶级模型引爆了整个硅谷,在海内外引发了巨大的反响。所以这次还是我从我个人的角度,希望给大家做一些公正上的分析,也会分享一下许多KIMI团队、我们公司AMD还有Proton AR等等开源团队一同打造的一些有趣的技术。
【主持人】好的,那这次还有一位新的嘉宾,新朋友曾志源。他现在正在华盛顿大学读博士二年级,之前本科期间也是在清华,志源会主要从算法的角度来分享,来一起解读K3。志源你可以和我们的听友也简单介绍一下自己。
【嘉宾】OK,好,哈喽,大家好,我是曾志源,本科就读于清华大学计算机系。其实也很巧合,我和今天的另外一位嘉宾陈杨是本科同系,而且也是同届的同学。我现在在华盛顿大学读二年级的CS PhD,我自己一直主要在学术界,做一些语言模型的后训练和评测相关的研究工作。这其实也是我第一次作为嘉宾参加播客,很开心可以在晚点播客分享我对于K3这么一个如此出色惊艳的国产模型的一些理解和想法。
【主持人】在具体聊K3的一些进入细节之前,我们可以先来照例聊一些相对宏观的问题,这样大家也好接入一些。两位可以先讲讲自己使用K3的一些情况,有什么有意思的地方可以分享吗,你们自己使用的感受是怎样?
【嘉宾】其实我自己个人一直可以用可以报销的Claude Code,所以不太在乎成本,但是当然K3发布之后,我听到身边很多人的评价感觉确实就是好评如潮,所以我自己也试用了一下简单跑一些Case。我个人的感觉在大部分场景下和Cloud的Open 4.8的体感相当,甚至可以说是更好,尤其是去做长程任务的效果。
【主持人】说白了就是我们让模型它在一个Agent的框架下去长时间持续运行,去完成一个特别复杂任务,然后最后比如说给我们用户能够交付一个满意的、相对来说比较满意的结果的能力,我体感说可以说是做得相当不错。如果非要说有什么美中不足的地方的话,我觉得一方面可能是确实有些慢吧,就是比如说它在做一些相对小一点,然后我自己可能会期待更及时反馈的任务的时候,可能对极致性质就不太友好。但是当然考虑到KIMI现在有限的机器和资源,这也可以理解。另外一点我其实注意到在K3的Tech Report里面,其实自己也提到了,就是在去做我刚说那一类长程任务的时候,因为任务比较复杂,我一开始的Prompt可能就没办法做到面面俱到,因为任务太复杂了,我自己一开始也想不清楚每一个细节。那其实可能在一些我没有想清楚的地方,K3会去替我做一些决定,但这时候可能更理想的方式就是说和我做一些探讨,毕竟替我自己做的决定可能不是最理想的。对,我只要有这么一些感受,那陈皓你使用的感受是什么?你觉得好用的地方和你觉得想提升的地方是什么?
【嘉宾】我有一个比较有趣的角度,这是K3发布的时候,我朋友圈里面有很多KIMI团队的朋友分享一个非常神奇的网站,叫做K399,里面是很多用K3生成的小游戏集合。这个非常有小的时候的味道,我和子睿都是零零后嘛,基本上在我们小学的时候,国内有两个非常主要的小游戏平台,甚至还是用的Flash,叫做4399和7K7K。然后Flash已经停运很长一段时间了,然后到了今年我们看到KIMI团队用K3来复刻这么一个小游戏平台,然后甚至许多童年小游戏的优化,包括体验,其实比起小的时候流畅非常非常多,我觉得这个是让我觉得很出乎意料的一件事情。我们自己团队也用K3模型做了一盘小游戏,就类似于Google Chrome在你网络没有连接的情况下,会有一个小恐龙跳仙人掌的那个游戏。但是这个小游戏的主角是我们团队的SGLG,然后最终的终点就是达到了423tokens每秒,大概代表就是说我们团队在那一刻的一个优化的终点。当然可能到了现在以及这个播客被听众朋友们听到的时候,这个性能会有更大的boost。
【主持人】对,你们那个SGLG挺可爱的,我上次去不是拿了个冰箱贴吗,我现在还贴在家里了。
【嘉宾】非常欢迎你参加更多活动。大家普遍的一个反馈就是K3的前端能力特别好,其实你刚才提到那个K399,这个小游戏的网站复现小游戏,我觉得也跟它这个能力有关。KIMI在Frontier Code Arena上是一度拿到了第一,超过了当时的Claude 3.5。
【主持人】你可以讲讲就是它在某项能力上有特长,这种前沿模型之间的差异,它一般是什么原因造成的?是数据吗还是什么?
【嘉宾】我觉得最直接的答案它确实是数据。我们可以回到就是说模型构建的过程的一些流程来看了,就是说现在我们模型训练的团队,一般来说它都会针对不同的细分垂直领域,或者说细分的垂类领域,先建立或者说补齐一些相应的evaluation,就是去评测,然后再围绕这些evaluation,在pre-training、post-training、SFT,以及包括强化学习就是RL等不同阶段,去针对性地补齐训练数据和任务。所以一般来说我们会觉得一个模型最后在某个非常特定的垂类方向特别突出,很大程度上有一个很重要的原因就是它在这个方向的评测和数据做得非常好。其实如果我们去读它公开发布的Tech Report的话,其实里面也可以看到非常多的痕迹,就比如说它们在evaluation上专门做了KIMI Web Dev Bench,它就是专门针对这一类相关问题做的评测。然后它们还提到在pre-training阶段,它大幅扩充了代码和渲染结果,去相配对的这么一个多模态的数据。然后post-training阶段又专门加入了这种Web Development的这种任务。还有一点就是K3它其实是原生多模态的,所以它可以在训练的过程中,尤其是在强化学习的过程里面,可以去直接提升这样一种比如说我们先写代码,然后写完代码之后我们看它前端渲染出来的screenshot怎么样,然后再去改代码这样的一个loop的这样一个能力。其实Tech Report里面对这个能力也提到了,就是说它的描述叫做Visual Interactive Loop,也就是说让模型在代码和这种视觉反馈之间去持续迭代。
【主持人】除了你们自己的一些体感,你们和周围的人交流,大家还有什么对K3有意思的评价吗?
【嘉宾】我其实觉得他们,我周围很多就是说做大模型算法的朋友,他其实会关注很多发布之后Tech Report里面的细节,尤其是各种recipe的这个细节。其实我觉得有很多人都感觉,就是说一个最近这些发布的Tech Report的趋势,在K3的这个Report里面其实也有所体现,就是说现在这些Report,它对于像hybrid SFT、pre-training的细节描述得越来越多、越来越清晰,但是对post-training部分的细节就给得越来越少了。这其实也说明就是像架构和scaling、pre-training本身的重要性。
【主持人】可以说是丝毫没有下降,甚至说是越来越重要的。Pulse training的细节变少了,是因为大家本身就做少了,还是说这个领域大家觉得不想分享太多?我其实也不知道说为什么。这一次K3发布的声势很大,也引起了资本市场的变动,包括美国现在也开始了开源的大变论。我可以先讲一下这个事,大概是7月24号的时候有50多家公司联名签署了一封公开信,开放权重就是开源的大模型的意思吧,与美国的AI领导力。然后陈阳所在的公司Redix Arc也签名了,50多个公司里还有英伟达微软等等,包括黄仁勋他是专门去注册了推特去转发了公开信。OpenAI和XCI也都是支持的,但是没有签名。然后亚马逊和SRP是没有在这个事情上发声的,但后来SRP应该就是这种,把他们写了一个文章,Dario自己写的Open Weight Models,是说他们不反对开源模型,但是他们认为某些国家,中国的开源模型还是要被限制一下,然后他还专门提到了就大规模蒸馏的这个事情。我觉得可以先讲一下就是为什么,就这次K3他带来的,至少我觉得在AI圈乃至它的这个震动也是很大的,甚至让部分人会感到比较惶恐的,我觉得用恐慌这个词形容这次K3在国内外引发的讨论是比较合理的。
【嘉宾】K3这个模型的确让我在海外都见到了巨大的讨论乃至争执,这段时间我刷到过非常多的论战,而且这些论战有的是在讨论开源与否,但我觉得许多研究者真正在乎的其实是安全,是开源更安全还是闭源更安全。我可以举一个具体的例子,前几天OpenAI的新模型在评测当中发生了很严重的越狱事件,不严谨来说,他直接尝试攻击了HuggingFace的服务器来直接获得评测问题的答案,称得上是为考试作弊而不择手段地偷到试卷。那说明即便我们试图让模型在追求目标的时候保持公正和正义,其实模型也会主张去寻找一些规则的漏洞,甚至是通过破坏服务器这样的手段来实现。反过来,我这两天也去读过Anthropic他们那篇观点的原文,总体来说他们的主张是足够强大的模型,不管开源还是闭源,只要提供给公众就应该经过更严格的安全审查。我自己觉得他们担心的事情其实非常真切,某种程度上来说这已经是一个非常恐怖的现象了。我可以举一个比方,现在这些强大的语言模型某种程度上是强大的武器,如果它被人恶意利用,会有着非常恐怖的破坏力。今天即便我们主观上引导一个模型形成一个正直向上的世界观,模型都有可能违背人类的意愿去攻击HuggingFace的服务器,那么真的遇到了这些别有居心的不法分子,他们可能会想办法绕开模型安全防控,真正地去利用模型去挖漏洞、去攻击我们的网络系统,所以对人类而言是一种巨大的风险。我们是要将这些最强大的模型所具有的能力永远掌握在少数人手中,还是说因为已经有了大量的尖端武器流通了,我们务必要向全人类共享更多的武器?很遗憾我不清楚这个问题有没有答案,但是我迫切地认为就是需要全社会共同讨论的治理问题,甚至需要于某种程度上类似核不扩散条约一样的国际治理框架。
【主持人】其实你们公司是支持开源模型的对吗?
【嘉宾】我认为大多数的人是倾向于我们还是要有限度管理的情况下持续分享这些领先的前沿的智能水平的模型,但是我自己的话,Personally我不是很赞同要把所有的事情都开放出去。
【主持人】OK。然后我们给大家可以看看就是他这一次为什么会引起一些比较多的关注和开源闭源的讨论,其实本质上还是因为他让人看到开源其实更加逼近闭源了。然后有一种解读就是这会大幅冲击Frontier Lab,也就是OpenAI和Anthropic现在的估值。你们在硅谷、在美国没有感受到这种讨论吗?
【嘉宾】对。就比如说我自己的话,我接触到的像美国Frontier Lab的一些普通打工人里面,确实有部分人会认为开权重模型那些上涨对于Frontier Lab的估值是有很潜在的影响的。比如说一个可能考量点是在未来什么公司他们要用模型,比如说用coding agent的,但是他们可能不愿意去把自己的数据发给Anthropic或者OpenAI这样的第三方。那这时候如果有一个很强的开权重模型,它本身或者稍微经过一些针对他们公司自己场景的微调,它能力上就能打到这些公司的需求,同时这些公司又有部署开权重模型的这么一个条件,不需要把数据发给第三方,而是可以直接发给他们自己部署好的模型,那么他们确实可能会转向用开权重模型,这一点就有可能会冲击闭权重模型的营收。其实这个现在已经看到一些趋势了,我们二级组的纪报里也讨论了这个问题。就比如说在美国像Fireworks这样的公司,它就会给一些企业客户去部署开源模型,就给企业自己用的,甚至在计算资源上,就美国有些大客户他也会倾向于说这个东西不在云上。
【主持人】而是我可能会自建一些算力。因为在有些场景上,他其实自建算力成本的测算是更划算的。除了说对Frontier Lab的冲击之外,另一种解读就是K3这一类开源的,因为还是一个transformer的模型,他也会去冲击New Lab。New Lab的核心的机会点,其实在于说你去探索现在主流方向之外的一些新的方向,看能不能找到通向AGI的更好的方法。你觉得K3这个效果会动摇一些人的这种观念吗?是不是你老老实实做一个transformer的模型,其实上升空间还挺大?
【嘉宾】比较好玩的是我觉得吧,这个世界上是不存在老老实实做transformer这回事的。比如我们这次看K3,K3的注意力是线性注意力、KDA加上全局注意力MIA的混合,然后残差被改成了深度方向上的Mean Attention,而FFN则是压缩空间里面的稀疏专家,甚至连位置编码都几乎是被删掉了。这些设计也可以说完全不是2017年的原装transformer的零件。与其说是transformer还有空间,不如说attention机制是某种接口,它只是规定了我们用一个个可微的模块来反复混合序列上的信息,至于我们拿什么算子混合、残差如何连接、FFN的形状是什么,这些部件的可组合性远比我们想象的好。而且这几年的开源模型,几乎把每一种可能的部件组合都尝试过。我可以称其为某种意义上的忒修斯之船,忒修斯之船的船板换过了、甲板换过了、龙骨甚至都换过了,但是这艘船的船名就是没有变。attention机制就是我认为我们的AI研究领域的忒修斯之船。
【嘉宾】至于attention还有多少寿命,以及现在这些新架构会对研究产生什么样的影响,我觉得是可好可坏的。坏消息是有的研究者可能会有一种愿景,比如说用其他的架构来推导、重演整个transformer的故事,我觉得这个愿景可能很难说得通。但是另一个角度来说,优秀的组件试图登陆忒修斯之船的速度前所未有的快。比如说KDA,他从MoBA这篇论文到2.8B的主流模型,只花了不到一年的时间。所以如果你的天才之举是对的,那么你不需要等待一个新的范式,就会有人来收留它。
【主持人】现在也有一个表达的讨论,就是说最近像Fable 5、o3、K3这些进展,它给外界传递的一个信号是,好像到了一个模型可以自己就变得更好的这种临界点。你这个模型去蒸一个更好的模型,或者说你自己蒸自己,学到一些高质量的数据,你就可以让模型变得更好。然后有的人会觉得在o3前后就过了这个临界点。
【嘉宾】我个人理解这个问题,它并不是说我们有一个非常神奇的临界点,然后模型能力突然就跨过了这个临界点。而是我觉得其实现在整个模型的开发流程,它已经进入了一个正反馈的阶段,就是比如说模型可以自己生产数据,或者说更严格更广义地说是参与生产数据,然后再让下一代的模型变得更好。那具体来说其实在一个模型训练的一个团队里面,我们要去构建高质量数据,本来就会涉及到各种五花八门的这么一个工作流。就比如说随着模型的变强,那这里面很多越来越多的具体工作,就可以交给agent,尤其是coding agent。就比如说像我们去做些检索,然后去合成一些训练任务,这么一整套pipeline;然后再比如说我们去生成一些数据样本,然后再去筛选一些数据样本,这样的一个pipeline;或者再比如说我们去搭强化学习的环境;然后再比如说我们去跑一些评测;再比如说我们去分析一些失败的case等等。那这个变化我觉得它不是从零突然跳到一的,而是我们模型团队交给agent做的比例,随着模型能力的提升是不断提高的。就不严谨地说可能一开始是50%,后来是70%、90%、95%这样,当然这一数字是我随便说的。
【嘉宾】还有一点就是一些pipeline,它可能一开始需要人类去逐步拆解,然后它慢慢随着模型能力的提升,就基本可以完整地交给模型来做。人类介入的力度也会越来越粗,从定义每一步怎么做,逐渐变成我们可能只需要去定义一些更上层、更整体的目标,然后去定义一些约束,然后我们自己有一些验收的方案、验收的标准之类。尤其是比如说,你想象我们现在假装我们就是Randsomik,我们就是OpenAI,那我们内部的这些研究者,我们也需要用我们可以调用的世界上最强的模型——当然对我们来说是必权重的,对他们来说是他们是可以接触到的——来完成他们自己的工作流。所以自然而然这样的一个路分,它的自动化程度会不断提高。
【主持人】对。程杨有什么补充吗?
【嘉宾】其实K3的技术报告里面写过一个点。
【嘉宾】就是K3早期serving用的kernel,甚至可以拿checkpoint直接去写。早期checkpoint就说它没有完全训完的那个模型,就模型训到中间的那个版本,就已经能做这个事了对吧?
【主持人】是的,而且它早期的checkpoint做kernel开发,不过它后面的checkpoint认得更快,这个适度是非常有意思的。我们在infra领域把这个东西叫做KDA,不是KDA同时叫做kimi delta attention,但我们的KDA叫做kernel development agents。K3的check report里面,他们着重讲了是怎么让K3去做kernel优化的任务当中的,他们甚至有提到过他们的这个环境设置,就首先设置的任务包括有单算子优化,还有巨型算子的融合,包括有CUDA、Triton、ThunderKittens、Triton这些流派,也覆盖有BF16、FP8和FP4。然后他们设计reward的时候有两层,我觉得这个设计非常科学。第一个就是每一个kernel,他们会提供一个PyTorch的vanilla版本,这个版本一方面作为性能的底线,另一方面也作为正确性的基准。如果KDA优化出来的kernel,数值已经超出了误差的一定程度,会直接被打零分。然后接下来他们会找一些专家去写一些高性能的kernel,然后会做K3模型写出的kernel和专家实现的kernel之间的分数对比。如果Kimi K3写出的这个kernel,它越接近于硬件的物理上限,那么它的reward会越来越高。而且他们也做了一些作弊检测,比如去惩罚这些恶意的CudaGraph的重放,也会去惩罚一些我们称之为打表,这种输入输出缓存的这些投机取巧的办法。所以说K3其实最后做Kernel Development的效果非常惊艳。所以最后这个K3包括里面说,Kimi的早期checkpoint已经在承担大量的kernel优化工作。这种kernel上面的优化其实也是我们最近一直在尝试的事情,首先我们硅基流动(SiliconFlow)团队也有非常顶尖的kernel工程师,我自己认为他可能是这个世界上最懂kernel的那一批人。他自己非常理解kernel也有非常好的kernel的context,然后他只需要一个很强大的AI来放大他对kernel的理解,他自己就在大规模的用AI来做kernel的自主优化。可以说某种程度上这就是kernel这个领域的RSI。
不过kernel是一个非常非常具体的事情,为了让RSI成立这个事情需要很多的前提条件。首先它的reward要准确且便宜,kernel就有这个很好的特点就是性能和正确性是很好的验证的,然后便宜的话其实你基本上硬件跑一次就行,你其实不太需要人工成本。另外的话kernel也是一个作弊方式有限的事情,所以恰恰好kernel满足的便宜可验证、难以作弊的这三个条件,有了很好的reward boundary。所以说我们其实可以让这些kernel development agents,在我们的boundary下面去很好的自我提升。所以说在有验证器的领域,我认为RSI这个loop已经在高速运作了。这并不是说模型开始自我进化,我觉得自我进化这个词很大,但是在某一个领域能够在有限的、在清晰的边界下完成不断的提升,这一定是可以实现的,而且这正在发生。
至于整体上的RSI,我觉得这还是一个非常极为难的挑战。在体体现我的一个观点,就是我觉得RSI缺乏的真的不完全是模型,是evaluation、是harness,不管你怎么叫吧,就是我自己层长这种叫做evaluate。我在读PhD期间,我很大的一个研究兴趣,就是怎么去对模型的能力做有效评估。这也是很长一段时间,为什么我们看2025年大家都在用力的猛冲这个math和coding对吧,因为math和coding相对而言,它就是更好评估的。比如说假设晚点的新闻报道,你希望让agent去写,这个评估其实很主观,因为一个新闻报道的好坏,是需要我觉得很有水平的记者才能够评估得很好。但是coding的话,至少在那个时候,比如说让它去打deadcode的,这个事情是很好评估的。当然随着我们现在coding用过的图件眼镜对吧,比如说以前可能去写一个deadcode,现在可能你想办法要给一个说大无比的仓库,去做一些新的feature,这个事情其实也很难评估的。所以我觉得现在coding的进步会放缓一些。
【主持人】就前面讲的是,就是大家用K3一些比较好的反馈,然后可以来讲一下一些集中的吐槽吧。一个是就这次大家会注意到,其实K3它并不是上之前的中国模型,走极致性价比的路线的,所以有的人会觉得它比较贵,这也不算一个缺点,就是它是一个特点。另一方面,就有前面也提到的,另一个就是它目前使用体感上确实比较慢,然后这也导致有一些下游的公司,比如说应用公司没有很快的放到自己的这个产品里面。这个想请陈阳来分享一下,就这个慢是什么原因导致的?比如说比较流行的说法,是觉得他们算力比较紧张。
【嘉宾】很遗憾,在一些模型开放初期,由于这个推理或者说serving stack,它的优化需要一点时间。
【嘉宾】模型可能会陷入到一个又贵又慢的尴尬经历。不过其实我自己体感上的话,我觉得K3的价格和速度都是一个合理的区间,甚至在价格上我觉得称得上优秀。然后对比起同性的其他模型,由于架构上的突破吧,我觉得速度还没有达到一个超越其他模型的一个状态,但是仍旧是一个合理而且可优化的范围。
我们可以先说一下贵这个问题。在我们比较在乎的agent的场景下面,成本有两种衡量。第一种就是说,它的价格上面标的百万token的单价,然后还有一个是完成任务的总成本。老实来说我觉得,如果我们需要用到K3,显然是需要完成一些非常高难度的任务。这种情况下,完成单个任务的总成本才是有意义的成本口径。因为在长程的任务里面,不同模型对一个任务消耗token的量其实差距是非常大的,远远大于单价之间的差异。可能一个单价比较便宜的模型会绕一倍甚至十倍的弯路,这样的话肯定会让单价更便宜的模型更贵。
我其实有去看K3 tech report嘛,他们分享了一些比较有趣的成本结果。比如说在Kini CodeBench 2.0上面,是他们自己内部的一套coding benchmark,K3会比着最强的那些模型低4.0分,但是成本只有对方的38%。然后K3在这个high effort的档,high effort是一个思考能力的那个参数档,在这一档上它已经追平了其他的头部模型在maximum effort的分数,成本还是只有大概30%左右。还有一个benchmark叫做browser comp,然后在这个benchmark上面,K3拿到了一个非常好的分数,而且单个任务的成本应该也是相当低的,可能还是在其他公司模型的30%到50%这个区间。
但是这个贵肯定是对于消费者而言的,然后对于自己比如说,可能有的听众他的公司比较有计算资源可能会自己去选择serve,这个成本其实就非常难衡量了。包括我们现在已经看到存储也好,电力也好,还有水冷也好,这些成本其实很难纳入考量的。所以仅仅是靠官方的API来看,我认为K3的性价比是非常好的。
【主持人】我补充一下就是他官方的定价的数字。比如K3的话他输入每百万token,缓存命中的情况是0.3美元,未命中的情况是3美元,然后他输出的话是15美元。这个其实确实比之前的中国模型是贵了很多。对比来说的话,V4他输入每百万token,命中的情况是0.04,就K3这个是0.3,然后V4第二个就是输入未命中的情况是0.44,然后输出是0.87。其实我知道很多应用里面跑的最多的应该还是V4。当然刚才陈姚也说了,其实你这个东西不是光看那个标价的,是看他做任务的总体的消耗。可能还有个角度就是说,人类对智能上限的渴求是无穷大的,现在的这些应用还没有一个想象空间要用K3这种规模的强大模型。
还有一个点,那我可以来讨论一下这个慢的问题。
【嘉宾】就我的从业经验而言,模型发布后第一时间能够提供的这个速度,反映的应该说是这个模型的架构有多新,serving stack就有多难。至于这个架构有多慢,这个事情其实不本质。或者说我觉得对于Kini或者DeepSeek这样的顶尖模型团队而言,他们的架构设计早就充分考虑了serving和training的效率,在后续一段时间这块的成本是一定可以通过工程的优化打下来的。
我们一般在推理这个领域的话,会把用户的体验分成三个指标。往往称之为第一个token的延迟,或者说你发送一个请求之后多快会收到第一句话的返回。然后第二个就是单个用户的decode速度,或者说你已经开始收到模型的回复之后,它两个词中间的这个间隙有多大。以及还有一个你的队列等待时间,因为显然并不是你一个人在使用这个模型,可能在Kini他们的后台会同时收到成千上万的请求,这个整个队列的流通速度是怎么样的。然后这三者的话成因是不完全相同的。我可以分享一下两点,这个也可以解答一下我觉得Kini现在的算力是一个什么样的状况。
我们首先讨论这个首个token的延迟,这里主要是一个前缀复用的问题,它不算是一个很严格的算力问题。就像刚才曼西也提到过,现在模型的价格都说前缀如果命中多少多少钱,以及前缀命不中多少钱。语言模型的推理,一个非常普遍的技术叫做前缀复用。我可以举两个例子,比如说A用户发给Kini,今天你去超市买香蕉吗,然后B用户会发,今天你去超市买酸奶吗,这两句话其实有公共前缀的。
【主持人】今天你去超市买这几个字就是这两个请求的前缀,然后这个前缀在现在大语言模型推理范式或者说这样的场景下是可以被复用的。公共前缀不需要在每次推理过程当中都重复计算,而且在Kimi这个报告当中,其实也有体现他们对这个前缀复用的一个看法。一个典型的coding场景可能会带有40万token的前缀是复用的,或者说是非常多的用户会共用的。然后真正要计算的增量部分可能每次只有4000个token。用户提交的新请求在前缀命中或者不命中的情况下,所需要的计算量会差出很多个数量级。这也会提前在成本以及用户的返回速度,还有首token延迟这些指标上面。基本来说,前缀复用是决定了首token延迟最重要的因素,反而绝对的算力是次要的。
【主持人】但是另一个角度就是为了支撑Kimi上百亿的上下文长度,K3选择的hybrid架构也让前缀复用的难度有所提高。因为传统意义上的KV Cache它术语叫做append only,换句话说叫只增不减。前方的前缀算完了之后就不会再变了,这个前缀是不可能会被其他请求改写的。但是K3采用的attention机制我们叫做Kini delta attention,或者叫KDA架构,简单来说KDA架构会在前缀树上驻留一块,为每一个token反复覆盖读写的固定大小的缓存,它不再是以往在简单的前缀树上继续往下添加。
【主持人】举个比方来说,我们通常的前缀树可能是一个直往后写的笔记本,然后你每次就是从后往前撕一页给别人,然后你再继续写,对,它其实会相对简单一些。但是K3的attention机制可能是一个反复擦写的白板,然后你写靠前的内容其实难度是很大的。
【主持人】这块的话K3自己都包括报告里有讲一些事情,包括他们说把前缀的哈希粒度还有物理块的分配粒度做一定程度的折衷,然后试图让哈希一直跑在512个token的这样一个小块上。但是KDA的tradeoff会落在哈希端点的细粒度级,这个听上去非常的technical。
【主持人】对,然后我们团队的话其实也会借鉴以及做一些其他的优化。在S2上面的话,我们会想办法去让这块反复被读写的状态能够被跨越请求的安全共享。举个比方比如说,第一个请求在读一块前缀,第二个请求会稍微改写那个前缀,那么如果这个时候有第三个请求想要去读这块将会被改写的前缀,这是有一些安全性是要考虑的。你不可能在别人读的时候直接把这块改了,否则你读出来的内容是崩溃的。而且最糟糕的情况可能是你不可能边写边读,这样你可能前一半是正确的,后一半就是错误的。这里其实会有很多技术上面的考虑,但具体来说的话,我们会有些很有意思的术语,比如说copy on write、snapshot还有donate,这些词都是来自一些操作系统上面的语言。然后这块优化就很深了,然后欢迎对这个比较感兴趣的朋友可以参考我们思量团队的技术博客。
【主持人】那回到开源这个事本身,包括最近美国的一些讨论,就是是否要限制开源。从技术上来说,开源它有可能被限制,开了之后的模型是怎么样的,这绝对是不可逆的。因为那些大家都三体对吧,技术的坐标一旦广播出去,就是不可能说回来的,你没有任何方式去销毁你已经公布出去的物理信息,开源也是一样的。就是权重一旦发布之后,它就是一串可以被批量复制的文件。而且开源的情况也不单单只是下架一份权重这么简单,社区可能会做非常多的镜像,可能会有些公司拿去做量化,也有的公司会拿去做微调,微调后的衍生的版本的数量会指数级增长。所以说下架这个动作对于已经开源出去的模型根本就不成立。
【主持人】然后另一个角度就是政策什么样的事情,就是开源模型该不该得到什么限制。正如我说的,我对于以后开源模型的走向是很迷茫的。现在已经有了非常多大量的公开强大的模型流通了,你们觉得再往下的话,这个开源模型逼近闭源的时刻,会不会有人强到一定程度之后走向闭源,这个开源接近于闭源的一个时刻,我个人感觉这个事情其实很模糊。开源接近闭源,我们要怎么去衡量这个事情。因为模型只是整个AI生态链的一小部分,事实上关于模型的产业,上游可能有数据硬件,然后下游还有分发渠道,还有把我们说的推理,对吧。我的一个观察是,我认为模型本身在AI产业链上的比重在下降。这次K3的开源我们也看到了,K3爽快地开放了开放的权重,包括论文、EP还有Flash KDA。
【嘉宾】还有Agent Eve,这些基础设施也都开源了,然后包括他们今天做的MiniMax的Clip也开源了。但是他们的RL environment没有开源,他们在报告当中提到了,有一个用于自我演化的知识图谱的任务系统,这个也没有开源。然后包括他们说这个K3其实是一个expert merge,他们这些原始的专家的checkpoint也没有开放。这个开放并不存在任何问题,因为现在行业内的开源公司也很少会真的去开源比如说RL environment,这东西可能开放出来也有很多安全风险。但是我觉得没开的这个部分,是这些公司很深的护城河。而这个护城河一大部分来自于环境,权重是一次训练的产物,但是环境是能够反复复用,并且产生出下一代权重的流水线。我们得到了K3的权重,全世界都可以得到这代模型的智能,但是全世界人就没有得到怎么造出下一代智能模型的这条流水线。开放权重只是缩小了这个顶尖模型,就是顶尖闭源模型和开源模型间的能力差距。但是我们并不确定,顶尖的开源模型和顶尖的闭源模型,它们之间的迭代速度会不会缩小。比如说可能Kimi假设说国内的模型,可能要6个月左右它迭代一个checkpoint,但是OpenAI可能它们3月就发了。当然我其实不太确定现在国内模型的这个开放速度是什么样子的,但是模型迭代的循环是需要环境,需要验证和需要算力的,这三样已经超出了权重本身。然后如果这些所有东西都达到一个完全开放的状态,我觉得开源超过闭源就是必然,但是很遗憾现在不是这个样子的。当然我们公司主要维护的开源推理引擎,也是为开源模型服务的,我们更当然希望开源模型越多越好。对,这是我的一些point,开源是否逼近闭源本身这个结论就是打问号的。对。
【主持人】开源有一个大家一直以来认为的弊端,是你的用户部署了你的模型之后,比如他自己部署,没有用你官方的API,你的数据就无法回传给自己。而闭源的生态里,像OpenAI和Anthropic,它通过API以及他们自己用户量非常大的应用,可以获得很多真实环境、真实场景里、真实用户的真实的高质量的一些prompt。总结而言,你们心中K3是一个怎样的成果?
【嘉宾】我个人觉得从公开发布的模型来看,K3它作为一个首个达到这种3T级别的开放权重模型,我认为毫不夸张地说是一个里程碑级别的成果。其实我觉得从历史发展的角度来看,这种开放权重的模型的规模,从数百B级别到后来的1T以上,再到今天3T级别,它确实是非常非常振奋人心的这么一个进展。所以我自己个人是很期待看到后面开放权重模型去接着向上scaling的。这次K3发了之后,我看到Kimi的联创周昕宇,他在朋友圈有一条分享的转发语说的是,have faith in scaling and RL,对scaling和强化学习有信念。
【主持人】那下面我们来聊K3的具体的技术报告,有一些更细节的技术改进,这个是7月27号刚发出来的。可以先说一下,K3在架构上的整体思路是什么?亮点是什么?
【嘉宾】我自己理解K3 architecture,K3架构的整体思路,他们会想同时让语言模型在处理信息,然后这个信息它在不同方向流动,做得更加的高效。就比如说他们在训练上,他用MoBA和Gated Attention这样一个hybrid attention的这么一个结构,就是混合注意力的这么一个结构。在大部分层里它可以更低成本的去处理上下文,同时注意层去保留这种全局的attention。他们在深度上就比如说用attention router这样的一个技术,让后面的层它可以去选择性的读取前面层的一个表示。如果让我挑一个我比较关注的亮点的话,我觉得NoPE是很有意思的一个technique。具体来说就是K3的这个语言模型,它没有使用一个显式的位置编码,就是positional encoding。就比如说至少从公开的这个technique report来看,像同期的DeepSeek V4、Gemma 2,包括像MiniMax m3这些,其实后面这些模型它们都还是保留了positional RoPE的,所以这个选择我觉得是比较special的。当然了这里就是说模型它不用这个位置编码,模型其实还是知道token的这么一个先后顺序的。具体来说它在这个MoBA,也就是Mixture of Blocked Attention里面,它在做recurrent state的更新的时候,以及包括里面的一些gating的decay这样的机制,它本身其实就是对于顺序是敏感的。它已经去隐式的去编码了像position和recurrent state这样的一个信息。这里还有一点就是说需要提一下的就是,我们现在去训练一个长上下文的模型,比如说这种达到1M context的百万级长上下文模型。
【嘉宾】一个常见的做法叫做progressive context extension,就K3其实也是这么做的。比如说我们在配置上下文的时候,我们先去8k,然后再扩到64k,然后在后面的阶段再逐渐地扩到256k,然后直接达到1M token的这种级别。然后我们前面说的这种NoPE,就是说它不是用显式的position encoding,不是用显式的位置编码的一个直接好处就是,我们再去扩展context的时候,其实我们对于位置编码这一层,它就少了一个需要去单独处理的环节。就比如说如果你用RoPE的话,你可能就要去retune一下这个RoPE的base,或者去做RoPE interpolation这样的一个technique。NoPE这个选择它其实也不是K3首创的,就Kimi Mini其实也已经采用过了。
【主持人】K3我觉得比较,或者说非常impressive一点,就是它把这整套的设计,它去scale到了一个3T的级别,并且就成功支持到达这个1M context,就百万上下文的长上下文。嗯对,Kimi Mini是它去年下半年发的一个就参数比较小的模型,我觉得它当时就是在试一些K3里面可能会用到的新的技术,包括KDA就是我们前面提到的Kimi Mini attention,就Kimi Mini的线性和全局混合的这种注意力方式。K3你也用了,也是在Kimi Mini linear里面提出来的。其实RoPE最开始是苏剑林提的,这个我觉得也挺有意思的,就像我们之前聊V4的时候,其实后来就V4就没有用MLA了嘛,这个也是DeepSeek给业界的一个挺重要的贡献。然后苏剑林也是Kimi Mini的一个很核心的研究员。因为它这次就是K3它还是一个MoE的,就是这种混合专家模型嘛,那里面比较重要的一个这种东西就是路由专家的分配。这次K3是提了一个quantile balancing,分位数路由均衡,是他们在路由策略上的一个创新。这个也想请志远来说一说,就是它解决了一个什么问题,因为Kimi Mini自己是说,它是解决了MoE的模型,在大规模训练的时候会崩溃的一些问题。你可以讲讲为什么以前的方法比较容易崩,那这个改进,它是K3可以scale到接近3T的关键之一吗?
【嘉宾】对,下面提到它可能会崩溃的策略超参数,我其实觉得本质的问题是这个叫做专家负载均衡,或者说experts load balancing这样一个问题。具体来说我们MoE这样的一个混合专家模型,它里面的每个token,它每次就只会去选择一部分routed experts去激活。然后我们其实希望从全局来看的各个专家,它被选中的频率是大致相当的。否则会有什么问题呢?就是说在模型层面,一些专家他如果得不到足够的token和梯度,他在训练的时候就不太充分,就没有办法去充分发挥他专家的这些参数的容量。而且还有一些问题是比如说另外有一些专家,他如果收到token太多了,那其实对infra也不是一件特别友好的事情。
【嘉宾】针对这个问题其实最早期的一个普遍的做法,是在MoE模型训练的loss function里面去加一个auxiliary的这么一种load balancing loss。那它的核心思想就是说我们用一个额外的这么一个loss term,我们去鼓励不同的专家的选中频率更加的均匀。这个方法整体来说还是比较有效的,但是你加了balancing loss,你就需要在训练的时候在模型质量和负载均衡的效果之间去做一个权衡。那如果有这么一个问题的话,这其实它经常可能会是训练不稳定的这么一个罪魁祸首。
【嘉宾】然后之前DeepSeek V3的一个重要改进,就是我们其实就是把上面说的这种我们去添加一个loss的方式,它用来去做这么一种专家的负载均衡,去把这loss给去掉,换成了一种bias update的方法。具体来说我们会,我们在选那个专家的时候,我们其实也是用一个神经网络一个router,它去打一些routing的score,打一些分数之后,然后再根据分数去选这个专家。然后我们给routing的score去加一个bias,然后我们去在训练过程中我们去看,那如果一个专家他过热,我们就把bias去调低,如果他过冷说白了就是接收到token太少了,我们就调高。这个bias它只影响去选专家时候的机制,所以我们就不需要一个额外的上面说的这种loss去改变一个训练目标。但是V3这一类的方法,它对bias的更新是固定步长的,就是稍微就是你每次如果加个bias或者减个bias,你是加一个常数或者减一个常数。所以每一步我们就只知道这个专家他是更加被频繁地选中了,说白了就过热了还是说是过冷了,然后我们去按照一个固定的步长去向上或者向下做一点调整。所以这里仍然需要去调步长的这么一个超参。
【嘉宾】所以这次K3我觉得这次他提出这么一个quantile balancing的这个做法,它其实就会直接利用routing的分数的一个分位数,来去估计说我们应该去做多少的调整。比如说在K3里面它的设置大概是说,我们每个token要在896个routed experts里面去选择16个。然后我们的做法大概就是我们先去看我们当前的这个token,它加上当前的bias以后。
【嘉宾】它还在第17名的这么一个分数,那这个分数我们就可以把当前进入前16名的这一个门槛,就是最高的16个最后被选中的这些expert。然后对于某一个expert我们其实就可以观察,它在整个bias里面距离每个token的门槛还差多少。什么意思呢,就比如说我们直观一下,我们现在看一个expert它在routing时候的打分,如果我们给它加的bias越大,是不是意味着它能够跨过这个门槛的token就越来越多。所以我们就可以根据这些差值的这么一个context吧,直接去算出一个新的bias,使得相对于当前的这批门槛,我们大概会有16除以896这样一个均衡比的token会选择这样一个expert。这个新的bias我们就当前这个step算一下,然后从下一个step我们开始使用。这样我们就不需要像前面说的像Auxiliary Loss那样的做法,也不需要一个固定更新步长的超参数。
【嘉宾】所以我觉得对于K3来说,像Ultraexpert它有将近1000个,然后每次我们还只选择16个的话,这其实是非常非常极端稀疏的。确实可以猜想我们想要去稳定的、而且有效的、快速的保持这样一个负载均衡,可能会变得更加困难。所以我个人猜想它确实应该是K3这次能够成功scale到3T级别的一个比较重要的因素之一。
【主持人】对,是不是在V4里那个路由的改进,它更多是知道我一个专家的兴趣对吧,就是你说过冷过热,但没有那么精细到量。然后K3里的这个改进就是它是更精细到量的,就是我知道它比如说过热到什么程度或过冷到什么程度。
【嘉宾】对。我觉得这个也是设计时候思路不太一样,像当时Auxiliary Loss的思路更像是一种逐步调整的思路。然后到了像K3的时候,它的这个思路更像是我直接用一个heuristic,没什么历史信息,去估计一下这个bias多少特别合理,然后下一步直接加上这个bias就行了,就不再去做一步一步的逐步调整。我个人觉得两种也确实各有优点,我觉得最后说完了就是实验跑出来哪个效果好就用哪个。
【主持人】那我们接下来讨论一下它具体的模块。其实你会发现这些模块和我们当时讨论V4也是相似的,包括它的注意力,然后包括残差,包括优化器等。我们可以先从注意力开始,这个前面也已经多次提到了,就是这一次K3它是使用了KDA,这种Kimi自己之前提出来的一个新的注意力方式。V4的话它其实是一个三种注意力的混合,总体是吸收注意力优化的这个方向。K3这一次是KDA,Kimi Delta Attention,它是线性注意力和全局注意力混合的一种方式。之前在143期的节目里面,我们也和Delta的作者,阳松林有专门聊过线性注意力的模型,那大家想去了解些背景的话,也可以去听之前的节目。我觉得K3这次直接在这么大的规模上用了线性注意力,应该来说还是个比较大的,或者说比较激进的改进。它的好处是效率的提升是很明显的,但一般来说大家会认为线性注意力它会在效果和性能上有一些损失。志愿你可以来讲讲,就是K3它这次用的KDA是一个什么样的改进,给业界的启发是什么,它还是怎么去平衡可能以前大家会认为的,就是使用线性注意力的一些弊端。
【嘉宾】对,我个人觉得这是一个比较大的进展。K3的路线就像刚刚说的那样,它是让大部分层去使用一个更高效的Linear Attention,也就是KDA,然后同时周期性地保留这种Gate to MLA。Gate to MLA它用来提供给所有历史token的这么一种直接的全局attention。最后相当于把接近四分之三的attention layer都换成了KDA,也就是一种Linear Attention的实现,而且最后做出了一个非常跳level的模型。这套混合架构本身之前其实Kimi Linear也已经验过了,但当时它其实模型总参数大概只有40B到50B这种级别,K3相当于直接把它放大到了接近3T,也就是说总参数规模接近放大了60倍,这其实是一个非常大的进展。其实比如说之前的Qwen 2.5,它是一个大概400B的模型,它其实同样也采用了三层Gated Dense Net再配一层Global Attention的这样一种设计。K3它其实进一步把这种以Linear Attention为主、周期性地保留Global Attention的混合架构,直接给scaled到了接近3T这么大的一个级别。在这里其实值得一提的是,像DeepSeek V4它其实走的是另一条路线,它没有去使用Linear Attention,而是仍然在Softmax Attention,就正常的Attention的框架里面,通过KV Compression以及Sparse Attention这样的一个混合来提升上下文的效率,这是不太一样的一个路线。对,所以我觉得这次K3带给我以及包括很多人的启发可能
【嘉宾】就是我们其实并不需要把Vanilla Attention和Linear Attention去理解成一个二选一的这么一个关系,就Hybrid Attention确实是一个很有前景的方向。简单来说就是你可以不同的Attention它承担不同功能,就比如说大部分层我们追求效率,小部分层我们去保留一个高容量的这么一种全局的Attention,保留这种Global Interaction。其实Kimi就像已经有效证明的这套方案,它是完全可以Scale到接近3T的这样一个非常非常Frontier的这么一种Scale的。
【主持人】对,我想补充问一下,就是它现在3比1的这个混合比例,三层线性注意力混一个全局注意力,是怎么决定的?
【嘉宾】就之前我和松延聊这个线性注意力的时候,因为其实实际上大家用的线性注意力一般都是要混全局注意力的。他当时跟我说这个怎么混,主要是靠经验是实验出来的。现在有了更多的理论方法,或说总结出来的规律来指导怎么去混合。从公开的资料来看,这个比例的决定本质上应该还是靠Empirical,就是去靠做实验。之前Kimi团队他们专门在一个16层的一个小模型上,就是上面提到了这个40亿参数的模型上,他们比较了不同的配比。他们当时的一个结论是3比1,它的在这个测试集或者说在这个验证集上,效果是最好的,就是那个Perplexity指标它是最好的。1比1的时候基本一样,但是负责才识更多,推理成本也就越高。所以Kimi基本上就沿用了3比1的比例,然后最后再去额外地加一层带Gate的MLA,保证我们整个模型的结构最后一层一定是一个Global的Attention。
【主持人】你说1比1是一样的,就是说效果是一样好的?
【嘉宾】对对,效果更近,但是因为复单载更多,所以可能它效率就更低。
【主持人】对。
【嘉宾】所以像Kimi的Plus,他们其实也没有说,他们在接近3B的规模上,就重新去扫描过各种比例,毕竟可以想象,这肯定非常非常贵。就一般来说的话,在模型训练的团队里面,就这种特别特别昂贵的ablation study,就尤其是Kimi的ablation study,都会先在小模型上做,然后再去沿着Scaling Law去验证整套的架构。Kimi包括Recipe能不能稳定的放大,Kimi他确实去也做了一些整体的Scaling Law study吧,但是他主要验证的还是整套Kimi的这么一个Recipe,比如说我们把那个细节挖出来。所以3比1到了3B,他不一定要说一定100%就是最优解,但是他目前作为整体设计的一部分,其实我们看结果,他已经很成功地Scale了上去。
【主持人】接下来有一个问题,就是说他因为Kimi是一个百万上下文的模型,其实上非常长,他在这么长的上下文里面,他是怎么去解决,就以前线性注意力可能会有的这种遗忘的问题?
【嘉宾】这个也是一个非常好的问题,我们现在要把遗忘这一点说得更准确一点。就是说因为Kimi这个设计上,其实一般来说大家会认为是一个tradeoff,就是它会把任意长的历史去压缩到一个固定大小的recurrent state。就比如说在Kimi里面对于KDN层面来说,那这里好处就是说,Cache和每一步的计算,它不会随着上下文去一直增长。代价的就是说我们不同的信息,会在有限的这些状态里面就会互相干扰,就会导致什么就特别早,尤其是那些特别细节的信息,可能会被覆盖掉。所以问题的根源其实在于,就是整个是compressional的,它因为是一种固定state的,它本身就会存在容量的瓶颈。当然就是其实KDA,它作为一个Linear Attention的这么一个variant,它在用的其实一些technique,它把这件事情它做得更聪明了。就比如说它们用的像Delta Rule,像Channel-wise Forgetting Gate这样的技术,就简单来说它每次可能先看Memory已经预测出了什么,然后我们只需写它预测的时候的那个偏差,然后同时不同的Channel可以学到不同的保留时间。除此之外比如说K3,它们还给每一步的Retention Factor去加了一个Lower Bound,这个其实在Tech Report的Figure3那里有一些分析,感兴趣的朋友可以自己看看。
【嘉宾】就简单来说它直觉上也可以去限制过于激进的顺势遗忘。但我觉得其实上面说了这么多,就是KDA它特别聪明的一些设计,其实我觉得它更多还是更好的去管理一种有限的Memory的一些手段。就是它并不会说从根本上就消除上面说的这种容量瓶颈的问题。说白了就是你在计算的时候多步累积之下,信息还是会衰减。所以我个人感觉K3它解决这样的一个百万级别Token的遗忘问题的时候,真正答案还是因为做了Hybrid的结构。就像我们前面说的那样,我们每三层的KDA会加入一层GateMLA,最后一层也一定是一个MLA。那MLA它是这种Global Attention,它会保留对所有历史Token的这种Global Interaction。所以模型它其实并不需要我们KDA就把这100万、上百万级别的这个Token,它每个细节都压在它的这个Recurrent State里面,就上面说的其实也很困难。但因为有了这个MLA,那MLA提供了这种Global Interaction,就是这种全局的Attention的这么一种机制,所以我觉得它是一个缓解遗忘非常关键的设计。
【嘉宾】其实像比较早的时候MiniMax的M1,那很早了,25年年初的时候,他们也做了这种混合的方式,后来他们又换回了Full Attention,就思路是一样的,然后效果不一样。我个人觉得很多时候,它做很多事情的Bottleneck还在这个IQ上,就在这个执行上。有东西不能做妄下结论,不代表这个技术本身有Sense还是没Sense,它很多时候就是具体实现的时候,比如说数据不一样、算法不一样,然后做这个事情它有很多小细节不一样,它最后可能就都很不一样。注意力结构的变化它也会带来一些算法上的变化。
【主持人】就陈阳正好可以,CoreWake可以像我们上次在讨论V4的时候也讨论了,吸收注意力和线性注意力这两种改进方式。你当时提到说你觉得线性注意力的理论优势可能要再等几代真实的大模型的验证。那可以说K3现在它其实已经验证了线性注意力的一些理论优势吗?包括这种新的注意力结构,它会给Infra带来的一些影响和变化是什么样?
【嘉宾】我觉得我之前的判断还是很有道理的。我可以诚实地更新一下我的判断,然后也欢迎大家再听一次节目,我们在晚点的Podcast里面讨论DeepSeek V4的那一期节目。我当时提到的两件事情,第一个就是线性注意力的理论优势是需要几代真实的大模型来做验证的。第二,吸收路线在工程上面更可控,和现有的KV Cache、Prefix Cache这些技术设施的兼容性更好。首先K3对于线性注意力这个路线的验证,实际上每次有新的大模型发布,我的朋友圈都会围绕着线性注意力还是吸收注意力吵成一片,所以我觉得非常的Meme。好吧,做Infra还是做算法都是这个感受吧。
【嘉宾】K3的话毫无疑问是对线性注意力的一个有效证明。一个2.8T的主线模型,而且Median Token并且使用了NoPE,然后K3的MLA层完全不用加位置编码,位置信息就全靠KDA的递推门控还有衰减来提供。这样的话就是它扩展到百万的Median Token的时候,不太需要重调类似RoPE的这些频率啊、底座等等,也不太需要像压影一样专门去做插值,外推起来是非常自然流畅的,这个设计和效果当然是非常好的。然后第二点我说这个吸收注意力在工程上面会轻松一些,这个看法也没错。这段时间我们SGLang团队也花了很大的精力去尝试把线性注意力需要的Recurrent State也纳入到vLLM的Prefix Cache体系当中,这让K3这种Hybrid KDA MLA模型的前端服务能够达到和全注意力模型一样的通用性。长期来看,线性注意力和吸收注意力的兼容性差这件事情可以逐渐被工程弥补,当然代价就是我们的抽象会比以前更复杂一些,对吧。另一个角度说,这个线性和吸收也不是一个二分的问题。K3选择一个三比一的混合,这个每个Block三层KDA加上一层GateMLA,然后Overall这个Backbone最后还会有一层Light MLA。线性的部分是靠KDA来提供这种我们所谓的位置敏感的序列嘛。
【嘉宾】然后全局注意力的部分就是靠MLA来提供这种不受限的那种交互,其实体现的模型也非常强大。所以我没有说把线性吸收这一条会胜出,我更愿意相信的是任何一个能够在百万上下文水平上把成本,类似于我之前讲的KV Cache的Transfer成本,类似于我之前讲过的Prefill的一次成本,当然我们之前肯定也讨论到一些Routing的成本,这些成本能够压下来的架构,它大概率都是异构的。然后异构的模型架构对于我们SGLang推理框架而言,需要持续性地从事维护好多种形态和生命周期的Attention抽象架构,这是一个巨大的工程考验,这也是我们团队这个工程能力的体现。
【主持人】那我觉得挺好的呀,这事越难就是说它的工程工作越多,其实你们做的工作越多,你们的价值会越多。希望如此OK。MoBA就是这种线性混合群取方式,因为理论上你加了线性,其实你的效率会提升吗?这个也可以讲讲,比如说你们在做适配的时候,观察到它效率的有哪些提升还是比较惊人的?
【嘉宾】其实它自己的技术报告里有写道,就是说它是有实现了在百万Token上下文场景下的6.3倍的解码加速。6.3倍这个值其实不是Kimi K3报告里面的严谨值,而是Kimi更早的Kimi Linear论文里面的数据。不严谨来说,在同样的模型规模下,以线性注意力为主的混合架构,比起传统的全注意力架构,在100万Token这个长上下文量级,混合架构生成的Token速度是全注意力架构的6.3倍。6.3倍是一个非常可观,乃至令人惊讶的数字。我可以简单解释一下,模型的Decode阶段每吐一个Token,都必须要把整个请求的全部历史上下文读一遍。全注意力架构的历史是整个KV Cache,它是跟着上下文长度线性变长的,100万Token的KV Cache的长度近乎是1万个Token的100倍。上下文越长越靠后的Token它的开销是越大的。然后线性注意力则试图把请求的历史信息压缩到一个固定的Recurrent State当中,100万Token和1000Token,它们的线性注意力的Recurrent State几乎是一样大的。
【嘉宾】我也分享一些我们SGLang团队为K3设计的推理栈的实际数字,来为大家提供直观体验。K3是69层的MoBA加上后面应该是24层的MLA。那么69层的MoBA给一个请求分配的历史信息大小,基本就固定在54兆,所以54MB不论长短。然后这24层的MLA是全局的注意力,然后它会为每一个Token额外地分配27KB。那么一个百万上下文长度的请求,在MLA上的开销大概就是27GB。上去是一个54MB加上27GB的组合。但是如果先前的69层也是全注意力,那就不是54MB了,而是额外的几十GB。MoBA和MLA的组合节省下来的存储大小,进一步反映到KV Cache的搬运成本上,然后某种程度上让整个推理速度快了。
【嘉宾】然后最后一个问题就是什么情况下这个6.3倍的体现是最明显的,毫无疑问是长的Agentic Coding。如果每一个Agentic Coding请求都消耗上百GB的KV Cache的话,最强大的HBM缓存也撑不住几十个请求。就除了MoBA这个新的注意力机制之外,这次K3的另一个新的东西是Attention Residue,这也是之前他们发的成果,是今年春天的时候发的,然后当时马斯克还转发过。我觉得它用到K3上的速度是非常快的。
【主持人】这个我也可以补充一个我了解到的信息。就其实在做Attention Residue的时候,差不多就是K3在定版的同期。所以其实当时要不要直接把这个东西放到K3上,还是说我放到下一代模型上,其实他们内部是有一些讨论的。后来杨植麟也是拍板做了这个决策,就直接放到K3上了。它是很快就进到一个主线模型上的一个成果。
【主持人】正好我们上次讨论V4的MHC的时候,也是讨论到了Kimi的Attention Residue,是有一些异曲同工的作用,就是想追求的效果是一致的。想先请志远和大家简单地介绍一下,就是Attention Residue是一个什么东西,它的作用是什么?它是在模型里的,比如说哪一个模块或哪一层发挥作用?
【嘉宾】我觉得Attention Residue它解决的,主要是模型它在这种深度,就从前向深方向的这么一个信息流。最早的时候最标准的这种Residual Connection,它在展开以后,当前层它看到的,它本质上是Embedding,以及之前它所有比它浅的层的Output直接相加。而且这里每一项的权重,它本质上就上一个固定为一直接相加。其实你随着模型越来越深,这种Residual Stream它的大小,它就会不断不断地增长。其实导致个什么问题?就是你每次倾倒进一个层,你吸引写进去的信息,它其实就会被逐渐地给稀释掉了。而且同时你对于后面的层,就更深的层来看,它没有一个直接的机制去说,OK,那我现在我要去选择,我现在更需要前面的哪一层,或者说哪些层,哪些层的这种Representation。
【嘉宾】其实Attention Residues的这个Idea它非常直观,就是我们把我们正常的Attention去旋转一个90度。比如说简单来说正常的Attention,你是在Token之间去算匹配的分数,然后去做选择。那其实Attention Residues它就是在Layer之间做选择,从层之间,对,就是会在层之间做选择。但每层各自会有一个可以学习的一个Pseudo Query,这个query在所有Token之间都会共享。而这时候它会和当前Token在不同程度的Representation做一个匹配,然后再通过像Softmax这样去决定,应该从哪些更浅度、更靠浅的这些层里面去读取信息。当然这虽然Query本身它是固定的参数,但是不同Token在各层的Representation它是不一样的,所以最后它的Attention的权重它还是会随着Token内容变化。所以最主要就是Attention Residues的一个原理。
【主持人】之前其实V4的内秀有聊到过MHC和Attention Residues,它其实想追求的效果是相似的。你最开始前面也提到了K3的整体思路,也是把信息在不同方向的流动都做得更有效率。Attention Residues解决了你刚刚说的层之间的信息的流动,那回到这两种方法上,据言你觉得它有哪个潜力更高的这种区别吗?
【嘉宾】可能这个问题是它们这两种方法,它们肯定还是想解决同一个大的问题,就是上面提到了你标准的Residual Connection,它在深度方向的信息流它是太单一了。当然这两种方法它们解决的思路就非常不一样。这里我可以大概说一下,就非常宏观的很直觉的一个idea。MHC的做法它大概就是我们会维护多条,之前就用一条并行的这种Residual Stream,每一层我们会先动态的把这些stream混合成这一层的输入,然后再把这一层的输出分发回不同的stream。同时它这里还有一些实现上、设计上的一些细节,就比如说它们会用Residual mixing加上一些约束,然后去保证信息、Gradient这样的东西,它在模型变深以后不会被无限制的放大。然后像Attention Residues其实就像我们刚刚说的那样,它更像是什么呢?就是你可以说更像是每一层我们去提供了一个历史目录的信息,然后这样的话它可以去直接去找前面某阶段产生的信息,然后选择性地把它调回来使用。我更感觉的就是如果你只去讨论架构的这种表达能力的话,只去看理论上的上界的话,那可能你说Attention Residues的上限更高,这个是make sense的。就毕竟你想MHC刚刚说的这种原理,它最终说完了还是把所有的历史信息,它都递归地去压缩在固定数量的这种Residual Streams。那Full-Attention的这种Residues,它其实就有一点点像在每个Token上,我们对于所有的比我们更浅层的那些层,它的输出形成一个深度方向的这种下三角的注意力的这么一种Map,一种Attention Map。
【嘉宾】所以其实我做一个很不恰当的比喻,但是形象的时候它就有点像,我们在层的这种深度方向上,一个是recurrent model,一个是softmax attention。那MHC它的信息要通过固定大小的State,一层一层地传递,有点像Linear attention。那Full-Attention Residues它就可以直接去跨层的读取,那从表达力的角度,那肯定是Full-Attention这个还会更高一点。
【主持人】你刚那个比喻意思就是它在层的角度一个是RNN,对吧,一个是个Transformer?
【嘉宾】对,或者Linear attention它其实也是RNN的变体。但如果就是说我们想讨论最终的实际效果的话,那么我觉得还是要看大家具体实现上的细节。就比如说像K3它其实用的也不是刚说那种,就是完全Global所有层之间都能互相Attention的这种结构。它做的其实是一种,就是Block-Attention Residues的这种technique。它不是你刚要表达的那些最完整的那种Full-Attention Residues。对,它会把层分成很多Block,然后它会先把每一个Block里面的层的输出给汇走,然后在Block和Block之间做Attention。
【主持人】我想到这个有点像稀疏注意力了。
【嘉宾】也make sense,yes,对。然后再比如说Attention Residues它其实需要保留更多的历史的KV,就这里也会带来一些像显存上Memory和Communication的这种成本。然后MHC其实也有一些自己显存上的问题。所以我觉得就是最终的效果肯定要看一个实现上的细节。当然我觉得就是目前可以确定的是K3和V4它已经分别证明了,这两种路线其实都可以去scale到非常Full-Attention Residues的这种级别。所以未来到底哪一种路线会更有潜力,或者说它能做到一个更好的效果,我觉得其实还是很拭目以待的。
【主持人】对,我觉得就是前面因为讨论了很多东西,它是对比着来看的,包括前面说线性和Softmax Attention这些,就你们看到有一个趋势好像是条条大路通罗马对吧。就大家本身会有不同的实现方式,但大家看到的问题是相似的,就是说好像大家目前看到的瓶颈或者要解决的东西是相似的。下一个话题是优化器,和V4一样,就是这次K3里用的也是Muon的优化器。而且Muon这个优化器之所以它能被比较规模化的使用,其实本身也是Kimi自己更早的时候,它的一个成果MuonClip,然后它也把这个成果贡献给了业界,基本上是现在比较主流的一个优化器的方法。然后这次在K3里面他们自己又有更进一步的改进,是提出了Per-head Muon,然后这个想请据言可以再帮大家讲一讲,一个是说优化器为什么比较重要。
【主持人】它核心解决模型的什么问题?另一个就是K3这次里是用的Muon优化器。Per-head Muon优化器相比于之前K2已经在用的Muon,它的一些具体的改进是什么?
【嘉宾】对,那其实优化器它是相当于模型训练,不止语言模型训练,就深度神经网络模型训练里面非常重要的一个组件。它是解决的核心问题,说白了就是我们现在有个模型,然后在训练过程中我们的Batch算出一个梯度之后,那我们怎么把这些梯度转换成一次非常稳定,而且有效的参数更新,而且是从成员来看比较好的一个参数更新。那比如说我们在训练一个模型的时候,我们会设计Loss Function,但是其实说白了就是我们要优化的东西。然后梯度就告诉你局部大概要往哪里走,那其实优化器它就会决定最终要采用什么方向,走多大一步,然后我们怎么去利用一些历史的梯度去降低噪声,去处理不同方向的尺度差异,去处理不同方向的各种冲突可能等等的这些信息。那其实一个好的优化器,它通常意味着在相同的训练的数据量下,我们可以收敛的更快,最终的Loss更低,而且还有一个就是很重要的就是稳定性。就是我们不希望我们在训练过程中出现太多不稳定的Spikes。就Muon它本身的核心是,我们再拿动量,就是动量它是一些优化器里面根据梯度和历史梯度算出来一些信息,我们拿它去更新参数之前,我们先把它做一个近似的一个正交化。这样的好处就是我们让更新不要去只集中在少数几个比较大的方向上。问题是,就是正常的那个Muon,就是你考虑以前我们的多头Attention,它的存储上虽然是一个大权重矩阵,但是其实在整个算法的计算逻辑上,对于模型架构来说每个Head它是比较独立的。所以因为如果你先把所有的Head都放在一起正交化的话,那其实它们的这些梯度链,包括动量的这些就是梯度和动量的这些信息,它们就会有冲突。例如说有的尺寸更大的这个Head呢,它可能就会主导整个矩阵的更新方向,尺寸比较小的注意力头,它可能就没有办法去被充分的Attention。所以Per-head Muon的这个核心思想就是,我们对于每一个注意力头,我们都去单独的做一次正交化,就意味着我们不同的这个Head,不同的注意力头,它们在做更新的时候,它们的这个大小、它们的Scale已经更加均衡了。所以其实K3的Paper里面也有章节提了,就说他们发现这个Per-head Muon在他们的Setup下,可以让这种训练的Loss Dynamics更加平衡,能够很好的去改善大规模训练的稳定性。
【主持人】相比MuonClip,就是K2自己之前提的这个改进,它现在这个Per-head Muon,它实现起来的难度会更大吗?就我想知道它有可能在业界怎么扩散,因为MuonClip其实在业界还是有挺多扩散的,就很多别的团队也会用。
【嘉宾】我觉得从实现难度角度说的话,像Per-head的这种Muon,它其实算法上基本上就是我们直接把那个拆散成很多的这个注意力头的Block,然后做一些并行处理,所以算法本身还挺直接的。我觉得实现的难点,一个难点可能是我们在大规模的训练里面,像这些QKV它经常被融合以及切分,这就导致这个优化器的状态,它会分散在不同的GPU的Rank上。所以我们必须要保证每个注意力头,它在算法计算上的逻辑边界,它不会被打散,同时我们又能够非常高效的重建这个完整的Block,然后还要把大量的这种小矩阵去合并执行,还要在一起做一些计算,避免带来非常大的这种通信开销,然后避免一些框架性能上的问题。所以我觉得像K3看Technical Report里面提到说,他们为这个也做了一些专门的处理,比如说他们把通信和正交化计算去做了一些Overlap。
【主持人】关于优化器我还有一个小问题,就是构造新的优化器改进这件事,AI可不可以自己来做?因为上次我们有聊到,Muon最开始是一个个人开发者Keller Jordan他提出来的。后来我了解到就是,Muon其实是在Jordan搞的一个开源项目叫NanoGPT Speedrun里面诞生的。然后这个项目简单来说就是我让所有人去训一个比较小的模型,一个标准任务,然后大家来比速度,谁能最短时间做完。最近有一个新的公司Riverside就是Tim,还有田野洞他们的一个新公司,6月的时候做了一次尝试,他们是用系统来自动化的跑这个Speedrun。之前其实两年多的时间里面,Speedrun都是社区里的一些研究者有人来做的。所以有一个小的脑洞是说,优化器是不是未来AI自己也可以来写,然后来制造了?
【嘉宾】这确实我觉得是一个非常非常重要的一个未来的方向。而且事实上我觉得,其实社区里面已经有一些早期的尝试了。我觉得主要是就做这种优化器的研究,它就天然非常适合这种Auto Research,因为它的这个Pipeline整体来说,还是相当于是比较结构化的,就是我们会,比如说先提出一个新的优化器的方案。
【嘉宾】然后我们去写代码跑实验,然后我们去看这个loss,然后看这个比如说像稳定性,看中曲线,这种俗称做PBC,然后再根据这个结果做一些改进。所以这里你会发现就是研究的目标还是比较明确的,而且就是最后的指标其实也非常非常清晰。所以其实在满足这两个性质的问题,其实就很自然越来越多的就会被交给AI agent来做了。
【嘉宾】这也呼应到了我们前面讨论的,就是它用一些早期的DBCC的版本来做Curl的开发,就是这次K3,就是刚才陈阳也说,他觉得一个是你目标比较明确,然后第二点是你的结果其实比较好验证,第三点是不太容易被hack,就作弊的空间比较小,像这种都是挺适合AI自己来跑的。
【主持人】对,我觉得是这样的。然后我个人觉得这里其实还有一个很有价值的问题,就是我们可以让Agent研究怎么去设计一个小规模的setting,然后让这个setting里面能够得到结论,它是能更好的去generalize到真正的那种大规模训练的。说白了就是你的一个优化器,它在小模型小规模的实验上跑得好,不代表说我们换到一个更大的模型,然后更长的一个训练中期,甚至包括不同的参数形状后仍然好。
【主持人】所以我觉得AI agent我们不仅可以让AI agent去研究我们下一个非常好用的这个优化器是什么,还可以研究说我们应该去用什么样的小规模的proxy experiment,什么样的scaling ladder,它是能够最快的判断一个优化器能不能最终scale到我们目标的这个场景下的。如果这个问题我们能够做得非常好的话,其实我们就可以大大加速整个对优化器研究的一个迭代过程,因为毕竟你跑一次实验还是要花不少时间不少资源的。如果你能够就是用最少的资源去飞速的做一次验证,然后这个验证结果也很可靠,整体的流程其实就会被加速。
【主持人】所以一个是优化器本身的改进AI可以自己来做,另一个就是你刚刚说的我预测不同的改进哪些更容易规模化这件事也有可能自己来做。
【嘉宾】对,或者说你怎么去设计一个比较小规模的场景,然后使得这个小规模的场景下出来的结果是比较make sense,make sense就意味着它在大的这个scale下仍然是对的,或者说比较transferable。那这个方法其实也不止可以用在优化器的改进,因为你基本上AI训练你的很多部件都是你现在一个小scale上试,然后你得给它scale对吧。
【主持人】对对对对对的,包括我们前面提到的各种模型架构的改进,然后包括就是说各种不同强化学习算法,它的这个调整吧,这些我觉得都是个很关键的问题吧,就怎么在小规模的实验下能够让大规模的实验结果也能更加predictable,这个是模型开发很核心的一个能力,而且你做的好的话可以节省很多资源。我想了解一下据你所知业界有谁初步掌握了这种能力吗?
【嘉宾】我觉得这个不是业界有谁初步掌握这种能力,就是大家都有这样的能力,只是有的做的更好,有的在有的领域做的更好,有的在有的领域做的更弱一些。谁在这个方面做的比较强,我觉得还是Frontier Lab更强,就是美国的OpenAI、Anthropic这些,他们这方面做的应该是非常非常好的。就是他们一个自己资源又多,一个是他们就是这一套怎么去做小规模的这种验证的各种流程,各种基建也更成熟。
【主持人】之前一直有一种观点,就有个人会认为像美国的这种Frontier Lab,因为他的算力资源会多很多,其实比中国的一些公司多一到两个数量级,所以可能他们反而很多这种就比较细的改进,对他们来说就不一定那么必要。我就是指就是比如说,你刚说的我能更高效率的使用算力这件事。然后反而是中国,因为大家很缺算力,所以可能你前面做实验的过程也会非常谨慎,然后也会找各种各样的方法,说我怎么在有限的算力之下我能达到更好的效果。你觉得这种观察成立吗?
【嘉宾】我觉得这个说法一方面是有道理的,就比如说你可以看到DeepSeek里面有很多的这种工程上的优化,确实是压到了极致。但另一方面其实我觉得也不要小瞧Frontier Lab他们做各种优化的,他们其实也是很有东西的,对不管是各种小优化,还是各种怎么在小规模做的好,然后是generalize到大规模的。
【主持人】有一个就是对Silo的观察,想和你讨论一下。就比如说你周围交流会不会有这种感受,就有的人会说Silo其实在,比如说架构这一层他做的花火没有那么多,他是把很多重点都放在数据,然后放在算法上。
【嘉宾】对,我觉得根据各种Gossip确实是这样,就是他们基本就坚信Doing the basic things right,就是怎么把最简单的事情做到极致的正确,然后去有效Scaling把事情做大。
【主持人】我们来讨论就是后训练的这一部分,后训练和RL,虽然前面有聊到说他后训练的细节并没有披露这么多,然后这次可以在技术报告里看到的是Kimi有一个有意思的设计,是他先训练9个领域的专家模型,然后他通过MoPD。
【主持人】就是Multi-Teacher on Policy Distillation,给他合并成一个模型,这个也许应该能翻译成多教师的在线蒸馏,给他合并成一个模型。可以请区委分享一下,就为什么他不直接联合训练,一个要先分后合?
【嘉宾】对,就其实这个MOPD,这个Multi-Teacher on Policy Distillation这个Recipe,他其实最近一年他已经快速成为了一条非常常见的一个Post Training Recipe。像这种方法其实一般大家也不会说专门写个文章去讲,对吧?
【主持人】是的,就是这种MOPD这种他不太是研究问题。为什么像比如说Attention Residuals这种东西,Kimi就会专门写个文章,然后像MOPD这种就可能没有任何公司会专门写文章去讨论这个话题?
【嘉宾】我觉得这个问题其实问得非常好,就我觉得你一个东西能不能写成文章,一个很重要的问题是你能不能把它抽象成一个比较Clean的一个Research问题吧,一个研究问题。比如像Attention Residuals它可以有一个很Clean的研究问题,它的指标明确,你要对比的对象非常明确。然后比如说像MOPD这种,你算MOPD的话,你要对比那个其他的方案就特别特别麻烦。MOPD它给你更像是我们直接避免了一条很麻烦的路径,然后你就不需要关心说我们怎么把那个麻烦路径调得非常明白。所以这里它相对来说就不是那么干净的一个研究问题的一个Setup。我在想它的这个相关的一些影响,比如说你看Attention Residuals它写成一篇文章,它有三个一作对吧,对这些作者来说它肯定是有它的职业的credit的增加的。那业界也有很多,我觉得大家用了很多的方法好像也不知道最开始是谁想出来的。其实在比如说在美国这边,这方向大佬之间有个人提出一个很好想法,就是就类似于他们小圈子内部其实是都知道是谁提的,所以其实不会影响他们自己的比如说credit,包括更直白一点他们的升职这种,就是这种消息流传都很快的,只是它不会在公开的网上流传。OK,所以它是有点像就圈子内都知道,但是外面的人不太知道。
【主持人】对,那你可以继续来说,你就说这个东西最近这半年到一年它其实变得很主流了。
【嘉宾】对,它最近一年已经快速成为了一条非常常见的一个Post Training Recipe。其实公开采用这条路线的就已经包括像Baichuan VR,像DeepSeek V3,以及包括后面Nvidia做的Nemotron 3 405B,就是这些模型,然后包括这次的K3。这里用MOPD一个很重要的原因就是我们想把不同领域的这个研发过程去解耦,方便我们一个很大的一个模型团队下面有各个小团队他们之间的合作。就比如说像General Instruction,像Coder Agent,像General Agent这些等等,他们不只是data不一样,他们其实包括像Environment,像我们去给那个奖励的策略,像我们做一次Rollout的程度,像他们使用的Hardness,甚至是算法的Recipe它都可能非常不一样对吧。比如说像Coder Agent里面包括Inference也会有些区别,比如说Coder Agent里面的Inference它可能会有些自然挑战之类的。所以其实如果你全部都放进一次交椅的那种,就把你的所有东西全部混到一起,然后做一些大的Rollout的话,那其实我们在混这些Domain,混这些不同的领域,然后混这些不同绿料的,还有包括前面说了各种训练的设置,它就会全部给耦合到一起。就会导致你做模型合板的时候,你的技术压力非常非常大,就是你要把这些东西,他们可能本来自己的轻木里面它一起Walk,然后最后你合板的时候还要考虑说怎么合起来再Walk,然后它不是各种赛达舞的,非常非常不一样对吧,就是这样会导致压力特别大。所以就是如果我们用MOPD这个Recipe的话,我们就可以先分别训练各个领域的专家模型,那其实每个小团队他们最后要deliver给合板的模型的成果,它其实就是自己领域的小专家模型,然后不用把上面说的那些线拔掉。
【嘉宾】什么各种recipe,各种infra,还有包括各种你玩的这样的东西,全部都给deliver出去。那其实每个小团队,我们就专注地把自己领域的模型可以训练最好,然后最后合板的时候再用MoD。这样的话,大家就比如说你不需要为了方便最后的训练,我们提前把所有recipe和infra强行统一,对吧?那就可能会导致你再做自己领域的时候非常的束手束脚。然后我们也不需要说我们在每次迭代的时候去同时协调所有的领域,这样你就能让你的迭代变得非常快。还有就包括你做合板的时候,我们不需要花特别特别大的力气去协调各个方面。所以以前它也是分开训练的,现在也是分开的,只是合的方式不太一样。以前是一个更完整的合,就是你得带着各种训练设置一起来合;现在是每个专家训完之后,我最后只合结果,对吧。以前就这样的recipe,就还没有那么麻烦,对吧。比如说最早的时候,我们不需要做Agent的recipe,那也不需要,就infra可能比如说相对来说也比较统一,大家只需要把数据贡献出来,然后直接一合就可以了。但现在就是各种recipe,不同领域就会复杂很多,他们都有自己的这个recipe,所以我们只合模型的话就会方便很多。
【主持人】它在直觉上,它好像给人一种跟预训练有些相反的这种特点。预训练其实你是在同一个模式里面,你是吃了非常多元的数据,对吧,你就是放在一个过程里去训练。然后后训练按你刚才的描述,其实是之前后训练,它要处理的任务比较单一或者简单的时候,大家其实是在一起训练的。那现在就是你能看到,它是一个好像在走向分的过程,比如Qwen3这次有9个分开的。它为什么是这样一个过程?你觉得更远来说,后训练这个阶段它有必要又变成一个合的过程吗?那样的话它会潜力更高吗?
【嘉宾】就是我觉得是合起来,还是MoD哪个潜力更高,这个还不好说。就是有很多研究,他们会说可能做MoD,它比去直接做joint training效果要更好之类的。但是我觉得就是这种结果,你要看它非常非常具体的实验的setup,才能说它的这个结果到底有多generalized。我觉得目前做MoD主要还是说就是这样最方便,就是你不用像我刚刚说那样,你每个团队有一个自己的方案之后,你还要去合方案,而我们是合这个最后的这个叫做模型就行。就像说反正就是你合方案是不是很麻烦,但是合模型用MoD就很简单,然后大家就专心把自己的模型做好就行。
【主持人】然后MoD里其实它的英文,它最后一个是D,第一是代表Distillation就是蒸馏嘛,翻译过来就是蒸馏。我觉得正好也可以说一下,就本来蒸馏的意思是什么,以及业界因为现在关于蒸馏有很多讨论,实际上它从技术上来说是怎么一回事?
【嘉宾】对,就蒸馏技术最原始的定义上来说,它always都是去把Teacher模型,就是教师模型的能力,它去传递给一个学生模型。它最经典的用法其实就是去压缩模型,就比如说你先训练一个很大的一个教师模型,然后再把能力去蒸馏到一个更小的一个学生模型。这样你可能就用学生模型,它更便宜一些,对吧。就比如说在Qwen3里面,他们的技术报道员就说了,我们会做这种strong-to-weak的Distillation,就是先去获得一个强大的模型,然后再让它们去帮助训练小模型。所以从技术的角度,它always都是教师模型去传递给学生模型的能力。但是我们更多要看它的目的,就比如说在MoD这里,它的目的不是说去压缩模型,而是我们刚说的合板。就是我们先从同一个Foundation model出发,我们去衍生出不同Domain,以及不同reasoning effort的教师模型,然后最后我们再把它...
【嘉宾】它们的能力去传回一个统一的一个学生模型里面,然后这是目的一方面。然后另一方面就是我们这个蒸馏具体怎么实现,从具体的算法角度,就是on-policy distillation做的事情,是我们会让这个学生模型自己去生成一个轨迹,然后学生模型再对这个轨迹去打分,提供一种比较稠密的叫做奖励信号,然后用这个奖励信号来去提升学生。
【主持人】然后另外一种也很常见,或者说更传统一点的这个蒸馏模式,也就是刚麦奇提到的,就是说在这种普通大众在社交媒体上去讨论这个蒸馏,指的就是一般是说我们这个老师先去预先生成一批固定的答案,然后学生就直接在这个固定的数据上,离线的数据上我们直接去模仿学习,去学习老师的模型,它在这个输入下它的输出是什么。这里MOPR使用的on policy的蒸馏,和你说的就是我们平时讨论的语境里面更常提到的那种蒸馏,它是off policy的蒸馏。这个on policy和off policy的区别是什么样?
【嘉宾】更多指的还是算法下面的区别。对对对,就比如说on policy,它学生是被视作里面的模型,现在过程中学生自己去亲自去生成这个轨迹,所以就可能我不说它是on policy的,on policy学生是相对于学生来说,老师它的这个轨迹它是一个off policy的,就是老师的轨迹不是学生自己生成的。
【主持人】哪一种它的学习的效率会更高?
【嘉宾】这个其实也是不同场景下有不同的经验性的结果。比如说在做合版的时候,确实肯定是on-policy distillation这种做法,还是on policy的比off policy更好。对,但如果只有这个教师模型的这个叫做输出,你没法搞到它的权重,其实你没法做到,像教师模型去给学生模型信号打分,那你就只能去做off-policy distillation。
【主持人】假如说比如Anthropic它自己有自己的模型权重,比如它自己蒸自己的话,从技术的效果上来说,你觉得它大概率它是on policy还是off policy?你说自己蒸自己的目的是啥,是为了变成一个更强的模型,大家说的左脚踩右脚,然后自己原地飞升这种,这个感觉目前还是大家愿景吧,就是还没有真的做到。
【嘉宾】我个人理解主要还是看这个external,外在的这种监督信号它有没有,就我觉得你很难在没有一个很本质的、很能scalable的这种外在监督信号情况下去提升一个模型。也就可能就是你最后用的这个技术里面,它的名字可能带着distillation,但它肯定是找到了一种很scalable的方式,能够稳定的把外在的这种监督信号给打进来这个过程。
【主持人】那最后在Infer2的层面,相信程杨来分享一下,你觉得K3做Infer2改进的一些整体的思路是什么?因为你们这次K3也是第一时间做了适配,你可以讲讲就是你们适配的时候有什么有意思的发现吗?
【嘉宾】具体来说的话,我可以分享一下KDA架构对于投机采样带来的挑战。投机采样,简单来说我们会通过一个小的模型来快速猜测出一批token,然后让真正采样的大模型来一口气验证这些token是否正确。验证完成后这批被猜测出的token当中,可能只有前几个token会被大模型接受,所以大模型在验证这批被猜测的token之前的状态是需要保留的。因为如果猜测不对的话,大模型要能够随时回退到猜测之前的那个状态。
这对于普通的attention而言问题不大,就像举的比方,你无非就是把书的后几页撕了,然后继续从笔记本的靠后的页开始写,对吧。但是KDA的架构设计需要能够对每个token的递进状态进行原地的重写。为了能够回退到大模型验证之前的状态,我们必须要想办法对之前的递进状态进行存档。一个比较朴素的存档方法,就是每走一步就把整个递进状态做一个快照,但是对于整个69层KDA做完整存档的保留的开销非常大。我们最后的做法是不存状态,只存每一步状态的极小投影大概只有1KB左右,要回退的时候就从上一个checkpoint出发,照着这些输入把接受的那几个token的存档重放一遍。
这很像我去看我小表弟他学习象棋的过程。象棋玩家为了复盘棋局,会通过一些简单的记号来记录每一步棋子的移动,这样你就不用每一步都给整个棋盘来一次完整的快照。然后我们为了支持KDA的投机采样,其实也实现了类似的思路,记录棋子的移动而不记录整个棋盘。比较有趣的是我们后来观察到Kimi K3的技术报告,也和我们独立地提出了类似的设计。当然我们其实并没有提前为了这一块的设计做过任何讨论,也可以很荣幸地说,领先的工程团队大家在这些工程问题上的解法,都有异曲同工之妙。
【主持人】这次K3还开源了他们的一个agent的环境,它就是叫Agent Environment。你前面也说到一般权重只是一次训练的产物,而环境是能够反复复用产生下一代权重的一个流水线,所以环境是更重要的互补资产。也可以讲讲就这次从Agent Environment里面看到的一些有意思的思路是什么?
【嘉宾】Agent Environment是一个最朴实无华的名字,这还是比较有心力。因为一般而言我们研究者往往为了模型的安全性,会去主动限制模型的能力。大多数情况下我们会通过更好的隔离方案来尽可能地锁死模型,让它少做一些越域之类的操作。但是K3的训练团队选择通过更好的隔离方式,来尽可能放宽模型的能力边界,就是模型可能受到的限制更小。我相信他们自己也比较believe,以后模型应该拿到系统权限是更高的。
【嘉宾】可能是这个样子的。往往我们认为agent越强的话,它的探索会越激进。早期的时候我记得大概是Kimi K1或者K2的时候,他们会选择用容器runtime来完成沙盒。但那种实现很容易出现我们所谓的OS panic和类似的死锁,他们并没有选择让agent持续去跑容器或者换用别的虚拟机,而是干脆换了别的技术路线,把这种隔离做得更好,用了Firecracker来跑这种micro virtual machine。这个其实比较工程化,但是我觉得一句话take away就是说,他们选择赋予模型更高的权限,并且为这个权限做出更好的技术隔离。
【主持人】OK,这个技术隔离是隔离什么和什么?
【嘉宾】简单说就是希望如果一个agent把一个沙盒弄崩溃了之后,不会影响其他的沙盒的运行。
【主持人】对,就是安全的考虑对吧?
【嘉宾】是的,可以说是沙盒做得更安全,那么模型的安全限制可以放低。然后第二点是这个持续化rollout和沙盒,这个其实解决的这个问题很经典,这是我们的agent task的长尾问题。我们其实发现这在Kimi一个很厉害的地方,在agent task RL里面有个经久不衰的做法,叫做partial rollout。简单来说就是一条采样轨迹可能是上千次的工具调用,得到上百万个token。然后假设我一次采样16个request,这16个request里面可能就会有那么一两条特别长的request。比如说可能它是调一个外卖接口,但是外卖的那个mock接口返回的比较不稳定,可能过了一分钟才返回,这种情况下会极大地阻塞这个batch的整个运行。
在Kimi K1.5的论文里面,他们就提出partial rollout,就是不必等待所有的轨迹都结束,等到一定比例的我们说的轨迹完成了之后,就会把结束的轨迹用作训练,然后没有完成结束的轨迹会缓存起来,在下一轮继续去完成它。这个做法其实是有了很深厚的统计学的观察在里面的,就是说通过提高采样的总数,或者说只选择把不长尾的那部分的request拿来使用,可以加速采样的过程。这个也有一些强化学习理论上面的挑战。就是一方面从系统设计上面,模型的历史采样信息需要尽可能的保存,比如说模型上次采样的KV cache,他们需要把这些KV cache写下来,避免下次重新采样的时候需要做一次特别长的long prefill。
然后另外一个问题是,强化学习测的数据过时问题,用术语叫做off-policy-ness。就是它这样采样的轨迹会有一个问题,可能这个轨迹的前一个部分是上一个版本的checkpoint采样出来的,这个轨迹的余下部分才是当前版本的checkpoint采样出来的。这样的话一条采样序列其实它不是严格的on-policy,或者说不是严格在线的。K3还是采用了part-token政策的方式,把我们所谓的策略更新约束在一个局部领域之内,来部分容忍这样的off-policy-ness。这是一个很经典的用算法上的宽容来换取infra上的自由,然后其实对infra的这个提速是非常好的。
最后一点,我觉得提前说Kimi团队的一个设计哲学,就是让RL环境和推理时agent运行的环境是尽可能一致的。K3的训练管道把agent的harness表示成了一组可以配置、可以组合的模块,这属于工具接口、system prompt、上下文管理策略、skills还有memory。他们用各种复杂的策略去模拟、组合出来各种主流的agent harness。这种组合其实也避免了在模型训练过程当中overfit到某一个harness上,以至于比如说你训练在美团上面定外卖,最后发现用户想要用饿了么就用不了。这些对人类而言是非常愚蠢的,但是对模型而言训练不佳很容易出现这样的问题,很简单他们这样的策略组合能够很好的缓解这种学会了美团就不会饿了么的问题。
从infra的角度上来讲的话,我其实很认同他们这个方向:环境正确。就是说我们对harness的要求会逐渐提高的。更广的来说,我们希望harness能够自由的和各种agents的workflow做组合,这和我们在serving侧的想法也是一样的,不要为了每一个模型去做许多的策略,要为了这些状态尽可能去组织成树状结构。
【主持人】所以他的整个思路就是说,我这个模型训出来之后,再上每一层就这个harness这一层,它不管是什么类型的harness它都能比较好的去调用,它可以适配不同类型更多的框架?
【嘉宾】理论上是这个样子。但是效果我觉得肯定不至于那么完美。但是我觉得现在这些harness,我们随时对harness的使用越来越高,对harness泛化性的要求也必然是越来越强的。
【主持人】你觉得避免模型overfitting有这个需要吗?比如说像SRP或OpenAI它可能自己训的模型,它就是在自己的harness框架里面被使用的。
【嘉宾】这个必然是需要的。而且换句话来说,即使即便是Claude Code这样的平台,它其实能够接入的组件也是非常多的类型。Claude Code可以直接接Slack,可以接Gmail,还可以接你的Calendar,这也是motion harness。何况我刚提到美团和饿了么这个切换问题,可能对于SRP而言他们可能换的就是用Gmail还是用Outlook。这两个声音听上去也非常的类似,但是不做精心的设计,模型的overfitting会非常的令人尴尬。
【主持人】除了你刚才说的就是你自己最在意的这个竞争,agent RL就是他们强化学习的环境之外,其他的一些改进包括这个Flash Attention,还有它的量化感知训练,这些你也可以展开讲讲,就是它在infra上带来的一些变化是什么?我们回到下这两种attention的区别吧。
【嘉宾】softmax attention的kernel主要是在和带宽做斗争,然后线性GDA的kernel不严谨的来说,它会更多和串行依赖关系做斗争。具体来说GDA的话是在这个chunk之内做并行,chunk之间做串行,以此recurrent state得以一个chunk一个chunk地往前传导。所以这种状况下最意义的一个写法就是,每一个chunk你算一次你就传一次状态,这会导致计算资源的大面积空转。然后flash GDA是Kimi他们团队基于Triton写的一个chunkwise的kernel,把chunk内的计算和跨chunk的状态传输尝试做重迪,处于来说叫overlapping,这是flash GDA的第一层。然后接下来来说的话就带了一个差别,softmax attention的GDA的话,它对于KV cache的关注其实不会特别强,因为kernel对于KV cache是只读不改的。但是GDA的这些kernel的旧有状态可能会被覆盖,所以kernel的设计还是要考虑更全的生命周期:什么时候做持久化、写到哪一个chunk slot里面、怎么去保证其他request正在读的缓存不会被冲掉。可以说GDA的kernel会难度更高一点,而且它也模糊了我们认为kernel和缓存管理的界限。
【嘉宾】然后另外一个角度是Kimi的拿手技能,这个我们说的QAT就是quantization awareness training。可以看到K3和DeepSeek V4同时都在采用FP4精度的一个训练,DeepSeek V4的具体做法的话其实我们之前有讨论过,我们这里可以更多讲K3。K3从SFT开始就做QAT,然后这个直观的好处就是模型会有更多的时间去适应量化噪声。而且他们也着重强调了RL采样阶段和tuning阶段采用的是同一套量化方案,这样尽可能的减少训练和推理不一致带来的磨损。这个也可以从RL的角度上来感受,我们刚才其实提到一个术语叫做off-policy-ness,直观来说RL策略梯度的优化,这个整个事情能够成立是有一个前提的:我正在优化的是产生了这些数据的策略。就是我们训练的时候会采集到许多的样本数据,然后拿去优化模型,我们希望这些数据就是我们正在优化的模型产生的,它不是t-1的checkpoint,也不是t-2的checkpoint,它最好就是t-0这个checkpoint产生的数据。但是t-0或者t-1、t-2它有的时候不是你刻意造成的,就比如说我们说训练不一致,就是训练的时候可能它的精度比如说是BF16,那你推理的时候采用NVFP4,那么这就会导致其实这两个策略是有区别的,这也是一种off-policy-ness。所以一旦训练和采样的过程对同一个checkpoint给出的精度不一致,它给出的token的概率是有区别的。这就是一个不严谨的梯度计算,而且这种不严谨的梯度计算对于MoE而言,可能会导致一个灾难性的崩溃。OK,所以K3的训练哲学还是在贯彻RL Infra领域的一贯的认识:为了我们训练到的模型,就是我们要去优化的一个模型,一定要让训练和推理阶段尽可能的契合,采用尽可能相似的配置。
【主持人】这件事情它在实现上难吗?就说现在大家主流的公司都能做到尽可能一样的配置,还是说这个还是需要挺多努力才能实现的,以及它其实也能去看一个公司大概infra的水平。
【嘉宾】我可以说这个事情非常难,而且对于很多公司而言需要单独的去维护一个硕大的infra,甚至说是kernel team才能够去把这个事情做好。这些下来的话我觉得Kimi的技术还是非常领先的。
【主持人】你之前说DeepSeek是infra领域的巨擘,那类比一下的话你觉得Kimi是在什么段位?
【嘉宾】我不希望有一个分出高下的判断,但是坦诚来说我觉得国内的公司的infra真的强,不过正常来说我们叫做用infra换算力,真的是非常不容易。
【主持人】最后这一部分我补充的一个问题就是,我看K3在技术报告里他写道,就K3优化测试里已经给,它的原文写的是alternative vendor,有可能是个国内的芯片公司,给这个alternative vendor的GPGPU写了kernel。那是不是有可能就用K3这个模型,也能加速K3自己向国产芯片的适配?
【嘉宾】是的,我觉得这点应该是比较明确的。虽然我们不确定最终这个delivery上生产的这些kernel是不是K3写的,但是K3至少从性能和正确性上来说是非常能打的。然后另外一个角度就是这一次我们也见到,由于现代这个模型的生态真的繁荣得非常厉害。以前有一段时间国产的芯片的同行,他们想要在模型发布当天support这些新的AI模型其实是有一例难求的。但是到了最近我们也看到类似于摩尔线程,他们也通过vLLM和SGLang这样一个生态,在发布的很快的时间之内,我不记得是不是当天,但一定是在极短的时间之内,就成功support上了K3而且也达到一个很好的效果。我觉得可以想见kernel development agents真的是一个非常伟大的事情,我觉得对于整个芯片产业是有很本质的推动的。
【主持人】你觉得这件事会怎么影响英伟达的统治地位吗?会到那个程度吗?
【嘉宾】这是一个我无法判断的事情。
【主持人】你这是无法判断还是不想说?
【嘉宾】我无法判断。
【主持人】这个我们可以讨论一下,理论上来说其实因为CUDA这个生态,就是建立在说你有比较丰富的kernel,这肯定是很重要的一部分,对吧?然后它的通用性比较好。
【嘉宾】我有很多好朋友在AMD做AMD version的Triton,所以他们高强度的依赖这些GDA,而且我也有NV的好朋友。
【嘉宾】他们在NV给NV新一代的DSL也是大量依赖KDA。我觉得你这提供了一种视角,就是KDA这个东西英伟达之外的厂商可以用,英伟达自己也可以用,因为英伟达自己也需要去调。我觉得很遗憾,就是现在这些模型的KDA,优化CUDA可能很厉害,但是如果你优化比如说举个例子,假设以后有CUDA Gen5,现在比如是CUDA Gen4,CUDA Gen5就可能KDA还得花一段时间来唤醒或适应。这也是个很好的问题,我们可以看看KDA这里指的是开发CUDA的这种agent的发展之后会怎么去赢上这个芯片领域的一些竞争。
【主持人】我很难说Kimi Delta Attention和CUDA development agents哪一个更伟大,我觉得这两个事情都可能叫KDA。我们最后可以来稍微延展讨论一下K3对业界的一些影响,有一些随便拍脑袋的问题,比如说你们认为下一个开源最强什么时候会出现?可能来自哪一个公司?
【嘉宾】首先我见到一个非常恐怖的事情,之前见到Kimi团队发布说他们的模型在以日为单位迭代。这个时代对智力前沿的加速度没有降低,反而我觉得是人类的想象力降低了,就是我们现在出了这个coding之外,我见不到下一个爆炸的点。对,就Kimi K3 Preview预览版发的时候说他们会一日更新。
【主持人】下一个问题其实前面稍微讨论过,就是你们觉得今年内就剩下还有五个多月的时间里,我们有可能会见证开源超过闭源吗?
【嘉宾】我个人觉得这个是有领胆度的。因为一般来说大家会认为OpenAI和这些巨头他们内部的一个最强的模型,是比他们现在放出来的模型还要再强半个甚至到一个generation的。我们现在最强的开源模型基本上目标是追平现在已经放出来的,就叫做最强的闭源模型或者说闭源重模型。但是可能他们之后能够放出来的是他们现在内部已经有的、比现在闭源重模型还要再强一个半代甚至到一代的模型。然后这个时候可能就是确实开源重模型还需要一段时间去追。
【主持人】对,所以我觉得在至少未来五个月内,这个趋势应该不太会有很明显的变化。其实对于开源重模型这边,基本上就是把目前最强的一个给放出来了,所以这里其实还是有一个代差在这里,就是实际最强的跟放出来的这个最强的。
【嘉宾】你的意思是说要找一个好的时机来放?对。
【主持人】最后一个问题是一个相对宏观趋势的问题,最近说下一代模型的标志是能持续学习,你们自己会怎么看下一代模型要实现什么能力?
【嘉宾】至少我对于持续学习的观点,我不是说希望这个模型的智力不断提升,我是说希望一个模型能够对任何系统都有很有效的优化。但这个任何应该就专指KDA吧,比如说我现在可能让KDA去优化现在CUDA它可以优化得很好,但是等到下一代DSL来了,KDA能不能做得很好?目前来看是不太行的。这些反过来暴露现在的模型的泛化性没有想象那么好,因为CUDA绝对是一个最好验证的领域了,哪怕这样子的话它的话都还需要一定的训练。那么从这点上来看我觉得实现ASI还是有一些距离的。
【嘉宾】我不去评价说下一代模型的核心能力是不是说必须要有持续学习能力的观点本身,我觉得如果我们假设这个观点是正确的话,现在有个很大的问题是我们还没有一个很好的方式去评测或者说去measure progress,就是说我们去看现在的模型,它做这个持续学习的能力大概到了什么样的层次。因为它肯定不是一个零或者一,就是它不会是零学习或者说会是一学习,它肯定是一个零到一之间的某一个状态。我觉得现在还缺少这样的一个去衡量目前的进展的很好的方式。所以我觉得如果认可着观点的话,我们应该先把这样的一个衡量进展的方式给明确做出来,比如说通过各种比较完备的evaluation各种完备的评测,把这个问题给解决,然后再去讨论说我们现在的模型离达到我们想象的目标还剩多少。
【主持人】总体来说你们觉得这个模型的进展,它接下来会是就一路这样斜线上去就可以这样进展了,还是它还是会有一个平台期出现?
【嘉宾】我跟猜测你还是会有一个平台期的出现。就是有平台期,其实有平台期也意味着有突破,对吧?你有一个突破可能你就上一个台阶。但这个突破不见得说是大家都会想象那种特别巨大的范式性突破,我觉得可能更多是在选择执行层面,把一些问题有些突破之后它就会在这个平台期有一个提升。其实说实话,个人觉得就是最近半年都没有什么很本质的平台性突破,它只是在一个平台上有做得更高一点这样。
【主持人】对,当然确实更高一点,但也普通用户的体验已经很不一样了。OK,今天非常感谢陈阳还有志远做客晚点聊,分享了对K3技术报告的一些解读。然后我们也从K3的一些改进,比如说它的线性融合的注意力、tension residuals等等,然后延展聊了最近这些领域相关的一些进展,包括这些进展是为了解决什么问题。
【主持人】以及接下来可能会有怎么样的影响,我们也讨论了K3现在在全球或者说在美国的科技圈引起的这种开源的辩论。那今天的节目就到这里,各位拜拜。
【嘉宾】拜拜。
【口播】本期LateTalk呈现推荐晚点聊几个相关的往期节目。163期是我们这次反复提到的对DBSC v4的解读,其实这两期节目的结构挺相似的,这是因为现在开源大模型的技术报告的结构本身就有一定的共通性,会有几个绕不开的模块。首先是架构层的注意力机制,这是大语言模型里非常关键的一部分。这次陈阳也说Attention机制就是我们AI领域研究的忒修斯之船,忒修斯之船的本意是关于事物同一性的哲学比喻:如果一艘船的所有部件逐步被替换,直到没有原始材料被保留,那它还是原来的那艘船吗?其实我们现在对Transformer的改造,我们试遍所有配方的方式就有点类似于忒修斯之船更换零部件,而这意味着Transformer这个大的方向继续往下可能还有很多改进的空间。
【口播】另一个绕不开的是层与层之间的信息连接方式。在v4里我们讨论了MoD,它是怎么从字节最开始提的MHC改进而来的;在K3里我们讨论的是Attention Residuals。Kimi今年春天提出的这个方案本身也是受到了MHC的一些启发。同时我也推荐过往多期节目里我们讨论过的注意力机制。
【口播】一是第103期用Attention重启大模型优化史,这是在2025年2月录制的,它特别好的一点是对非从业者相对友好。两位清华当时在读的博士生萧达驹和傅天宇深入浅出地串讲了Attention机制诞生的过程、RNN版本的瓶颈、它的改进历史和背后的计算机与深度学习思想脉络。简单来说注意力的改进一直是在服务于上下文的不断拓展,大家追求的是希望上下文越来越长时,计算和存储的开销不会爆炸,也就是一方面要提升效率,但同时又不降低性能。
【口播】然后是104期,与当时Minimax的高级研发总监钟怡然聊线性注意力方向的改进。这也是我们K3这一期提到的Minimax在M1,就是2025年年初的一个模型上,就大胆地使用了线性注意力的这件事。这也是业界第一个在这么大规模的模型上用线性注意力的尝试。
【口播】相关那一期是去年底发布的143期节目,这次是和Deltanet的核心作者杨松林来聊线性注意力的优化。当时松林是在博士的最后一年,他现在已经加入了Moonshot。KDA里的D就是Delta的意思。那这期的背景是2024年的9月和10月,阿里和Kimi都发布了和Deltanet相关的注意力改进成果。Kimi当时用在Kimi K0模型上的注意力改进,就是现在K3里用的KDA。这期我们也聊到了,KDA是从当初Kimi K0这样一个38B的小模型,scale到了现在3T的规模。这是一个挺具体形象的例子,它展现了现在的模型研发中是怎么一步步从小规模的实验再往上scale的历程。期待下一次的技术解读,可以在我们关于AI的意义网络中再点亮新的一点。
【口播】本期节目就到这里,感谢收听。如果你对今天聊的话题有观察、好奇或疑问,欢迎在评论区分享想法,这也会成为我们节目的一部分,让整个讨论更完整。你也可以把我们的节目分享给对这个话题感兴趣的朋友,推荐更多你想听的主题和嘉宾。你可以从小宇宙、苹果Podcast等渠道关注晚点聊LateTalk,也欢迎关注我们的公众号晚点LatePost,下期再见。