一个尴尬的事实:最强模型抄不对字符串
2026年7月,一篇来自清华和北大团队的论文抛出了一个让人难以置信的结论:GPT-5.5、Gemini 3.1 Pro、DeepSeek V4 Pro——这些能解奥数题、能写代码、能做复杂推理的最强模型,在一个看似无比简单的任务上频繁翻车——把上下文里的一段字符串原封不动地抄下来。
不是长到超出上下文窗口,不是有什么特殊编码。就是普通的二进制串、普通的Python列表。模型只需要做一件事:看到位置 的字符,在输出位置
把它原样吐出来。
但准确率常常跌破50%。输入越长,错得越离谱。
这就像一个能解微积分的大学生,抄写一行字却会漏掉一半。问题出在哪?
问题不在”能力”,在”位置编码”
研究者做了一个精巧的诊断。他们猜测:LLM抄写字符串时,可能根本不是通过”绝对位置 “去定位输入的第
个字符,而是走了一条捷径——匹配局部上下文。
什么意思?想象你要抄的字符串是 ...A B A B A B...。模型看到当前位置前面是 A B,就会想:”我之前在哪见过 A B?哦,就在前面不远,后面跟着的是 A,那我就抄 A 吧。”这就是所谓的归纳头(induction head)机制——Transformer里一个被深入研究过的电路。
这个机制在大多数任务上非常好用,但它有一个致命弱点:当局部上下文重复出现时,模型会混淆到底该抄哪一个。字符串越长,重复模式越多,模型就越容易抄错位置。
根源在于Transformer的1D位置编码(RoPE):所有token排成一条长龙,位置信息是一维的。模型没有”行”和”列”的概念,只能靠局部上下文来定位,而局部上下文在长字符串里是会重复的。
2D-RoPE:把文本看成一张网格
研究者的解决方案异常简洁:把一维序列重新组织成二维网格。
具体来说,一段文本不再排成一行,而是被折成一个矩阵——比如每行64个token,多出来的就换行。每个token因此获得两个位置ID:行ID和列ID。RoPE的旋转角度由这两个ID共同决定。
在这个二维视角下,抄写任务变得极其简单:输出位置和输入位置在同一行,列偏移固定。模型只需要学会”取本行往前数第 列的token”,就能精确抄写,不管输入有多长。
这就像从”在一维长河里找匹配”变成了”在Excel表格里按列号取值”。前者是模糊匹配,后者是精确索引。
实验结果:训练长度100倍外推,依然100%
合成实验的结果令人震惊:
– 训练时只见过长度为128的字符串 – 测试时输入长度拉到12800(100倍) – 标准1D-RoPE的浅层Transformer准确率跌到接近0 – 2D-RoPE的Transformer依然保持接近100%的抄写准确率
这不是小幅提升,是”完全做不到”和”完美做到”的差别。
更关键的是大规模预训练验证。研究者在DCLM数据集上从零预训练了最大1.4B参数的语言模型,对比标准RoPE和2D-RoPE:
| 模型 | 参数 | 训练tokens | 短输入抄写 | 长输入抄写 |
|---|---|---|---|---|
| RoPE | 730M | 15B | 97.0% | 7.8% |
| 2D-RoPE | 730M | 15B | 99.4% | 76.7% |
| RoPE | 1.4B | 28B | 99.6% | 8.7% |
| 2D-RoPE | 1.4B | 28B | 100.0% | 98.1% |
在100B tokens训练的730M模型上,2D-RoPE在最长输入上达到了100%的抄写准确率,而同期的标准RoPE只有1.8%。
更难得的是,2D-RoPE在常识推理(CSR)等常规基准上没有掉点——它不是用推理能力换抄写能力,而是同时把两件事做好了。
为什么这件事重要
这个故事之所以迷人,不在于”又一个位置编码变体”,而在于它揭示了一个结构性盲点:
Transformer的很多”能力缺陷”,根源可能不在参数不够、数据不够、训练不够,而在于位置编码的归纳偏置(inductive bias)从一开始就把模型引向了捷径。
模型不是”学不会抄写”,而是位置编码给了它一条更容易走的路——靠局部上下文匹配——这条路在短输入上管用,在长输入上就崩了。换一种位置编码,同一个模型立刻就会了。
这让人联想到一个更深的类比:有时候不是人不够聪明,而是工具的形状限制了思考方式。用一维的眼光看文本,抄写就是”找匹配”;用二维的眼光看文本,抄写就是”按坐标取值”。同样的信息,不同的组织方式,难度天差地别。
2D-RoPE的作者自己也说:他们希望这项工作能鼓励更多人去探索多维位置编码的潜力。毕竟,人类阅读时也不是把文字看成一条线的——我们有段落、有行列、有版面。也许模型也该如此。
—
论文:Frontier Language Models Struggle to Copy: Text Can Be Better Viewed in 2D
