EndPrompt: 通过终端锚定实现高效长上下文扩展

arXiv cs.CL 论文

摘要

EndPrompt 提出了一种方法,仅使用短训练序列即可扩展大语言模型的上下文窗口,通过将终端提示锚定到目标长度的位置索引。该方法在基准测试中取得了优异结果,且计算量远少于全长度微调。

arXiv:2605.14589v1 公告类型:新 摘要:扩展大语言模型的上下文窗口通常需要在目标长度上训练序列,这会产生二次存储和计算成本,使得长上下文扩展既昂贵又难以复现。我们提出 EndPrompt,一种仅使用短训练序列就能有效扩展上下文的方法。核心洞察是,暴露模型到长距离相对位置距离并不需要构造全长输入:我们将原始短上下文保留为完整的第一个片段,并附加一个简短的终端提示作为第二个片段,为其分配接近目标上下文长度的位置索引。这种两段式构造在短物理序列中同时引入了局部和长距离相对距离,同时保持了训练文本的语义连续性——这是基于分块的模拟方法(将连续上下文分割)所缺失的特性。我们基于旋转位置编码(Rotary Position Embedding)和伯恩斯坦不等式进行了理论分析,表明位置插值对注意力函数施加了严格的平滑约束,且共享的 Transformer 参数进一步抑制了向未观测中间距离的不稳定外推。将 EndPrompt 应用于 LLaMA 系列模型,将上下文窗口从 8K 扩展到 64K,它在 RULER 上取得平均 76.03 分,在 LongBench 上取得最高平均分,超过了 LCEG(72.24)、LongLoRA(72.95)和全长度微调(69.23),同时所需计算量大幅减少。这些结果表明,长上下文泛化可以从稀疏的位置监督中诱导出来,挑战了普遍观点——密集的长序列训练是可靠上下文窗口扩展的必要条件。代码已开源至 https://github.com/clx1415926/EndPrompt。
查看原文
查看缓存全文

缓存时间: 2026/05/15 06:23

# EndPrompt:通过终端锚点实现高效的长上下文扩展  
来源:https://arxiv.org/html/2605.14589  

韩天1,2∗, 陈璐暄3,2∗, 陈欣冉2, 孔锐2, 王方2, 陈嘉敏2, 赵金曼2, 李宇辰2†, 赵家树2, 王帅强2, 熊浩意4, 尹大伟2†  
1南开大学  
2百度公司  
3上海交通大学  
4独立研究员  
[email protected], [email protected], [email protected]  

###### 摘要  

扩展大语言模型的上下文窗口通常需要对目标长度的序列进行训练,这会带来二次方级的存储和计算成本,使得长上下文适配变得昂贵且难以复现。我们提出 **EndPrompt**,一种仅使用短训练序列即可实现有效上下文扩展的方法。核心洞察在于:让模型暴露于长距离相对位置距离并不需要构造完整长度的输入:我们保留原始短上下文作为一个完整的第一个片段,并附加一个简短的终端提示作为第二个片段,为其赋予接近目标上下文长度尾部的位置索引。这种两片段构造在一个短物理序列中同时引入了局部和长距离相对距离,同时保持了训练文本的语义连续性——这是那些将连续上下文拆分的基于分块的模拟方法所缺乏的特性。我们基于旋转位置编码(RoPE)和伯恩斯坦不等式提供了理论分析,表明位置插值会引入注意力函数上的严格光滑性约束,而共享的Transformer参数进一步抑制了未观测到的中间距离上的不稳定外推。将该方法应用于LLaMA系列模型,将上下文窗口从8K扩展到64K,EndPrompt在RULER上的平均得分为76.03,在LongBench上取得了最高平均分,超越了LCEG(72.24)、LongLoRA(72.95)和全长度微调(69.23),同时所需的计算量大幅减少。这些结果表明,长上下文泛化可以从稀疏的位置监督中诱导出来,挑战了以往认为可靠的上下文窗口扩展需要密集的长序列训练这一假设。代码开源在 https://github.com/clx1415926/EndPrompt。  

††脚注:∗共同第一作者,贡献相等。††脚注:†通讯作者。  

## 1 引言  

大语言模型是现代自然语言处理的基础,也是复杂推理的核心接口。然而,其可靠的最大上下文长度限制了实用性。诸如长文档问答[13 (https://arxiv.org/html/2605.14589#bib.bib8),23 (https://arxiv.org/html/2605.14589#bib.bib9)]、仓库级代码理解[22 (https://arxiv.org/html/2605.14589#bib.bib11),16 (https://arxiv.org/html/2605.14589#bib.bib10)]、法律与科学文档分析[4 (https://arxiv.org/html/2605.14589#bib.bib12)]、个性化助手以及大规模证据检索等应用,需要对超过预训练上下文窗口的输入进行推理。在此,更长的上下文仅在模型保持局部连贯性并在远距离标记之间建立可靠交互时才有效。因此,扩展预训练的上下文窗口是语言模型适配中的一个核心问题。  

在目标上下文长度上持续对长序列进行训练是一种直接但成本高昂的解决方案。收集高质量的长文本语料十分困难,而训练由于注意力计算的二次方缩放[30 (https://arxiv.org/html/2605.14589#bib.bib14)],会增加内存消耗和运行时间。尽管像FlashAttention[12 (https://arxiv.org/html/2605.14589#bib.bib15)]和分布式系统这样的高效实现可以减轻这一负担,但全长度微调仍然昂贵。为了降低成本,最近的方法探索了位置插值[8 (https://arxiv.org/html/2605.14589#bib.bib2),26 (https://arxiv.org/html/2605.14589#bib.bib19),6 (https://arxiv.org/html/2605.14589#bib.bib34),14 (https://arxiv.org/html/2605.14589#bib.bib33)]、稀疏注意力[10 (https://arxiv.org/html/2605.14589#bib.bib16)]、滑动窗口注意力[3 (https://arxiv.org/html/2605.14589#bib.bib17),32 (https://arxiv.org/html/2605.14589#bib.bib32),17 (https://arxiv.org/html/2605.14589#bib.bib31)]、低秩适配[20 (https://arxiv.org/html/2605.14589#bib.bib18)]以及模拟长上下文训练[35 (https://arxiv.org/html/2605.14589#bib.bib3),1 (https://arxiv.org/html/2605.14589#bib.bib35)]。然而,这些方法常常引入局限性,例如需要大量长序列训练、改变注意力结构、或者以破坏语义连续性的方式分块文本。因此,尚不清楚上下文扩展是否需要目标长度上的密集监督,还是一组稀疏的结构化位置信号就足够了。  

本文探讨模型是否必须观测全长度序列才能获得长上下文能力。我们通过位置泛化的视角来研究这个问题。在使用旋转位置编码[29 (https://arxiv.org/html/2605.14589#bib.bib1)]的模型中,注意力分数同时取决于标记内容和相对位置距离。虽然现有方法假设可靠的外推需要训练期间暴露于密集的相对距离,但我们证明有效的长上下文行为可以从稀疏的训练信号中涌现。具体地,在短序列上训练的模型,如果训练样本保持语义连贯性并为远距离位置提供稳定锚点,就可以接收针对长距离位置的监督。这一发现将上下文适配重新定义为设计信息丰富的位置监督,而不仅仅是增加物理序列长度。  

我们提出 **EndPrompt**,一种利用位置索引操作和附加的结束提示实现高效上下文扩展的方法。我们保留原始短上下文作为第一个片段,并附加一个终端提示作为第二个片段。第一个片段接收局部位置索引,第二个片段接收接近目标最大上下文长度的索引。这种配置在一个短物理序列内同时生成局部和长距离相对距离。与基于分块的方法[35 (https://arxiv.org/html/2605.14589#bib.bib3)]不同,我们的方法避免了分割连续文本,从而在暴露模型于长距离位置模式的同时保持语义完整性。结束提示充当稳定的终端锚点。实验表明,该方法对不同的提示形式具有鲁棒性,这表明其有效性源于终端线索的结构性位置,而非特定标记的记忆。这种设计在不损害短上下文训练信号质量的前提下,暴露了长距离位置交互。  

我们分析了稀疏监督如何支持长上下文泛化。在旋转位置编码[29 (https://arxiv.org/html/2605.14589#bib.bib1)]下,注意力分数表现为相对距离上正弦分量的和,具有依赖于内容的振幅和相位。位置插值[8 (https://arxiv.org/html/2605.14589#bib.bib2)]降低了有效位置频率,从而限制了注意力分数在距离维度上的变化率和曲率。这种降低在未观测的中间距离上引入了光滑性偏差。此外,Transformer并非为每个距离学习独立参数;相同的查询和键投影同时支持局部和长距离行为。因此,稀疏的长距离监督与局部监督一起约束了共享参数空间,并最小化了未观测区域中的不稳定行为。这一理论视角解释了短序列训练如何产生稳定的长上下文能力。  

我们在LLaMA系列模型[31 (https://arxiv.org/html/2605.14589#bib.bib24),15 (https://arxiv.org/html/2605.14589#bib.bib25)]上评估 **EndPrompt (ET)**,将上下文窗口从8K扩展到64K。RULER[19 (https://arxiv.org/html/2605.14589#bib.bib7)]和LongBench[2 (https://arxiv.org/html/2605.14589#bib.bib6)]实验表明,我们的方法相比LCEG[25 (https://arxiv.org/html/2605.14589#bib.bib5)]、LongLoRA[9 (https://arxiv.org/html/2605.14589#bib.bib4)]和全长度微调等基线取得了竞争性或更优的性能。具体地,我们的方法在RULER上平均得分为76.03,优于LCEG(72.24)、LongLoRA(72.95)和全长度微调(69.23)。在LongBench上,我们的方法取得了最高平均分,在问答、摘要、少样本学习和代码补全等任务上表现强劲。消融研究验证了结束提示设计、基座模型选择、扩展长度和训练token数量的影响。这些结果证实,可靠的长上下文适配可以从结构化的稀疏位置监督中涌现,无需全长度训练序列。  

本文的主要贡献总结如下:  

- • 我们提出 **EndPrompt (ET)**,一种利用短训练序列、位置索引操作和附加结束提示的高效上下文扩展方法,用于模拟长距离位置监督。  
- • 我们证明,保留原始上下文作为未分割的片段可以维持语义连续性,而结束提示提供稳定的终端锚点,从而在不干扰下一个token预测信号的情况下创建长距离关系。  
- • 我们通过旋转位置编码和位置插值分析该方法,解释了光滑位置变化和Transformer的共享参数如何支持在未观测中间距离上的泛化。  
- • 我们在RULER和LongBench上展示了强大的经验性能,我们的方法在避免全长度训练序列的同时,优于代表性基线。  

## 2 预备知识  

本节回顾所提方法的位置机制:RoPE[29 (https://arxiv.org/html/2605.14589#bib.bib1)]和PI[8 (https://arxiv.org/html/2605.14589#bib.bib2)]。对于给定的注意力头,令 \( \mathbf{q}_m, \mathbf{k}_n \in \mathbb{R}^D \) 表示位置 \( m \) 和 \( n \) 处的查询和键向量。RoPE将维度划分为复数子空间。在第 \( j \) 个子空间中,分配位置索引 \( p_m \) 和 \( p_n \),RoPE对内容分量 \( q_{m,j} \) 和 \( k_{n,j} \) 施加与位置相关的相位旋转,得到 \( \hat{q}_{m,j}=q_{m,j}e^{ip_m\theta_j} \) 和 \( \hat{k}_{n,j}=k_{n,j}e^{ip_n\theta_j} \),其中 \( \theta_j \) 是固定的角频率。该子空间的非归一化注意力分数贡献取决于分配的相对距离 \( d = p_m - p_n \)。将内容项 \( q_{m,j}\bar{k}_{n,j} \) 以极坐标形式表达,振幅为 \( a_j(\mathbf{x}_m,\mathbf{x}_n;\Theta) \),相位偏移为 \( \phi_j(\mathbf{x}_m,\mathbf{x}_n;\Theta) \),则总的RoPE注意力分数成为一个有限三角多项式:  

\[
S_{\mathrm{RoPE}}(d \mid \mathbf{x}_m,\mathbf{x}_n;\Theta) = \sum_{j=0}^{D/2-1} a_j(\mathbf{x}_m,\mathbf{x}_n;\Theta) \cos\left( d\theta_j + \phi_j(\mathbf{x}_m,\mathbf{x}_n;\Theta) \right).
\tag{1}
\]

由于距离变量仅嵌入在正弦相位中,调整位置索引可以在不改变物理序列长度的情况下实现更广分配相对距离上的注意力。为了将RoPE适应于扩展上下文,PI通过一个目标缩放因子 \( s > 1 \) 重新缩放位置索引,将 \( p \) 映射为 \( p/s \)。这一操作有效地将角频率降低为 \( \theta_j/s \),从而将整体注意力分数修改为:  

\[
S_{\mathrm{PI}}(d \mid \mathbf{x}_m,\mathbf{x}_n;\Theta) = \sum_{j=0}^{D/2-1} a_j(\mathbf{x}_m,\mathbf{x}_n;\Theta) \cos\left( \frac{d\theta_j}{s} + \phi_j(\mathbf{x}_m,\mathbf{x}_n;\Theta) \right).
\tag{2}
\]

与公式 (1) (https://arxiv.org/html/2605.14589#S2.E1) 相比,这种重新缩放降低了沿距离维度的最大变化率。由于 \( S_{\mathrm{PI}} \) 是有限三角多项式,最大有效频率 \( \theta_0 \) 严格限制了函数的一阶变分和二阶曲率:  

\[
\sup_d \left\| \frac{\partial S_{\mathrm{PI}}}{\partial d} \right\| \leq \frac{\theta_0}{s} \sup_d \left\| S_{\mathrm{PI}}(d) \right\|,\quad \sup_d \left\| \frac{\partial^2 S_{\mathrm{PI}}}{\partial d^2} \right\| \leq \left( \frac{\theta_0}{s} \right)^2 \sup_d \left\| S_{\mathrm{PI}}(d) \right\|.
\tag{3}
\]

这些界限并非保证对未见距离的完美重构,而是表明PI通过抑制高频位置变化提供了一种光滑性偏差。所提方法利用这种光滑性,并结合有针对性的长距离监督,以稳定训练期间未观测距离上的注意力分数。  

## 3 方法  

参考图注Figure 1:所提方法概述。  

### 3.1 概述  

如图1 (https://arxiv.org/html/2605.14589#S3.F1) 所示,所提方法旨在实现高效的长上下文适配,而无需全长度序列训练带来的高内存和计算成本。这一目标通过两个耦合组件实现。首先,位置索引操作将物理标记顺序与分配的位置索引解耦,从而在保持局部注意力的同时创建稀疏的长距离监督。其次,附加的结束提示充当目标上下文窗口边界附近的终端锚点。这种设计保留了原始短上下文的语义完整性。这些组件共同使模型能够在RoPE和PI框架下,从短训练样本中获得长距离位置能力。  

### 3.2 位置索引操作  

令 \( L \) 表示目标上下文长度。给定一个长度为 \( a \) 的短上下文序列 \( \mathbf{x} = (x_0, x_1, \ldots, x_{a-1}) \),附加一个长度为 \( b \) 的结束提示 \( \mathbf{e} = (e_0, e_1, \ldots, e_{b-1}) \),形成物理训练序列:  

\[
\mathbf{y} = (x_0, x_1, \ldots, x_{a-1}, e_0, e_1, \ldots, e_{b-1}), \quad |\mathbf{y}| = a + b.
\tag{4}
\]

虽然物理长度为 \( a + b \),但分配的位置索引通过以下映射跨越目标上下文窗口的两端:  

\[
p_l = 
\begin{cases} 
l, & 0 \leq l < a, \\
L - (a + b - l), & a \leq l < a + b.
\end{cases}
\tag{5}
\]

具体地,短上下文 \( \mathbf{x} \) 中的标记保持其原始局部索引 \( 0, 1, \ldots, a-1 \),而结束提示 \( \mathbf{e} \) 中的标记被分配接近目标长度 \( L \) 的尾部索引: \( L-b, L-b+1, \ldots, L-1 \)。这种配置在一个物理短序列内同时生成了局部和长距离相对位置距离。  

将上述映射代入RoPE注意力公式,我们可以得到该配置下的注意力分数。对于位置 \( l \) 和 \( r \),基于RoPE的注意力分数为:  

\[
S_{lr} = \sum_{j=0}^{D/2-1} a_{j,lr}(\Theta) \cos\left( \frac{(p_l - p_r)\theta_j}{s} + \phi_{j,lr}(\Theta) \right), \quad r \leq l.
\tag{7}
\]

公式 (7) (https://arxiv.org/html/2605.14589#S3.E7) 将所提出的位置映射与公式 (2) (https://arxiv.org/html/2605.14589#S2.E2) 中的PI分数联系起来。

相似文章

Jet-Long: 高效长上下文扩展与动态双焦点RoPE

Hugging Face Daily Papers

介绍了Jet-Long,一种用于长上下文扩展的零样本方法,该方法动态调整重缩放因子并使用双焦点注意力机制,无需重新训练即可在不同序列长度上实现高效高性能处理。