来源:市场资讯

(来源:巴芒时间)

本期(第三期)内容聚焦在小米Mimo大模型的架构、训练及团队管理。知识比较硬核,如果没有LLM基础的同学可能看不太懂,(有一部分内容我也没搞明白,但是不能等准备好了再做菜,我还是先写进来了,后续同步更新迭代吧)。包括如下几点:

  1. 大模型架构

    为什么post train 的投入会越来越大?为什么需要使用MTP?为什么长上下文在实际推理中如此难以支持?Full Attention与Sliding Window Attention的配比……针对此类问题,罗福莉在专访中给出了答案:

(1)在Agent时代,很多顶尖团队在预训练与后训练的卡的分布上趋于1:1;

(2)需要MTP主要还是从推理性能考量。MTP在小米的模型训练中是因为计算冗余才提出的(有些后验)。

(3)长上下文训练并不困难,困难在于1M上下文的推理。1M 上下文的训练虽资源密集,但可通过大规模分布式系统扩展;而推理受限于单实例资源、延迟和成本约束,难以规模化部署。很多模型说自己支持1M上下文,但是支持≠高效使用。

2.大模型训练。

(1)训练大模型(1T参数)是一个全方位的挑战。

训练过程中间需要有很严密的监控系统,要去洞察模型参数内部到底发生了什么样的变化。比如说至少要去看看Expert负载怎么样,每一层参数的输入和输出怎么样,激活值有没有变得很异常。这些是训练发生后应该去看的事情,但可能不是所有团队会去看这么细。

(2)大模型训练是一个玄学(很困难的工程),一个loss strike你甚至要花1~2周的时间去找原因,甚至需要你把整个训练的GPU都给翻一遍,可能都没能找出问题。罗福莉文中说到,她们实在找不到问题的时候,只能通过梯度裁剪、归一化的方式来解决问题。

以下是访谈对话内容。

全模态模型,一次悄无声息的伏击

Q: 我们来接着聊聊模型。上次我们聊天其实是在你们的V2 Flash发了之后,三个新模型Pro、Omni和TTS,并且你把它称之为一次"悄无声息的伏击"。为什么这么说呀?为什么是悄无声息的,又为什么是伏击?

A: 首先,这三个模型在Agent的场景下表现能力提升这么快,或是我们能这么快去追上,在复杂的Agent的架构里边它表现这么稳定,是超我们预期的。不是我们计划得非常好,而是一下大家觉醒了、爆发了。就是在这样一个context,所以它确实是一个很安静的。我说安静就是因为外部不知道,我们自己内部也是快速发生了一个事情。

Q: 你们内部是怎么觉醒的?

A: 我们其实在一年前去做这么多模态的时候,更多的角度还是说如果真正产生智能,应该这个智能是全方位的、多方面的,所以去做了对多模态的一个理解。以及最终产生智能、最终要产生价值,一定是要有交互的,所以要去做语音的生成。但是,一年前做这些东西的时候它还不是很明朗,你还是觉得你是在做一个单一的模型,你在做一个多模态理解模型,你在做一个语音的生成模型。然后你没有觉得这些东西能够很好的被组织和编排到一起。

Q: 那后来是怎么打通的?

A: 当我看到OpenClaw的时候,我自己一下就想到这样一个画面:这些模型在各自什么样的环节发挥什么样的作用,它们能够怎么被有效编排,以及它会产生一个什么样大的生态的价值,一下就在我的脑子里边全部给打通了。所以我们快速的让所有方向都要面临到这个范式去做后训练的针对性设计,就是这个原因。

Q: 现在有什么样的一些know how吗?怎么样编排是更好的编排?

A: 首先从任务类型来说,比如说最简单的绝大部分的任务类型,其实是可以只用语言模型来做的。 但是就去用另外一个更精巧的模型让他来做得更好,类似于这样的。而且因为这三个模型是同一个生态训的,所以你能知道他们的background,你能知道我知道的知识他也是知道的。所以你能放心地把你觉得他能完成的任务交给他做,你不会担心他不知道你有的背景知识,这个背景知识是来自于训练的。

Q: 目前三个模型在同一个AGI框架里边去释放潜力,跟你去组装其他模型的释放出来的潜力的差距是什么样的?

A: 是很微弱的,目前是很微弱的。但我认为未来不会,因为未来它是一个效果、成本、效率三者的一个乘积。未来你不会觉得,但是目前你会觉得它是微弱的。

Q: 这三个模型你们在内部是什么样的关系?

A: 我觉得在内部全方面去替代人的生活和工作,方方面面,所以你就必须要具备这些能力。Pro是在做理解和认知,做更复杂的调度;Omni是在做感知;TTS是在做音频声音的输出,它是一种表达。 这三个加起来是一种类人的智能吗?反正它把人有的智能的表象、输入和输出给建模了。

Q: 但是它有没有人的各个感官之间的协同那么好?为什么现在还没有做到?

A: 但这也不纯粹是模型上没有做到,还有就是框架上也没有做到。比如说现在OpenAI它对于视频的理解和建模是非常差的,它整套架构。因为开源社区没有一套对于音视频联合理解的非常好的开源模型的出现,并且也没有这样的模型出现,所以它在框架上的发展是滞后的。所以它现在对视频的理解会回退到去理解图,甚至到最终会回退到理解Caption上,就回退到一个成本的智能水平上。

Q: 这也是为什么要做开源的原因?

A: 对,就是因为只有开源界看到一个更强的视频理解、声音生成的这样的一些模型之后,它对应的框架才会发生改变。只有框架这一层,以及模型这个智能的中枢这一层,这两层很好的交融的时候,那么可能才会达到类人的智能。

Q: Flash是去年(2025年)12月16号发布的,当时做Flash的时候你们的核心定位是什么?这个被大家认为是你在小米的第一个工作、第一个作品。

A: 其实Flash跟Pro基本上是同期训练的,因为它们的模型结构非常近似。我们在设计v2这一系列不管是Flash还是Pro的时候,模型架构本身有一个非常关键的目标:我们要For Long Context的效率来设计模型结构。 当时隐隐约约预感到Agent的时代,Context是非常重要的,有预感到Long Context会产生智能的。我们没有预想到会不会是OpenAI这种形式,但是已经预感到Long Context一定是一个非常重要的问题。Long Context的效果以及最关键的推理效率——就是你的成本和速度要很快——就是我们这一代模型结构必须要去追求的核心命题。

因为成本够低、速度够快,你才有可能把100兆用起来。其实现在所有的模型结构都能训到100兆,但为啥不把这个模型提供100兆的推理?除了效果一般以外,更多是出于对成本的考量,100兆太贵了,贵到你根本就不想用它。所以当时就围绕着这样一个核心目标去设计,就是Hybrid Attention的结构。

罗福莉的这个“隐隐约约”,我认为她们这个节奏和认知还是偏慢了一些,应该更早、更快地认识到这个问题。

MLA(Multi-Head Latent Attention)的模型架构

Q: 当时另外一个选择是用MLA吗?

A: 对,包括现在我觉得同期跟我们开始训练的应该是阶跃星辰跟Kimi,Kimi更早一些,K2更早一些。其实他们都选择了MLA,DeepSeek也是。MLA对于Chat的时代来说确实是一个非常优秀的模型结构,甚至对于长文本来说也算是一个还不错的模型结构,因为它大量减少了KV Cache。 对于长文本来说,KV Cache很宝贵。但是它有一个我认为不那么适合Agent这个范式的最根本性的要点:MLA在设计之初是为了达到很好的访存跟计算的比例,在当时的H系列芯片上为了实现更高的算力利用率、打破访存瓶颈,是在这样一个架构下设计的。在这个架构下设计出来的模型,没有任何可发挥的空间。我指的可发挥的空间是指:假设我们认为KV Cache是重要的,并且推理速度也是重要的,那能不能用一些让它推理加速的方式?比如说最简单的投机解码MTP就是一种方式,让它实际推理的时候加速很多倍。

MLA是DeepSeek提出来的一种优化Attention计算的方法。这个方法很重要,如果有需要面试LLM岗位的同学,这个是必须要回的哦。

Q: 为什么MTP(Multi-Token Prediction)在当前的模型架构中不太适用?

A: 因为MHA(Multi-Head Attention)已经达到一个L-Bound和MMA-Bound的非常完美的临界点。如果用MTP的话,它会卡在计算Bound上。所以现在你看所有MMA的模型结构,不管是GPT-4也好,Kimi也好,我猜测应该都没有上MTP,因为它上了之后就被计算Bound卡住了,很不划算,模型都会慢一些。

知识盲区了,我需要补课。

Mimo-Flash/Pro 模型的效率

Q: 你们第一代Flash和Pro在TPS(Tokens Per Second)上能做到什么水平?

A: 我们第一代Flash能做到100到150TPS,Pro现在也能做到60到100,100 TPS肯定会更贵一些。所以大家用MIMO的不管是Flash还是Pro,一个感觉是"哇好快",这就是这个结构尤其是针对Non-Attention Efficiency的结构带来的优势。

Q: 成本方面MIMO有什么优势?

A: 成本也够低,因为Hybrid Attention,包括在Pro这一代上我们给它拉到一个更极致的Hybrid比例,它的Full Attention层跟Sliding Window层的比例达到了7比1,所以它更省KV Cache。

Q: 这一代结构是如何平衡长上下文和推理速度的?

A: 我们基本上是在这一代结构上实现了:通过Sliding Window去减少KV Cache,让它在长文本上效果更能够支持更长的长上下文;同时通过MTP,把Attention节省下来的算力,用MTP给它填上。这样它能达到在实际推理的时候,访存跟计算的一个很好的平衡,同时又兼顾了长上下文的成本以及推理速度。

MTP(multi-token predict)

Q: 当时为什么会选择MTP?

A: MTP的选择还蛮后验的。是我们这个模型已经快训到中后期了,我们开始为它去设计推理方案。在我们自己的那一代推理卡上去实际设计推理的并行方案的时候,发现它的计算剩余实在太多太多了,我们没有想到会剩余这么多。所以就想怎么把这些剩余的计算有效利用起来,MTP太适合了。

有点儿令我意外。我之前在食堂吃饭的时候,我就在想模型在infer时,是可以同时预测多个token的,这样就可以提升infer的效率。这是一个很惯性的思考。后来搜索相关论文,发现这个idea早被研究了。所以我还是比较意外为啥说这个选择是后验的。有这么多论文,甚至我都能想到,为啥说是后验?

Q: 预训练阶段加上MTP还有什么原因?

A: 我们在预训练阶段加上MTP的原因是它确实能提升基座的能力,这个我们跟DeepSeek是一样的。我们用MTP的原因是因为我们的模型结构天然在计算上有大量的富余,这个事是我们在后边去设计推理架构的时候突然有一天悟到的。

有点儿蒙中的感觉。

Q: 为什么MTP还没有成为主流?

A: 我觉得大家太相信MLA了。MLA确实太巧妙了,在模型结构上,尤其是当没有看到long context的价值和agent这个范式的时候,MLA确实是一个非常不错的选择。

Q: 你觉得MLA未来会成为主流吗?

A: 我觉得应该不会。

Q:你觉得MTP会成为主流吗?

A:看大家的下一代模型结构是什么样,我觉得现在模型结构设计,一个就是你真的在预训练阶段就想明白你后边推理的场景是什么。比如说你要在什么卡上推,你要在多长的上下文上去推,你的推理的并行方式是什么,你可能连这个都要想明白。那么你就可以设计一个针对这个场景、这个推理方式和这一款芯片的完美的结构,然后去训这个结构,那么它的效率成本是最优的。MTP是在这样的context情况下被设计出来的。

Q: MLA在什么样的context上建立起来?

A: 这个context是建立在两个前提基础上的。

第一个前提是post-train是不重要的,或者post-train的时间是很短的,你能一个月就把post-train做完,你大部分时间在做pre-train,所以你只需要pre-train for这个推理本身就行了。

第二个是你的推理卡你永远就是用那么一个两个,甚至那一个就是最好的。

当时现在这个背景是发生了重大变化。

Q: 但现在这个情况发生了什么变化?

A: 这个事在当下发生了巨大变化。因为现在是post-train的周期在拉长,你在一代基础上能做到post-train的上限是远远被激发出来的。

Q:这是什么时候发生的?

A:就是agent这个范式带来的。你有一个更高效的context,其实context越长它也是产生智能的方式,更多的context、理解更多context的时候,那么你的潜力就越高。 这个跟原来chat的方式是完全不一样的。原来chat的方式它的context很短,它是人输入的,所以它纯靠这个预训练。但是agent这个方式它就很吃post-train,反正你理解为就是我们在post-train上要去投入的算力会可能跟pre-train是相当的,所以这个时间周期在拉长。

Q: 关于模型结构设计,你认为在快速变化的技术环境中,传统的精细设计方法是否还有效?

A: 年去假定的非常多的东西它可能是失效的。你假定要在什么时候上卡图,你假定你要在什么场景下达到更优的效果,它全是失效的。因为有可能当你做了post train了半年或一年过后,你会发现那些场景全变了。可能以前大家觉得128K就够了,过几个月大家觉得我需要十兆上下文,就类似这样的逻辑。所以如果还是这样去做模型结构,它可能会失去一定的灵巧性。

架构的精细设计需要与下游场景紧密相连

Q: 那什么情况下精细设计还是可行的?

A: 如果说这个团队的post-train的效率足够跟得上,它的认知是能够辅助pre-train去做架构的正确判断的话,那么有可能这种模式还是work的。就是它设计一个精细的结构,想清楚推理卡类型,想清楚场景,那么它应该还是work的。

Q: 另一种做结构的方式是什么?

A: 还有一种做结构的方式是另外一种,就是我在结构上更简洁一些,然后留有更多的富余度来去做后续在不同场景的一个适应和增强。

Q: 能举个例子吗?

A: 比如说我觉得Hybrid Attention它就是一个更简洁的结构。它的简洁性体现在你可以靠MTP去做,去把它的这个算力给它充分利用,甚至后续可以微调Sparse/Full的比例。在一个简洁的架构上,Agent的发挥空间在后训练上其实更大。

Q:成本下降是MTP的优势吗?

A:MTP是如果它的命中率非常高的话,那么它是可以带来成本的下降的。相对于它在更短的时间内吐出了更多token,所以它把GPU的利用率打得更高,所以它本身上是在降低单token的生成的成本。

Q: MTP会带来幻觉问题吗?

A: 不会。MTP它是因为它是会被verify的,只有你预测的准我才会采了你当前token的结果,所以它没有任何幻觉。

Q: 刚才我们重点聊的是Flash上面用的MTP,那你们还做了一些选择,就比如说混合注意力机制,你们当时选的是五层滑动窗口和全局注意力机制,这个你们这次其实又变了?

A: 应该说是这样子。可能我们大量的实验的一个大致结论是说:Full Attention它的层数很重要,但是它的系数比反而可以有空间。所以你在更大的模型上,你的层数更多的时候,你可以保证Full Attention的层数总数不变,但是你增加更多的Sliding Window Attention的层数就可以了。

系数比是指:我理解是Full Attention的层数占总层数(或者是Sliding)的比例。

Q: 层数比系数比更重要?

A: 可能层数比系数比更重要,或者说在更大的参数的规模、更大的Attention Head的时候,可能我们也可以做到更稀疏的一个比例。导致我们可以在更大的模型上做更高的稀疏比,就是Full跟Sliding的稀疏比。然后我们最近在做很多Sparse的研究也是发现,更大的模型它能够吃更大的Attention Sparsity的比例。更大的模型你可以更稀疏,但你小的模型你太稀疏了模型(效果就会下降)。太小的模型如果太稀疏了,效果drop会非常严重。

Q: 我觉得Flash还蛮有一点小米早期的风格,因为就是求极致性价比嘛,这个是怎么定的呀?然后因为你们当时API的定价是输入是百万token 1.01美金,然后输出是每百万token 0.3美金,在当时看来肯定是最低的价格、最高的速度,你觉得当时是做对了什么达到这个效果?

A: 基本上就是把该做的都做了,就是架构有一个 long-context 很invision的架构,再加MTP推更加速,再把infra我觉得最基础的基建做好,基本上这个架构就能做到。

TODO:这个里面的内容需要check。

A: 我觉得在预训练时代,你根据模型的框架优势来定价确实是合理的,因为你的框架很强,然后最终使用者、最终用户能感受到其实纯粹是因为你们的模型很强,所以我就按照你的模型结构的方式来进行定价,我觉得是合理的。但是当我们进入到后训练的范式,然后后训练的方式是除了这个模型结构本身带来的优势以外,还看你的context好不好,以及你这个模型对这个context的理解能力好不好,我觉得它的定价逻辑应该发生变化。

就不应该是根据我最终的这个推理成本来定价,而应该是根据我这个模型的最终产生的价值来进行定价。 那么这个价值除了模型本身的架构的优势以外,还有就是模型它在后续链上做得足够好,所以它能更好去理解这个链接的框架,对,这也是它的定价的一个溢价的空间在的一个地方。所以我们后边,MiMo Pro其实抛弃了这样一个定价逻辑。

Q: 我在你们那个Tech Blog里面看到,就是Flash你们是从一开始就想Bet Reasoning、Coding和Agentic吗?

A: 我觉得做结构的时候只是Bet一个点,就只是Bet long-context,一定要做的建模效果够好,然后效率够高、推理效率够高,只是Bet这个点,其他都没有想。那时候我们想不到更多目标的。

Q: 那时是想不到更多的目标吗?

A: 我也不认为一个架构本身的目标应该太过复杂。因为架构目标太过复杂,就是你的限制条件太多。那么如果这些限制条件最后你的full structure要做很久,做到这些限制条件它都变成很伪的限制条件,那你这个结构不就白做了吗?所以我们没有对最开始的模型结构给强加更多的目标,我认为加更多目标是不合理的。

Q: Flash帮我们验证了什么?

A:我们整个infra数据是没有问题的,但是我们并没有说先训Flash再训Pro,但Flash是一个相对小的工程,比较早起,也不早起。

内容需要review。

Q: 你们模型训练的时间安排是怎样的?

A: 我们基本上大部分的模型训练都是在去年下半年进行的,所以你们看到的时候也就是我……。

Q: 你对Pro的预期是什么样的?

A: 当然是同一时间,就是两个模型同步训练。我们相信这一代的架构是没问题的,只是我们在训Pro的过程中去解决了非常多的训练数值不稳定性问题。 这个是训练1T参数量级的模型通常会遇到的很struggle的问题。

模型训练是玄学,我甚至怀疑太阳黑子影响了模型训练

Q: 能具体说说训练大模型时遇到的数值不稳定性问题吗?

A: 你要考虑怎么去处理某些expert的分布变得很极端,然后像天花板一样,一会儿一批token打过去,一会儿又一批token又打到另外一个expert上,就很危险。这些信号很危险,会导致训练出现:loss会出现很多spike,负载会典型的会很不均衡,expert的负载会很不均衡。在训练更大的模型上就会花很多时间去解决这样的一个问题。

所以看起来是同步训练,Pro训练进度就会比标准版慢一点。

因为你要解决这些让你训练不稳定性的要素。数值不稳定只是一个表象而已,这些要素就会非常锻炼一个团队的infra和算法联合debug的能力。甚至有时候你怀疑到是不是哪个卡有问题,最后如果发现所有的卡都排查了没有问题,你会怀疑是不是今天太阳黑子的报复,你会回到一些很玄学的问题上。你要从很表层然后查到很底层的因素。

Q: 你刚才也提到1T参数的模型可能是未来竞争的一个入场券,是这样吗?

A: 是agent的,你要做到接近Claude的4.6 ops的水平的这样一个入场券。

TODO:所以智谱和小米的水平其实是已经拿到了入场券?这里需要一个Artificial Intelligence 的图。

Q: 你当时立项的时候还没有这个模型对吧?为什么你当时就已经觉得一定要是1T参数的?

A: 首先我训过DeepSeek V3这么大(600~700B)的模型,你不会再想去训一个同样的模型,肯定还是继续往下一步scaling。所以1T参数是一个在我们当时已有卡的数量情况下的一个比较极限的区间。

Q: 具体是多少卡?

A: 几千卡。反正训这个模型是几千卡,但实际上我们要投入大量的卡去做研究。所以不是说我们拥有几千张卡就足以去做这个事情。实际研究用途的卡是训练卡的几倍。

Q: 在卡的资源和储备上,目前看来瓶颈在哪里?

A: 尤其在agent的范式下,卡的数量反而变成一个非常重要的瓶颈。 因为idea的诞生和动手把它代码写出来太快了。然后你现在卡在什么呢?卡在卡上。因为GPU它的效率就在那,所以你要为了去验证idea你去跑实验,然后你要并行的起很多实验,所以就卡在卡的瓶颈上。现在卡反而变成一个更关键的一个制约项。当然这只是针对训练,For推理的话,卡更是一个更关键因素。推理卡的需求比训练会更高很多。

Q: 如何评估大模型的推理效果?是看用户数还是看高价值场景消耗的token数?

A: 这个因人而异,需要把推理展开来看。如果看研究、预训练和post-training的卡的比例,我觉得一个非常合理的比例可能是3比1比1。

Q:预训练卡和后训练卡的比例是多少?

A:在Agent时代,应该有很多团队都是1比1了,顶尖的团队应该都是1比1。

训练大模型有哪些挑战?

Q: 训练一个1T参数模型,挑战是什么?

A: 我觉得是全方位的挑战。数据上反而不是非常大的挑战,因为更大模型(貌似)对于更脏的数据的容忍程度更高,但我不确定,因为我们是同一批数据训练,所以我不确定。

言下之意,MIMO的这个模型没有做过数据的消融实验。

Q: 那更主要的挑战是什么?

A: 更主要的挑战是训练特别不稳定,很多团队认为loss spike是正常的,某些数值异常值很大,直接把某些参数或者说某些Expert"打死"——就是参数更新过后,后面再也不会有Expert送到,再不会有Token送到Expert上。

Q: 这需要什么样的应对机制?

A: 中间需要有很严密的监控系统,要去洞察模型参数内部到底发生了什么样的变化。比如说至少要去看看Expert负载怎么样,每一层参数的输入和输出怎么样,激活值有没有变得很异常。这些是训练发生后应该去看的事情,但可能不是所有团队会去看这么细。

Q: 发现问题之后呢?

A: 发现问题之后,再去想到底是什么样的原因导致这样的问题。比如说有可能是稀疏比太高了,导致负二层输出跟某层的输出在数值上的差异非常大,这就会导致数值不稳定。有可能是结构的原因,也有可能纯粹就是infra-bug,比如说通信的某个算子写错了。我们最后发现甚至有可能就是某个loss上有点问题。

Q: 有什么解决方案?

A: 可能有非常多解决方案。比如说发现某一层的数值太大,要么给它clip掉,要么通过norm给它压下去。通过norm压下去肯定会对模型效果有损的。clip掉是一种方式,我们也会借鉴Kimi的QK clip的方式,当QK的某些logits非常大的时候,实在影响模型的训练稳定了,只能把它clip掉,这样至少能让训练更好进行下去。进行到一个稳态的时候,再给它放开。

Q: 这对团队有什么要求?

A: 有太多的这种临时的要去发现问题、解决问题,甚至去倒推很多可能会导致这个问题的分析路径。这些路径其实是非常考验一个团队的跨团队协作能力的。

Q: 你们属于哪一边?是大公司跨团队协作,还是小团队极致追求?

A: 我们肯定是属于小团队非常极致的类型。这样训练周期(预训练周期)会被拉长,你们怎么承担这个损失?我们认为它就是一个问题,我们就应该去解决它。因为我们没有那么清晰的一个说我要发布的目标,模型训好了我们再发。

Q: 没有公司来的压力吗?

A: 没有。

Q: 你们确实不是一个创业公司,对吧?

A: 我也不是一个创业团队,但实际上它就是个创业团队。我觉得Mimo能做成,其实都是以创业的方式在运作的,所以它才能做成。

Q: 模型对你的管理难度是不是指数性的上升?

A: 没有,管理团队的难度是一样的。应该说不太存在管理,因为大家一块去解决问题就好了。你不需要去管理这几个人,就大家我们一起来解决这个问题,每个人都有自己不同解决问题的思路,一起来解决问题。反而是这种解决问题的这种以身试法的能力是一个非常好的文化和导向。

Q: 还需要什么吗?

A: 可能还需要一个非常好的基建团队,就是你可以把卡给集群给搭起来。这个基础设施团队可能需要有那么一点有经验的人,因为没有经验的人他会出一些低级的问题。

Q: 那你们的诀窍是啥?

A: 可能是遇到问题,然后去深入排查原因去解决它。我并不认为很大的团队是优势,反而很大的团队有可能是劣势。

Q: 训这个模型过程中,你们团队状态是什么样的?

A: 原来做数学的那一群人就去做后训练的,然后做infer、做训练框架、做推理的人一块来解决训练过程当中的问题。

Q: 为什么预训练的人要去做后训练?

A: 首先后训练的一大部分原因是你需要有很好的数据直觉,这还是蛮重要的。其次它是基于个人爱好兴趣产生的,不是"你说我们这里需要人你转一下",大部分是自然而然发生的。但我确实能够预料到哪些人会做这样的一种迁移,因为很多能力特质上是很共性的,比如说对数据的直觉,比如说会从模型效果去倒推一些算法的设计。其实做数据好多时候也是在干这个事。主要原因是没那么清晰,所以大部分人会自然随着训练阶段的变化,自由地去选择下一个阶段更有想象空间的事情。

团队管理

Q: 你们现在是100人吗?

A: 现在已经到100人,但这100人是包含所有链条上的人,比如说数据采集、数据质量、Pre-Train、Inference、Post-Train,然后包含甚至我们的开发,我们需要有一些开发,还有包含我们的产品,包含我们的数据白小生,还有包含三个方向上的算法,就是语言、多模态和语音。

Q: 这100个人里边实习生的比例是很高的?

A: 对,然后有部分实习生可能是在做一些更当下不会立马反映到这一代模型结构上的事情、模型能力上的事情。所以其实真正投入到一代模型里边去迭代的人,我觉得是很少的,可能所有链条上加起来也就二三十个人,三四十个人最多,也就这么多人。

Q: 二三十个人比较均匀?

A: 对。

Q: 这里没有不同的组的划分吗?

A: 没有,没有组。

Q: 所以你一对一百差不多?

A: 对。

Q: 为什么没有组的划分?比如说为什么不分预训练组、不分后训练组?

A: 第一,如果你组划分得非常清晰和固定的话,其实是在扼杀一部分人的创造力,或者说扼杀他未来的成长空间。

第二个就是我确实也不认为做后训练的人,或者说做后训练现在的一个很重要的范式的变化是他需要具备diversity这个视野。很多做后训练的人没有这种多样性的视野,但是做预训练的人第一应该关注的事情是多样性,因为他不能往这个模型里边塞一小部分数据,他要塞多样性跟好的数据。所以其实做预训练的人去做后训练有非常大的优势,就是他会天然更在乎多样性,他就是个很好的补充。当然也有人他一直做后训练,比如他只研究小模型,所以他一直做后训练。

Q: 我们要去做下一代模型的预训练或者说后训练,可能有实际往前去推动的人,但这个人他并不对参与这个项目的人有绝对的控制权?

A: 对,就是没有职级。

Q: 没有职级?

A: 对,你可以这么认为。但小米本身是有职级的,本来我们这个团队的整个的组织结构就是完全扁平的,没有职级。

Q: 做大模型没有层级管理吗?

A: 我觉得平权本身是有价值的,平权本身有利于所有人平等地贡献自己的创造力和智慧,我觉得是有价值的。

Q: 任何层级都应该在规范和约束吗?

A: 规范和约束本身,我自己认为是压制创造力的。以及有层级过后,他就默认这个。我觉得如果一旦有这样的想法,反而不是很有利于一个创新团队的发生。

Q: 虽然你说没有管理,但实际上怎么管理呢?

A: 靠热爱驱动管理,我觉得这个很重要。我自己发现是最行之有效的方式,就去选择激发大家的热情,然后让大家围绕着自己愿意信仰的事情去自驱做事。我觉得这是我一直比较坚信的最有效的管理方式。

Q: 你有什么驱动热情的方法?

A: 让大家认识到一个新的事情,让大家去体验,其实是驱动他热情非常重要的方式。比如说OpenClaw,这是一种体验方式。

Q: 你看起来用了一个非常极端的方式,说没有100轮的对话你明天就辞职,这是一个非常极端的方式,但你的目的是体验是吗?

A: 对,我也不会追踪去考核,我第二天也不会去考核大家说OK你真的有没有用,因为我觉得那不关键。我只在乎是不是真的达到一百轮,那只是一个量词而已。

Q: 所以你还有什么用热爱驱动大家的方法?

A: 体验。其实筛选人的时候也很关键,很多人你可以从他过往的经历看出来,他到底是在以什么样的目标在做事情。

Q: 靠热爱驱动做事情的人的特质会非常特殊吗?

A: 对,你跟他聊天过程应该就能感受出来。有的人他会为了很多奇怪的目标做事情,但为了热爱做事情的人是非常明显的。

Q: 怎么明显?

A: 我没有办法说有很多量化指标,但我去跟他聊天,我能直接感受到,就是能sense。

Q: 你们在这个模型的训练有失败吗,还是一次就成功了?

A: 看怎么定义失败。比如说你训到loss直接飘了这种,那应该中途还是发生过那么几次。几次十几次我现在都不知道,反正两三次总是有的。就loss直接飞了,但是他训比如说训了几百步又回来了。

Q: 这种情况你是应该停下来解决还是应该继续往前训呢?

A: 解决。我们认为是应该要解决,就应该停下来解决这个问题。他其实就这样飙上去几百步,然后又这样下来,这我们认为应该停下来解决。

Q: 一般会停下来几天?

A: 这就不好说了,几天也有可能,一两周都有可能。最长的时候有两周。

Q: 停两周焦虑吗?

A: 不焦虑,因为我们又没有什么目标。当然了,你那么多卡,你天天做一堆实验,今天想这么去调,明天想那么去调,改了又跑,发现第二天看又这样子。或者说从晚上,反正晚上都睡不好,我经常晚上、周末想为什么loss会spike。

Q: 在模型训练过程中,没有明确时间节点但遇到卡点的时候,心态上会有崩溃或沮丧的瞬间吗?

A: 会的,虽然我们没有明确的时间节点,但还是会有很多很沮丧的瞬间。不过卡点是有限的,有时候也会觉得可能浪费了算力,在做一些无用的实验。

Q: 模型规模方面,您认为至少需要多大的参数量才能做到比较好的效果?

A: 我自己认为至少要1T(一万亿)以上才能做到,当然更关键的还是激活参数。

Q: 激活参数越大意味着什么?

A: 激活参数越大就意味着更高的推理成本,所以它就是一个trade off(权衡)。

Q: 为什么从5:1提升到了7:1的混合专家比例?

A: 我们追求一个Full Attention跟Sliding Window的稀疏比,最主要的原因还是我们希望在更大的架构里边去做更高效的long-context处理。因为更大的架构,如果Full Attention的层数变多了,总参变多,Full Attention的层数也随之变多,那么在长文的情况下,它同样会变得非常崩溃。但如果你扩大参数量的时候,Full Attention的层数没有变,那么有可能长文pro跟flash两代模型的效率是差不多的,但pro的智能水平是提升了的。

Q: 控制住效率本身有什么价值?

A: 控制住效率本身,在1T的时代也有一个更有价值的事情:既然这个更大模型它的长文效率很高,那我就可以塞更多的上下文,然后它就又更强。

Q: 对于1T的基座模型,你们的几个关键决策是什么?

A: 第一个是混合专家机制,第二个是1M的上下文窗口。

Q: 在做1M上下文窗口的时候,是否有信息丢失的情况?

A: 长上下文还是要训练的。关键问题是你从哪里搞到在1M的上下文窗口里边有那么多很稠密的监督信号,这个很难找到,或者说构造的成本非常高。

Q: 那如何解决这个问题?

A: 要站到终局的思维来看,只要你有比如说1T的token量,而且它都是1M的真正长上下文,那么你的模型1M能力肯定能训上去。只要loss一直在降低,它就是在建模、在压缩,那么它就一定能训上去。但问题的关键是你很难构造出来真正1M的context,要么成本太高,要么很难找到这样的场景。

Q: MTP是延续Flash的,有变化吗?

A: 没有什么太大变化。其实就是预训练的时候训一层,然后MeterTrain的时候再训额外更多的层。预训练训一层是为了去提升基座能力,后面Post-train去训更多层是为了推理的时候用更多层实现更好的推理加速。

历史文章概览

打开网易新闻 查看精彩图片

(1)企业分析

(2)投资心法

(3)好书分享

(4)财报详解

(5)宏观经济