DeepSeek连自己官方开源的推理代码都能写错,而且错得相当有规律。

最近字节跳动Seed团队在测试DeepSeek-V4时发现了诡异现象:让模型补全FP8推理内核的代码,标准答案明明是8,模型却频频写成32。

更离谱的是,研究者没改动任何核心逻辑,只需要在前面无关的注释里逐个增加装饰性的等号,模型的答案就会在8和32之间来回翻转,每隔4个Token就重复一轮——多敲一个无意义符号就能颠覆判断,显然不是随机误差。

顺着这条线索,字节Seed联合普林斯顿大学、斯坦福大学、加州大学伯克利分校的研究者,对DeepSeek-V4、V4.1展开了系统测试,在论文《周期性弱点:分块KV缓存压缩引发的相位敏感性》中,揭开了DeepSeek压缩稀疏注意力架构隐藏的技术缺陷。

在128K长上下文检索实验中,仅仅因为目标信息所处的Token位置不同,DeepSeek-V4-Flash的检索准确率落差就高达40.23个百分点。

DeepSeek团队已经意识到固定大步长带来的相位缺陷,V4的后训练版本和V4.1都明显改善了这一问题,但始终没能完全消除周期性的性能差异。Seed团队将这种现象命名为相位敏感性,本质是长文本压缩机制下很难完全回避的周期性软肋。

实习生一作:65页论文扒透底层逻辑

这次掀开隐蔽缺陷的论文核心一作,是字节Seed实习生、普林斯顿大学计算机系四年级博士生朱星宇。他本科毕业于杜克大学,师从机器学习理论泰斗Sanjeev Arora,此前已有成果入选ICML 2025 Spotlight,2026年还刚拿下ICLR RSI Workshop最佳论文。

从研究“上下文错误如何干扰推理”,到这次揪出“位置滑动如何瘫痪检索”,他捕捉大模型隐蔽缺陷的视角始终刁钻敏锐。

这篇论文的结构也相当硬核:全文共65页,核心正文只占10页、参考文献3页,剩下52页全是附录,从数十种模型变体的因果干预、注意力头消融,到严格的数学动力学证明,整套“白盒解剖”的证据全部公开,不是简单的模型评测,而是完整的技术溯源。

而所有问题的源头,直指DeepSeek为了压低长文本计算成本,最核心的架构设计——块压缩稀疏注意力(CSA)。

省钱的代价:打破Transformer底层规则

要搞懂Bug的来源,得先明白DeepSeek-V4的长上下文设计逻辑。

传统标准Transformer中,输入拉长到128K甚至百万Token级时,KV Cache(键值缓存)的显存占用会线性暴涨。为了把成本压到极致,DeepSeek-V4用了两种非常激进的压缩注意力机制:

  • CSA(压缩稀疏注意力):用长度8、步长4的重叠滑动窗口,直接把KV数据量砍掉75%,后续再通过Indexer挑选关键块做稀疏计算;
  • HCA(历史压缩注意力):压缩幅度更大,每128个Token无重叠合并为1条,直接做全局读取。

这套设计是DeepSeek能低成本跑通超长文本的核心底座,工程收益极高,但在数学层面,它悄悄打破了Transformer的底层基石——平移对称性。

原生Transformer的RoPE旋转位置编码只计算Token间的相对距离:不管你在开头加空格、换框架还是加无意义注释,只要相对位置不变,模型的注意力分布就不会受影响。

但CSA每4个Token就会打包一次,序列里的每个Token凭空多了一个隐式属性:相位,也就是Token绝对位置除以步长4的余数。有些相位的信息能完整保留,有些相位的信息会在压缩中直接被抹平。

说白了,弱势相位的信息在物理层面压根就没写入KV Cache。等模型生成到后半段需要检索时,显存里根本没存这段内容,上层推理能力再强也只能靠统计概率瞎编,落到用户视角就是模型突然“抽风”胡说八道。不少用户调侃DeepSeek“对齐了超神,踩坑就超鬼”的神鬼二象性,终于有了技术层面的解释。

实验验证:平均分藏住了致命盲区

V4的步长是4,对应4种不同相位,信息在某类相位容易检索,换个相位就会变成死角。开篇的FP8代码实验中,研究者更换了四组填充文本,64次对比里有60次都符合周期规律;而没有采用分块KV压缩的DeepSeek V3.1基座,完全没有出现周期性翻转。

为了排除偶然性,团队又设计了128K长上下文“大海捞针”实验:在文本中埋入1.6万组Key-Value记录,让模型根据Key找对应Value,同时严格控制文本总长度、提问位置,把目标Key按位置模8分为8组,尽量排除检索距离的干扰。

实验数据非常夸张:

  • DeepSeek-V4-Flash基座最差位置准确率仅29.69%,最好位置达69.92%,落差40.23个百分点;
  • 后训练版本V4-Flash-0731,落差缩小到19.14个百分点;
  • V4-Pro基座和后训练版本的落差也分别有34.77、14.84个百分点。

所有版本的性能波动周期都刚好和CSA的4Token步长吻合,证明问题不是模型“记不住”,而是特定位置的信息从压缩阶段就已经丢失了。

为什么NIAH、RULER这类主流长文本榜单之前从来没测出这个问题?答案是传统评测被平均分骗了:常规测试会把目标信息随机散落在文本各处,强势槽位的高分和弱势槽位的低分互相抵消,最后出来的平均分自然光鲜平稳。

Seed团队基于Qwen3-0.6B架构从零训练模型做对照,直接戳破了假象:

  • 看平均准确率:全注意力模型61.1%,8倍压缩注意力59.4%,只差1.7个百分点,几乎没区别;
  • 看最差表现:全注意力模型最差位置仍有58.4%,极值差仅4.3个百分点;压缩模型最差位置直接跌到9.9%,最好最差落差高达71.1个百分点。

【编辑观察】这逻辑和游戏跑分简直一模一样:平均帧率好看不代表所有场景都流畅,长文本的“最差相位准确率”,本质就是大模型的“1% Low帧”——平均分再高,关键信息刚好落在盲区就直接掉链子,吃亏的还是用户。

平均分只能证明模型“总体能用”,却完全隐瞒了它会在哪些固定位置直接“瘫痪”。

V4.1修复:阵痛缓解,根源未消

时间线很有意思:DeepSeek早在2026年9月10日发布V4.1-Flash时,就已经调整了大步长压缩机制,而Seed团队披露缺陷的论文直到9月28日才提交到arXiv。

从架构改动来看,V4.1主要做了两点调整:

  • 压缩步长减半(CSA2):压缩步长从4直接降到2,窗口大幅缩短;
  • 加入Engram模块:用条件记忆结构分担注意力计算负担,提升长程信息调度能力。

改进效果立竿见影:V4.1-Flash最好与最差相位的准确率落差从40.2%大幅收窄到6.1个百分点,性能波动被抚平了大半。

但周期性问题并没有被根治,只是从4Token周期变成了2Token周期:目标在偶数位置时准确率稳定在95%左右,奇数位置则在89%~90%浮动——步长是多少,周期就是多少。只要还在用固定步长的分块压缩,相位敏感性的本质就不会消失。

同行挑错,其实是开源的胜利

这次DeepSeek的架构硬伤,是走闭源路线的字节Seed团队挖出来的,但研究能深入到注意力头层面做白盒拆解,本质上离不开DeepSeek开放权重的底气。

业内有个很经典的说法:“开源的意义就是全世界的程序员都是我的工程师”。敢把核心架构完全公开,自然能吸引全行业的顶尖大脑帮忙排查盲区,哪怕是竞争对手,也会变成最严格的外部审查员,最终推动产品和整个行业进步。要是闭源模型有同类问题,外部研究者连验证的机会都没有。

这次讨论也戳中了大模型研发里系统(Infra)和算法团队的长期拉扯:压缩比开得越高,系统团队的算力成本就越低,但压缩过程中丢了多少信息,算法团队往往要训完模型才知道。

省下算力的另一面,往往是信息保真度的损失。系统团队不能只盯着吞吐量,算法团队也不能只相信平均跑分——硬件成本上省下的每一分,最后都可能要模型的实际表现来买单。