收藏
0
0
分享
举报
·1 小时前发布·19次阅读

百度开源了个还不会聊天的模型

独立开发商业增长付费用户

十一月五日,百度把文心 5.5 Flash Base 的权重放了出来。

280B 总参数,每 token 激活 14B,33.5 万亿 token 从零预训练。

这些数字很多地方都能看到。

有一处不太一样。这个模型没做过任何后训练。

它现在只会接着写

权重取在预训练结束那一刻,mid-training 和后训练一步都没走。百度自己在博客里写,经过后训练的版本随后会来。

所以现在放出来的这个东西,读完了 33.5 万亿 token,但没学过怎么跟人对话。

你问它天气怎么样,它会顺着你的话往下编一段。它见过太多人问天气的语料,知道这种地方接下来该出现什么样的句子。至于那段话对不对,不归它管。

这是 Base 模型的正常形态。它的用处是当起点,你在上面做领域适配、做指令微调、做强化学习,甚至塑造面向 Agent 的行为。

百度这次把话讲得挺直白,预训练结束的权重放出来,往哪走由开发者自己决定。

上一次他们开源这个量级的模型是 2025 年 6 月的文心 4.5 系列,隔了十六个月。中间的 5.0 和 5.1 都闭着。

三十七层只看摘要

这是我觉得最值得看的设计。

43 层 Transformer。只有 6 层逐个 token 看完整上下文,剩下 37 层走另一条路。

那 37 层叫 HCA,Heavily Compressed Attention。每一层把每 128 个 token 压成一条缓存记录,然后在这堆压缩记录上做注意力,再补上最近一小段没被压缩的原文。

它并没有漏看。整条序列都过了一遍,只是看得粗。

好处在缓存上。128 倍的压缩比,那 37 层的 KV 缓存几乎不占地方。

省下来的预算全给了那 6 层。这 6 层用 MLA,每个 token 都单独留着,但核心注意力只在打分最高的 top-k 个位置上算,所以单次查询的开销不跟着上下文长度往上涨。

头维度也按层分了。便宜的 HCA 层用 512 维宽头,贵的 MLA 层用 256 维窄头。官方博客里写,在差不多的 KV 缓存预算下,HCA 配 MLA 比配 CSA 效果更好。

这个取舍够狠。接近九成的层都在读摘要。

官方架构图,蓝色那几层是逐个 token 看的 MLA,绿色是压缩 128 倍的 HCA

分数没掉

按理说这么压该掉分。

我对着它自己的评测表数了一遍,30 个基准里 24 个第一。

MMLU 93.3。同一个流程跑出来的 DeepSeek-V4-Flash-Base 是 89.4,Hy3-preview-Base 87.5,MiMo-V2.5-Base 87.6。

MMLU-Pro 的差距更大,78.4 对 69.2、66.9、65.7。

代码那边,HumanEval+ 82.3,对 69.5、78.0、74.4。

长上下文六个基准它赢了四个。LongBench-v2 拿到 48.7,DeepSeek 是 44.5。

输的地方也有。HELMET-Rerank 56.2,DeepSeek 60.0。InfiniteBench 46.5,DeepSeek 48.0。

还有一条我觉得挺有意思。中文事实问答 ChineseSimpleQA,它拿 73.0,输给了 DeepSeek 的 75.3。中国公司做的模型,中文知识这块没赢下来。

官方放出的七类评测对照,蓝色是文心 5.5 Flash Base

路由器不止一个

MoE 那部分有个细节值得说。

常规做法是一个路由器打分,取 top-k。百度说他们发现单个路由器的分数跟专家实际有没有用,相关性很弱,中间层和深层尤其明显。

更麻烦的是,被 top-k 挡在外面的专家拿不到这个 token 的梯度,路由器也就收不到选错了的信号。错的判断会自己强化自己。

他们的办法是用好几个独立初始化的路由器一起打分。

这样一来,某个专家可以因为一个路由器强烈支持它被选中,也可以因为几个路由器同时看好它被选中。单个路由器的偏差不再决定结果。激活的专家数量、专家算力、通信量一样没变。

MoE 每层 512 个路由专家,取 top-10,外加 1 个共享专家。专家在半宽的 2048 维潜空间里跑,调度和合并的流量减了一半。

不用额外加模块

多 token 预测这块,业界的常规做法是挂一个 MTP 模块在旁边,让主干之外的东西去预测后面的词。

百度换了个做法,叫 ECHO。它把主干自己的最后一层复用来预测未来的 token,不新增模块。

这样未来 token 的损失直接训练的就是产生下一个 token 的那批参数。主干被逼着往前看。

顺带还有一件事。那层复用的东西在推理时能当投机解码的草稿模型用。虽然只训了单步,多步草稿的接受率比专门训的 MTP 模块还高。

训练那边也动了

模型结构之外,训练这一侧还有几件事。

词表是新的 BPE,20 万出头。数字从右往左三位一组切,1,234,567 会被切成 1、234、567 三段,而不是按字符流从左往右切。这样不同长度的数字,同一位数的片段能对上。它做算术、读带数字的文本会稳一些。

优化器用的是 Muon。稠密参数的同步本来要绕过整个集群的环,数据在很多条跨节点链路上以小块跑,链路用不满,延迟和抖动还随集群规模往上涨。他们把稠密参数的同步挪到 MoE 参数那条路上,两条合成一次集合通信。包变大了,传输模式也更规整。

还有一个注意力算子叫 FlashMask-4,专门处理大 head 维度。官方给的数据是在 SM100 上,前向最多快 175%,反向最多快 74%。

这些都不在发布稿的显眼位置。但 33.5 万亿 token 能不能按计划训完,靠的就是这些。

许可证划了三档

这条容易被略过,但对要落地的人比跑分重要。

文心 4.5 那会儿用的是 Apache 2.0。这次换成一份自定义协议,ERNIE 5.5 Flash Base Model License v1.0。

我把它原文读了一遍,划成三档。

非商业用途免费,不用发通知,营收门槛也不适用。

商业用途,相关产品服务的年营收在 5000 万美元以下,含正好 5000 万,还是免费。但要署名,还要往 Baidu_ERNIE@baidu.com 发一次使用通知。同一个运营方、同一个模型版本,发一次就够。

超过 5000 万美元,就得先拿到百度单独的书面商业授权才能开始用。用着用着营收涨过线了,要提前联系拿授权。从越过线那一刻起,没拿到授权的商业使用必须停。

还有一条,协议里对 Territory 的定义,是全球除去欧盟、英国和韩国。授权只在这个范围里给。

营收达到或超过 5000 万美元的运营方,百度每年最多可以要求核查一次,要你出书面合规声明。

最后

这篇写下来,我最想留住的是那个比例。

43 层里 37 层只看摘要,结果在 30 个基准里还能拿 24 个第一。

以前大家比谁的参数多、谁的数据多。现在还能抠的地方,是每一层该花多少算力去看多细的历史。把便宜的层做便宜,把省下的预算堆到那几层必须仔细看的地方。

这一步省下来的,正好是长文本和 Agent 场景里最贵的那部分开销。

至于模型本身,它现在还是个半成品。会接着你写,还不会回答你。百度的后训练版本还没来。

讨论 (0)

0/250

    目录

    关于作者

    心得体会

    AI产品运营 / 文科生AI独立开发者 / AI Agent应用落地/AI native&bulider 公众号:社交名流UCL的AI小铺

    Solo 独立开发者社区support@solo.xin
    关于社区成长规则SOLO.cc隐私政策用户协议商务合作友情链接订阅更新(RSS)投稿赞助

    © 2023 SOLO · 为独立开发者而生