@akshay_pachaar: 扩展上下文窗口不仅仅是关于更大的矩阵。在传统的Transformer中,将token数量扩大8倍会…
摘要
解释了由于注意力的二次复杂度,扩展Transformer上下文窗口所带来的内存挑战,并暗示了解决方案。
查看缓存全文
缓存时间: 2026/06/03 13:50
你正在参加 OpenAI 的研究科学家面试。
面试官问:
“你如何将大语言模型的上下文长度从 2K 扩展到 128K token?”
你:“我会在 128K 上下文的长文档上微调模型。”
面试结束。
但以下是你遗漏的部分:
扩展上下文窗口不仅仅是矩阵变大那么简单。
在传统 Transformer 中,token 数量扩大 8 倍,由于注意力机制的二次复杂度,内存需求会扩大 64 倍。请看下图!
那么,我们该如何应对呢?
继续……
- 稀疏注意力(Sparse Attention)
它通过以下方式将注意力计算限制在 token 的子集上:
- 使用局部注意力(token 只关注邻居 token)。
- 让模型学习关注哪些 token。
但这会在计算复杂度和性能之间产生权衡。
以下是论文中的直观解释:
想象你在读一本书。对于你读的每一个句子,你是否需要完全了解整个情节才能理解大部分内容(全局注意力)?
还是只要知道当前章节的内容(局部注意力)就足够了,同时偶尔回想一下它与主要情节的关联(全局注意力)?
在绝大多数情况下,答案是后者。
- Flash Attention
这是一种快速且内存高效的方法,它保留了传统注意力机制的精确性,即使用全局注意力但更高效。
其核心理念是优化 GPU 内存中的数据传输。
让我们来理解!
一些背景知识:
- 线程 是执行的最小单位。
- 多个线程组成一个线程块。
此外:
- 线程块中的线程共享一个快速(但稀缺)的内存,称为 SRAM。
- 所有线程块共享一个全局内存,称为 HBM(容量大但速度慢)。
看这里
注意力机制在 SRAM 和 HBM 之间移动大型矩阵:
计算 QK 时:
- 将矩阵分发到线程
- 计算,然后
- 将乘积发送到 HBM
计算 softmax 时:
- 将乘积分发到线程
- 计算,然后
- 将输出发送到 HBM
对所有层重复操作。
看这里
Flash Attention 采用了硬件层面的优化,利用 SRAM 缓存中间结果。
这样,它减少了冗余的数据移动,相比标准注意力方法,速度提升可达 7.6 倍。
看这里
- DeepSeek 稀疏注意力(DeepSeek Sparse Attention, DSA)
DeepSeek 最近发布的 V3.2 模型引入了 DeepSeek 稀疏注意力(DSA),将复杂度从 O(L²) 降低到 O(Lk),其中 k 是固定的。
工作原理:
一个轻量级的 Lightning Indexer 对每个查询真正重要的 token 进行评分。
使用少量 head,以 FP8 运行,计算成本低。
然后,一个选择机制仅检索 top-k 的键值对。
关键洞察是:无论上下文长度如何,每个查询只选择 2048 个 token。
因此,昂贵的注意力计算只发生在这个小子集上,而不是整个 128K 序列。
在 128K 上下文下,预填充成本从每百万 token 约 $0.65 降至约 $0.35。解码成本从约 $2.4 降至约 $0.8。
而性能保持不变。在某些长上下文基准上,V3.2 实际上得分更高。
稀疏注意力并非新事物。但要在不损失质量的情况下使其奏效很难。
轮到你了:还有哪些其他技术可以增加大语言模型的上下文长度?
感谢阅读。
干杯!:)
相似文章
@VukRosic99: 长上下文Transformer面临两大瓶颈:二次注意力计算和KV缓存(在1M tokens时可达数百GB)…
MiniCPM-SALA是一款9B参数的混合注意力模型,通过在稀疏注意力和线性注意力之间交替插入(每3个线性层插入1个稀疏层)来克服长上下文Transformer的二次计算和KV缓存瓶颈。在256K tokens下,其推理速度比Qwen3-8B快3.5倍,并能在消费级GPU上支持高达1M tokens。该模型采用经济高效的持续训练方法,训练成本降低约75%。
更大的上下文窗口只是让你中间有个更大的死区
对847次AI代理运行的分析显示,较大的上下文窗口会导致性能下降,原因是注意力悬崖,而Synap被介绍为一个工具,可以高效地管理上下文并减少token使用量。
@antiAIvo:学习 Transformer 时,最难处理的是多维矩阵操作,人类大脑只能在三维中建模……
本文介绍了一个针对 Transformer 中注意力机制的可视化工具,允许用户自定义输入矩阵,并查看注意力分数的逐步计算过程。这是一个初始版本,计划根据用户反馈进行未来更新。
@currying: 非常棒的13页讲解!
一条推文重点介绍了《理解Transformer与注意力机制》,这是一篇13页的论文,从应用数学的角度解释了Transformer架构和注意力机制。
The Context-Ready Transformer
本文介绍了上下文就绪 Transformer,一种循环架构,在 Transformer 块之前对 token 进行预上下文化,在匹配或超越标准 Transformer 性能的同时,实现了显著的推理加速(例如在 A100 上达到 1.7 倍),且层数更少。