Randomized YaRN让大模型长文本推理能力真正泛化起来论文标题Randomized YaRN Improves Length Generalization for Long-Context Reasoning作者Manas Mehta, Fangcong Yin, Greg Durrett纽约大学arXiv2606.23687代码GitHub - Randomized-YaRN发布时间2026年6月一、背景大模型的金鱼记忆难题如果你用过 ChatGPT 或任何大模型你大概率遇到过这个问题聊着聊着它就把前面说过的话忘了。这不是模型的态度问题而是架构问题。现在的大语言模型LLM在预训练阶段通常只见过很短的文章片段比如 4K、8K token。虽然后来可以通过继续训练把上下文窗口拉到 32K、128K 甚至 1M但模型在远超训练长度的场景下推理能力会断崖式下降。打个比方你训练一个学生做 200 字的阅读理解然后直接考他 2000 字的材料——他大概率会懵。这个问题的学名叫Length Generalization长度泛化是长上下文推理领域的核心难题。二、先搞懂几个关键概念在聊论文之前得先补一下基本功。不慌我用大白话讲。2.1 位置编码Positional Encoding是什么Transformer 架构本身对位置不敏感。你把一句话里的词随机打乱模型看到的原始信息是一样的——因为 Attention 机制天然是无序的。所以必须给每个 token 加上一个位置标签告诉模型你是第几个词。这个位置标签就是位置编码。类比就像图书馆的书架编号没有编号你根本不知道书在哪里。2.2 RoPE旋转位置编码RoPERotary Position Embedding是目前最主流的位置编码方案Llama、Qwen 等模型都在用。它的核心思想是通过旋转向量来表示位置。位置 m 的编码就是对原始向量做一个角度和位置成正比的旋转。RoPE(m) 旋转(原始向量, 角度 ∝ m)RoPE 的好处是它天然支持相对位置——模型不需要死记第 100 个位置是什么只需要关注两个位置之间差了多少。但问题是RoPE 的旋转角度是按预训练时的最大长度设计的。超出这个长度旋转角度进入模型没见过的范围推理就崩了。2.3 YaRN让 RoPE 能外推YaRNYet another RoPE extensioN是 2023 年 Peng 等人提出的上下文扩展方法。它的思路分两步NTK-by-parts 插值对低频的 RoPE 维度做插值把大位置映射回模型见过的范围温度缩放对注意力分数做个降温让长文本的注意力更平滑公式简化版YaRN(m; s) NTK插值(RoPE(m), s) 温度缩放其中s是缩放因子。比如 s4理论上就能把 8K 窗口扩展到 32K。YaRN 的优点是不引入新参数即插即用所以被广泛采用。但是YaRN 本身只是推理时的技巧。如果在训练时也用 YaRN加上一些特殊操作效果会更好——这就是本论文要解决的问题。三、Randomized YaRN核心思想论文的核心贡献就一句话训练时给短文本随机分配长距离的位置编码让模型提前见过世面。3.1 问题在哪标准微调流程短文本数据 → 正常位置编码(1,2,3,...,L) → 模型训练 → 推理时外推模型在训练阶段只见过 [1, L] 范围内的位置编码。一旦推理时遇到 L1, L2… 这些OOD分布外位置模型就一脸懵。3.2 Randomized YaRN 的做法Randomized YaRN 的核心操作就两步第一步随机采样位置Randomized Position Encoding对于一段长度为 L 的训练文本不是给它分配 [1, 2, 3, …, L] 的位置而是从一个大范围[1, L_max] 里随机抽 L 个位置排序后分配# 伪代码说明defrandomized_position_sampling(seq_len,max_len):# 从 1~max_len 中随机抽 seq_len 个位置positionsrandom.sample(range(1,max_len1),seq_len)# 升序排列保持token顺序positions.sort()returnpositions# 例如seq_len4, max_len1000# 可能抽到[12, 247, 568, 891]# 然后对这些位置计算 YaRN 编码分配给 4 个 token这样哪怕训练文本只有 500 个 token模型也能看到第 891 号位置的编码——它已经提前见过世面了。第二步长度课程Length Curriculum不直接跳到目标长度。而是逐步增加采样范围Epoch 1: 从 [1, 8K] 范围采样 Epoch 2: 从 [1, 10K] 范围采样 Epoch 3: 从 [1, 12K] 范围采样 Epoch 4: 从 [1, 16K] 范围采样 Epoch 5: 从 [1, 16K] 范围采样巩固这就像一个渐进式训练计划——先让模型适应小范围的位置漂移再逐步扩大到目标范围。关键点Randomized YaRN 的训练数据本身始终是短文本8K但位置编码来自更长的范围。不需要昂贵的长文本训练数据3.3 完整流程训练阶段Randomized YaRN 短文本 token → 随机采样位置(逐步增大范围) → YaRN 编码(s) → 模型训练(LoRA) 推理阶段标准 YaRN 长文本 token → 标准 YaRN 编码(s) → 模型推理四、实验结果真实力还是花架子论文在两个硬核长文本推理基准上做了评测。4.1 评测任务BABILong把推理问题埋在超长无关文本中要求模型找到关键信息并完成多跳推理。比如足球从哪儿来、经过了哪儿、最后在哪儿这种需要逻辑链的问题。MRCRMulti-Round Coreference Resolution多轮对话中的指代消解要求模型在长对话中找到正确的引用对象并执行操作。4.2 核心结果BABILong方法训练数据长度16K 准确率32K 准确率64K 准确率128K 准确率标准 LoRA8K92.5%88.9%90.2%63.0%↓YaRN 微调8K89.5%86.2%82.3%67.2% ↓RPE仅随机位置8K84.9%82.0%79.0%72.8% ↓Randomized YaRN8K93.8%93.4%90.2%83.9%✨使用 Qwen2.5-7B 模型。训练数据全部在 8K 以内测试在 16K~128K。最亮眼的发现标准 LoRA 在 128K 上准确率骤降到 63%而 Randomized YaRN 仍然保住了 83.9%——远近都能打。4.3 MRCR 上的差距更大方法OOD 平均准确率标准 LoRA64.4%YaRN 微调59.3%RPE61.1%Randomized YaRN72.7%(8.3%)在 64K-128K 这个最极端的区间Randomized YaRN 以 68.8% 碾压 LoRA 的 31.7%差距超过一倍。4.4 消融实验课程到底重不重要方法有课程OOD 平均RPE✅75.1%RPE❌56.8% (−18.3%)Randomized YaRN✅77.3%Randomized YaRN❌69.4% (−7.9%)结论很明确长度课程不是锦上添花而是成败关键。去掉课程后RPE 性能直接暴跌 18 个百分点。五、为什么这对开发者很重要如果你是做 LLM 应用开发的这篇文章至少能给你几个启示5.1 不要盲目信长上下文很多模型宣称支持 128K、1M 上下文但能处理和能理解是两回事。如果你的应用需要在长文档中做多跳推理最好实际测一下 OOD 场景。5.2 位置编码比你想象的更重要位置编码不是改个参数就完事的细节。它直接影响模型对长文本的理解深度。Randomized YaRN 的核心精髓就是让模型在训练时见识足够多样的位置编码。5.3 训练策略的启发即使你只是在用 LoRA 微调也可以借鉴随机位置采样的思路不用费心搜集长文本训练数据短文本 随机位置编码 长文本泛化能力渐进式课程很重要别一上来就拉到目标长度5.4 适用场景 超长文档合同/论文/报告的问答系统 长时间对话历史的检索增强 知识库/代码库级别的检索与推理 任何需要读完一本小说再回答问题的场景六、局限性与展望论文也坦诚地列出了局限性模型规模只在 7B 规模上做了实验更大模型的效果待验证语言限制仅测试了英文数据中文场景需要更多实践计算开销约 250 GPU 小时的总计算量对个人开发者不算友好适用前提更适合评估上下文远大于训练上下文的场景七、总结问题Randomized YaRN 的解法模型没见过长位置编码训练时随机从大范围采样位置直接跳到目标长度不适应渐进式长度课程需要昂贵的长文本数据短文本 随机位置就够了远距离推理崩盘128K 上相对 LoRA 提升 20 个百分点一句话总结Randomized YaRN 通过在短文本训练中假装在长文本随机位置采样 渐进课程让大模型的长文本推理真正泛化了而不是仅仅记住了。论文代码已开源https://github.com/Manas-Mehta/Randomized-YaRN本文基于 arXiv 论文 2606.23687 翻译整理旨在以通俗易懂的方式向开发者科普长上下文推理的前沿技术。参考Peng et al., 2023.YaRN: Efficient Context Window Extension of Large Language ModelsRuoss et al., 2023.Randomized Positional Encodings Boost Length Generalization of TransformersZhu et al., 2023.PoSE: Efficient Context Window Extension of LLMs via Positional Skip-wise TrainingSu et al., 2023.RoFormer: Enhanced Transformer with Rotary Position EmbeddingKuratov et al., 2024.BABILong: Testing the Limits of LLMs with Long Context Reasoning-in-a-HaystackVodrahalli et al., 2024.MRCR: Multi-Round Coreference Resolution