长上下文的位置插值
位置插值 (PI) 是一种简单、有影响力的技术,它通过将新的位置索引压缩到模型已知的范围内来扩展 Transformer 的上下文窗口。
概述
它不是推断到看不见的位置,而是在经过训练的位置内插值,只需短暂的微调。
深入探讨
位置插值由 Meta 研究人员(Chen 等人)于 2023 年推出,解决了使用 RoPE 的模型在外推到训练之外的位置时会发生灾难性失败的事实。这种见解是违反直觉的:PI 不是要求模型处理它从未见过的更大的位置值,而是将传入的位置索引除以比例因子,以便将 8K 的目标长度映射回原始的 2K 范围。由于模型是在该范围内进行训练的,因此旋转保持分布状态。仅经过 1,000 个微调步骤,LLaMA 模型就以这种方式扩展,可处理多达 32K 的上下文。该论文表明,外推法可以将注意力分数提高到巨大的值,而插值法可以使注意力分数保持有界和稳定,这就是为什么插值法比外推法效果好得多。
技术洞察
PI 将位置 m 重新调整为 m/s,其中 s 是扩展因子(例如,新长度除以原始长度)。对于 RoPE,这有效地缩小了相邻位置之间的旋转步长,将更多位置打包到训练的角度范围内。论文中的理论界限表明插值注意力分数保持良好控制,而朴素外推法可以产生比训练中看到的分数大几个数量级的分数,从而破坏了 softmax 的稳定性。
战略影响
成本与预算
多年来,架构决策决定着性能和运营成本。
更清晰的判决
技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。
质量控制
更好的工程选择可以减少生产中的可靠性事故。
长上下文位置插值的未来
位置插值成为一系列后续产品的基础,包括 NTK 感知缩放和 YaRN,它们更有选择性地进行插值以保留局部细节。发展轨迹是需要很少或不需要微调的方法,以及将长上下文处理融入到预训练中。 PI 仍然是一个有价值的基线,并且通常与更新的频率感知方案相结合,以有效地达到 128K 以上的上下文窗口。
现实世界的实施
通过大约 1,000 个微调步骤扩展 2K 上下文 LLaMA 模型以处理 8K-32K 令牌
调整现有的聊天模型以进行长文档摘要,而无需从头开始重新训练
作为 NTK 感知扩展和 YaRN 改进的概念基线
对最初使用短窗口训练的模型启用长上下文代码或法律文档分析
风险与防护栏
优化一项基准测试可以隐藏更广泛的系统弱点。
基础设施和维护成本常常被低估。
随着系统变得更加复杂,安全性和可观察性差距可能会扩大。
实施路线图
在实施之前定义延迟、质量和成本目标。
在实际负载和数据条件下进行基准测试。
仪器监控错误、漂移和用户影响。
在扩展之前准备回滚和事件响应路径。
不断探索
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the Positional Interpolation for Long Context quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
常见问题
什么是长上下文的定位插值?
位置插值 (PI) 是一种简单、有影响力的技术,它通过将新的位置索引压缩到模型已知的范围内来扩展 Transformer 的上下文窗口。它不是推断到看不见的位置,而是在经过训练的位置内进行插值,只需要进行简短的微调。
位置插值背后的核心思想是什么?
PI 将位置索引除以比例因子,以便较长的序列映射回训练的位置范围,从而保持旋转分布。
为什么对更长头寸的天真推断会失败?
PI 论文表明,看不见的大位置可以产生比训练大几个数量级的注意力分数,从而破坏 softmax 的稳定性。
原始 PI 工作大约需要多少微调才能将 LLaMA 扩展到 32K?
该论文报告称,大约 1,000 个微调步骤足以将上下文扩展到 32K 个标记。
如果将上下文扩展一个因子 s,那么 PI 如何变换位置 m?
PI 将位置 m 重新调整为 m/s,将新的较大范围压缩到原始训练范围中。
PI 如何影响后来的方法(例如 YaRN)?
PI 将插值确定为安全方法; NTK 感知缩放和 YaRN 通过更有选择性地插值频率来改进它。