← 全部文章

上下文窗口越长越好?4 个被忽略的代价

2026-05-08#上下文515 字 · 约 1 分钟Read in English ↗

结论先行

1M 上下文听起来很爽,真正用起来你会发现:更长不等于更好。

已实测上下文

表面与里子

模型厂商竞相把上下文窗口推到 200K、1M、10M。看起来很爽——所有资料一次塞进去就好了。

但实际生产里,长上下文不是免费午餐

4 个真实代价

1. “lost in the middle” 现象

研究反复验证:模型对上下文 开头和结尾 的信息最敏感,中间段会被 “压缩”。

你把关键信息放在第 80 页第 4 段,模型可能视而不见。

2. 价格按 token 线性走

1M 上下文用满,单次调用成本可能是普通调用的 100 倍。这笔账要算进 P&L

3. 延迟随窗口长度上升

首 token 时间(TTFT)和总响应时间都会变长。用户感受得到,尤其是流式输出。

4. 缓存命中率下降

如果你用 prompt caching,每次窗口里塞不同的长文档会破坏缓存。缓存命中是 prompt caching 节省成本的全部秘密

替代策略

不是"窗口越长越好",而是"用对长度":

知识量 推荐策略
< 10K tokens 直接全部塞进上下文
10K – 200K 长上下文 + prompt caching
> 200K RAG / 分段处理 / 摘要后注入

长上下文是工具,不是答案。当你听到"上下文不够"时,先问自己:是真的不够,还是上下文工程做得不够好?

这篇对你有用吗?

如果这篇文章对你有帮助,可以请博主喝杯咖啡 ☕