人工智能、大语言模型、注意力机制·

长文本的秘密武器:MoBA 如何改变游戏规则

深入剖析 Kimi 开源的 MoBA 框架,探索其如何以稀疏块注意力革新长文本处理,并与 DeepSeek 的 NSA 对比,揭示二者的独特价值与未来潜力

如果你让一个语言模型去消化几十万甚至上百万字的文本,你会发现一件事:传统的注意力机制很快就喘不过气。Transformer 的全注意力是个了不起的发明,它让模型能看到每个词和其他词的联系。可一旦序列变长,计算成本就像脱缰的野马,以平方级别飙升。从分析历史数据到推导复杂结论,长文本能力已经成了大语言模型的根基。问题在于,性能和效率很难兼得。研究者们为此绞尽脑汁,试图找到一条出路。

2025 年初,Kimi 团队开源了 Mixture of Block Attention,简称 MoBA。这个方案读起来简单,却像一束光,照亮了长文本处理的迷雾。与此同时,DeepSeek 推出了 Non-uniform Sparse Attention,简称 NSA,用另一种视角切入。这两个方法都想破解同一个难题,但路径截然不同。MoBA 像一件精心打磨的基础工具,追求简洁与普适。NSA 更像一件定制的艺术品,注重语义与精准。我想聊聊 MoBA 的本质,为什么它能管用,以及它和 NSA 放在一起,能告诉我们什么。

MoBA:专注才能看见更多

MoBA 的核心思路不复杂。上下文太长怎么办?把它分成块,只挑最重要的几块来看。Kimi 的团队花了三次迭代才把这个想法淬炼成型。最初的 MoBA v0.5 用的是串行双层注意力,还加了跨注意力,想通过分布式上下文并行提效。可这设计过于繁复,额外参数让它难以融入已有模型的持续训练。到了 v1,他们转向单层稀疏注意力,用 Online Softmax 解决输出合并的问题,但注意力池的负载不均还是个麻烦。最终的 v2 回归单机稀疏注意力,去掉上下文并行,搭配部分全注意力层,才真正站稳。这过程让我想到,真正的突破往往不是叠加更多,而是剔除冗余。

它是怎么工作的?想象你有一个长度为 N 的序列,MoBA 把它分成 n 个块,每块大小是 N 除以 n。每个查询 token 会通过一个门控机制,从这 n 个块中选出 k 个最相关的来计算注意力。选择靠什么?查询和块内键的均值池化内积,算出一个亲和得分,取最高的前 k 个。这机制的核心是赋予模型自主权,不用滑动窗口那种刻板规则去限制它。结果,计算复杂度从平方级别降到接近线性。更妙的是,它保留了灵活性。如果稀疏度设为零,也就是全选所有块,它就变成了全注意力,像个开关,切换自如。

实验数据很能说明问题。以 Llama-8B-1M-MoBA 为例,它在 100 万 token 的“针在干草堆”测试中表现稳定,前向传播比全注意力快 6.5 倍。到了 1000 万 token,加速比跃升到 16 倍。这得益于块状稀疏设计和 FlashAttention 的优化。性能如何?也好得惊人。在语言模型损失和下游任务基准上,比如 RULER 和 LongBench,它几乎跟全注意力不相上下。拿 128K 上下文的 RULER 测试来说,MoBA 得分 0.7818,全注意力是 0.7849。这点细微差别表明,稀疏并不意味着妥协。MoBA 的第一作者 Enzhe Lu 在知乎上分享了研发历程,他提到团队一度陷入复杂结构的泥潭,后来才明白“少结构化”是解药。这让我反思,我们是不是太执着于让模型看清每一角落?也许专注关键,才是正道。

NSA:语义驱动的另一种解法

DeepSeek 的 NSA 选择了另一条路。MoBA 均匀划分上下文,NSA 却认为这种平等对待不够聪明。它追求非均匀性,根据语义的重要程度动态分配注意力。细节尚未完全公开,但它的理念很清晰:文本里有些部分天生比其他部分更有分量。比如长文档的引言和结论往往承载核心信息,NSA 会把资源倾斜到这些地方。这种语义驱动的稀疏性,让它在总结或问答任务中展现独特优势,像一个敏锐的读者,直击要害。

MoBA 和 NSA 的差异很鲜明。MoBA 用均匀块和 top-k 选择,追求简洁与通用。NSA 用非均匀分布,强调语义的精准。MoBA 开源透明,代码和实验数据一览无余,谁都能上手复现。NSA 闭源,细节藏在幕后,社区只能揣测。效率上,MoBA 的块状设计带来稳定的加速,NSA 的动态调整可能在某些场景更节省资源,但如果语义分布均匀,它可能退回全注意力的老路。性能上,两者都在长上下文基准中表现优异。不过 NSA 的语义聚焦,或许在推理密集任务中略胜一筹。

两者的未来:碰撞还是融合?

MoBA 和 NSA 让我看到两种不同的哲学。MoBA 是极简派,像一个基础工具,力求适配所有场景。NSA 是精准派,像一件定制作品,专为特定任务而生。MoBA 的开源姿态和详尽实验,像一份公开的礼物,研究者和开发者都能从中受益。NSA 守住技术壁垒,但它的非均匀思路可能点燃下一代设计的火花。我怀疑这两者未必是对立的。如果 MoBA 的块状框架融入 NSA 的语义自适应,会不会催生更强的混合模型?再放眼未来,多模态任务,比如视频和图像处理,对长上下文的需求会更迫切。MoBA 的块选择和 NSA 的动态分配,或许能在更高维度交汇出新的可能。

为什么这很重要

长文本处理是通往通用智能的关键一步。MoBA 和 NSA 都在告诉我,稀疏注意力不是权宜之计,而是未来的方向。MoBA 用极简设计和卓越效率证明,你可以在不牺牲性能的前提下大幅降成本。NSA 用非均匀视角暗示,如果能洞悉语义,优化还能更进一步。这让我思考,我们在构建模型时,究竟在追求什么?是面面俱到的信息覆盖,还是抓住真正重要的东西?我更倾向于后者。毕竟,人类阅读时,也不会逐字死磕,而是挑重点领悟。

写在最后

MoBA 和 NSA 是长文本时代的破局者。MoBA 的开源代码和实验,像当年的 Transformer 论文,可能成为新的起点。NSA 的独特思路虽然藏得深,但它开启的可能性让人无法忽视。如果你是开发者,MoBA 值得一试,它已经摆在那儿,等你动手。如果你是研究者,NSA 或许能激发你的灵感。无论如何,这两者都在传递一个信号:有时候,少关注一些,反而能洞悉更多。通用智能的征途漫漫,但 MoBA 和 NSA 已然点亮了一片星空。


© 2025 智人飞扬