AI 今日资讯

Context Window 是大模型的”工作记忆”,窗口越大,能同时处理的信息越多。

上下文窗口:大模型的”工作记忆”

大模型回答问题依赖两部分知识:

  • 参数知识:训练时学到的,存储在模型权重中
  • 上下文知识:推理时喂进去的,即 Context Window

窗口越大,能同时”看到”的内容越多,分析长文档、长代码库、多轮对话的能力越强。


2026年上下文窗口军备竞赛

模型 上下文窗口 Token 数量
GPT-4o 128K 约10万字
Claude 3.5 200K 约15万字
Gemini 2.0 1M 约75万字
Kimi 1.5 200K 约15万字
Qwen 2.5 128K 约10万字

Gemini 2.0 的 1M Token 窗口可以一次读完《战争与和平》全文还有余。


技术难点:长上下文为什么难做?

短文本到长文本,不是简单的”堆内存”,核心挑战:

1. 注意力机制的平方复杂度

标准 Self-Attention 的计算复杂度是 O(n²),n 是序列长度:

  • 4K 上下文:16M 次计算
  • 128K 上下文:16B 次计算(差1000倍)
  • 1M 上下文:1T 次计算(差6万倍)

2. 位置编码的外推问题

Transformer 需要知道每个 Token 的位置。训练时没见过超长序列,位置编码会”失效”。

主流解决方案:

  • RoPE(Rotary Position Embedding):相对位置编码,支持外推
  • YaRN:专门优化长上下文的 RoPE 扩展
  • ALiBi:用线性偏置替代绝对位置编码

3. KV Cache 内存爆炸

Attention 计算需要缓存 Key-Value:

KV Cache 大小 = 2 × 层数 × 隐藏维度 × 序列长度

1M 上下文、70B 参数模型,KV Cache 可能需要 几百 GB 显存


主流优化技术

稀疏注意力(Sparse Attention)

不计算全连接注意力,只算局部和全局锚点:

# 稀疏注意力示例:Local + Global
def sparse_attention(query, key, value, local_window=512, global_indices=[0, seq_len-1]):
    # 局部窗口注意力
    local_output = causal_local_attention(query, key, value, local_window)
    
    # 全局 token 注意力
    global_output = global_attention(query, key, value, global_indices)
    
    return local_output + global_output

代表工作:Longformer(局部+全局)、BigBird(随机+局部+全局)

滑动窗口 + 无限注意力

用固定大小的窗口模拟无限上下文:

┌──────────────────────────────────────────────┐
│  W2  W1  W0  ←  当前 Token                    │
│       ↓                                      │
│  [缓存区] ← 定期压缩/汇总历史信息              │
└──────────────────────────────────────────────┘

代表工作:Mistral 的 StreamingLLM、H2O(Heavy-Hitter Oracle)

KV Cache 量化压缩

将 KV Cache 从 FP16 量化到 INT4 / INT8,大幅降低显存占用:

精度 显存占用 质量损失
FP16 100%
INT8 50% <1%
INT4 25% 2-5%

代表工作:KIVI、LM-Infinite

分层检索(Hierarchical Retrieval)

不把全部文档塞进上下文,而是按需检索相关段落:

用户问题 → 检索相关段落 → 拼接 → LLM 生成
         ↑ 不是全文,是Top-K段落

这本质上是 RAG + Long-Context 的结合。


Long-Context 的实用场景

场景 窗口需求 价值
长篇小说阅读 100K+ 一次性分析全书
代码库理解 200K+ 理解多文件依赖
论文精读 128K 全文+注释+问答
视频理解 1M 多帧图像序列
法律文档 500K+ 整本案规汇编
财报分析 200K 多份年报对比

💡 小结

上下文窗口的扩张解决了大模型”记不住”的问题,但 O(n²) 复杂度是根本瓶颈。

当前主流方向:

  1. 稀疏化:不全量计算注意力
  2. 量化:压缩 KV Cache
  3. 外推:让模型能在训练范围外工作
  4. RAG 补充:不是塞更多,而是找更准

未来趋势:无限上下文 + 精准检索 的组合会是主流。


相关阅读:RAG 深度解析:如何让大模型拥有最新知识