一张189 GiB的Engram表,被从HBM里搬了出去,换成一个内存映射文件,卸载到SSD上跑。SemiAnalysis对DeepSeek-V4.1-Flash做的这组实测,把"模型架构围绕硬件约束做设计"这件事摆到了台面上。
Engram是什么?它在标准token嵌入的基础上,加了一层可学习的多token查找。反复出现的局部模式直接检索向量,不必再通过注意力层和前馈层重新构造一遍。这套设计天然适合参数卸载:每个token访问的几行嵌入,地址只取决于token ID,不依赖隐藏状态。
![]()
为什么能卸载
运行时可以在前几层还在计算的时候,就从主机DRAM里预取这些行。整张表可以待在HBM之外,不需要搬运整个权重矩阵。卸载把HBM腾出来给模型权重和KV缓存,理论上能支撑更大的批次或更多并发会话。
当DRAM成为下一个瓶颈时,NVMe还能再顶一层。推荐系统早就在这么干:把频繁访问或最近访问的嵌入行缓存在更快的存储里,冷行留在SSD上。
这个时间点很微妙。NVIDIA的路线图因为Rubin Ultra从1024GB大幅缩水到每芯片约200GB HBM而被迫调整,像Engram这样的架构优化,价值就显出来了。
实测里看到了什么
DeepSeek没有放出原论文里那两个训练好的Engram模型。SemiAnalysis用公开的代码和训练超参在fineweb-edu上复现了这套设置,每次运行约6E18 FLOPs,观察到了同样的U型缩放曲线:Engram相比纯MoE基线有提升,早期层的表示也变得更像后期层。
通过扫描Engram的门控分数,能看出模型最常用哪些n-gram。扫出来的东西包括人名、代码片段、关系性措辞和模板化文本。有个意外结果是《逆转裁判》里的Wright。这些例子说明,学到的记忆是在优化训练目标,而不是在判断哪些事实值得存。
许可证文本、参考文献片段、API脚手架、网页边角料,都能提供预测捷径。所以额外Engram容量的价值,可能取决于数据准备阶段留下了什么。这不代表表容量被浪费了——评估语料的扫描既不能证明训练时的曝光程度,也不能证明每个类别占了多少容量。
对卸载来说,门控强不等于缓存热。门控低也不自动省读取:算门控本身就需要取回键,反而抵消了融合内核带来的性能收益。想跳过读取,得在检索之前先有一个独立的有用性预测器。
拿掉Engram会怎样
原论文的推理时消融显示,事实知识类基准只保留了原性能的29%到44%,阅读理解类保留了81%到93%。这是训练与推理不匹配造成的,衡量的是这个训练好的模型对Engram的依赖程度,不是有无Engram训练出来的模型之间的性能差。
在SemiAnalysis的消融里,压制Engram会让所有评估领域的token似然变差,百科文本和几个代码语料尤其明显。但GSM8K的准确率保持在运行间波动范围内,拿掉Engram没有影响。
Engram不是挂在不变MoE旁边的一个可拆卸字典。拿掉它,下游特征和专家选择都会变。在CRUXEval这个代码推理基准上,拿掉Engram让答案损失从0.2848升到0.3093比特/token;强迫消融后的模型沿用原来Engram开启时的专家选择,结果更差,0.3375比特/token。
重路由只能部分补偿缺失的记忆。记忆特征和专家选择是协同工作的,并不遵循"记忆存事实、专家做推理"这种干净的分工。
同一个CRUXEval上,任一阶段拿掉Engram都会降低准确率、增加生成token数,全程拿掉的变化最大。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.