你的技术前沿之旅,从这里开始
长上下文到底解决了什么问题
把更多材料放进一次请求,解决的是"读得完",而不是"想得对"。

一、位置编码决定了模型能读多远
位置编码方式直接约束了模型可用的序列长度。自回归位置编码依赖相对距离,超出训练时见过的距离后效果会明显下降。绝对位置编码允许外推,但外推长度超过训练长度时同样会退化。后续工作通过旋转位置编码等方式改善了外推能力,代价是模型需要见过足够长的序列。
二、注意力计算随长度平方增长
标准自注意力需要让每个位置与所有位置交互,计算量与显存占用都随序列长度平方增长。这是长文本最直接的工程约束。稀疏注意力、线性注意力与分块计算等方法都在降低这一项开销,但会引入各自的表达能力取舍。
三、位置外推不是免费的
把模型直接用于超过训练长度的输入,常见结果是开头注意力正常而中后段质量下降。继续训练相应长度、退火训练与插值位置编码是常见的三种应对办法,各自的成本与收益不同。
四、可核对的来源
旋转位置编码见 RoFormer: Enhanced Transformer with Rotary Position Embedming,arXiv:2104.09864。稀疏注意力方向可参考 Longformer,arXiv:2004.05150。
五、适用边界
本文讨论长度能力与工程代价的关系。能否在长上下文上稳定完成任务,仍需在具体任务上实测,不能由上下文长度直接推断。