提示词与上下文工程入门已核验核验于 2026-09-19

上下文窗口

Context Window (别名:上下文长度)

一次推理能同时参考的 Token 容量——是「当下能看见」的范围,不是记忆,也不是训练语料。

本页目录
快速跳转

它是什么

上下文窗口是模型在一次推理中能够共同参考的 Token 容量。它装的是这一次请求要用到的全部材料:系统指令、对话历史、用户输入、工具返回结果、检索到的片段,以及正在生成的输出。

它是一个容量上限,不是记忆,也不是训练语料。训练语料是模型「学过」的东西(已压进权重),窗口是它「此刻看着」的东西——两者的区别,就是「记得」和「在读」的区别。

为什么需要它

模型只能依据当前窗口加上训练形成的参数来作答。所以窗口直接决定了这一次能带上多少证据,也直接决定了延迟与成本——材料越长,每次请求要算的东西越多。

它还是所有上下文工程的物理边界。所谓「上下文工程」,很大一部分工作就是在这条边界之内做取舍:哪些必须原文放进来,哪些摘要就够,哪些应该先落到检索里、需要时再捞。没有这条边界,取舍也就不存在了。

它如何工作

窗口里的每一部分先被切成 Token,再作为一个有序序列送进模型;注意力机制让序列中的位置彼此交换信息。

这里有两个必须知道的机制事实:

  • 注意力不是均匀分配的。 位置之间可以互相看见,不等于每段都被同等重视。材料越长、越混杂,越可能有人被忽略——这是「窗口很大」和「信息被用上」之间的真实落差。
  • 超限不是自动处理的。 装不下的时候,系统必须在四种动作里选一种:截断、摘要、把材料挪到检索里按需取回、或者换更强的压缩策略。模型不会替你决定,它只会按你给的顺序读你给的东西。

必须澄清的误会

上下文窗口 ≠ 长上下文。 前者是那个容量,后者是「把容量做大」这条路线。这两年被反复讨论的「窗口到 100 万了,是不是不用做检索了」正落在这里:窗口变大确实降低了「放不下」的紧迫性,但取舍没消失,只是换了位置——从「塞不塞得下」变成「该挑哪些塞」。而且全量塞入意味着每问一次都按全部 Token 付费,还更容易被无关内容带偏。

上下文窗口 ≠ 记忆。 会话说得越长,早期内容越可能被挤出去;把「上次说过的事」当成默认会被记住,是很多 Agent 在长对话里开始胡说的根因。真需要跨会话保留的东西,要写成长期记忆落到外部存储。

上下文窗口 ≠ 训练知识。 前者是「你这次给它的」,后者是「它自己已经会的」。模型答得出问题,可能来自任何一边——判断依据是否可靠,得看它引用的是哪一边。

真实例子

一个客服助手的单次请求可能同时要塞进:一段服务规范、十轮对话历史、一份客户资料、三段知识库结果。

这些加起来一旦超过窗口,就必须做决定。经验上有效的做法不是「平均截断」,而是按可替代性裁:规范是必须原文保留的(它是行为约束,摘要会失真);十轮历史可以压成一句结论(这是可摘要的);客户资料只留当前问题相关的字段;知识库结果改成先检索、按需取回(这是可检索的)。

观察点在于:裁掉哪一类时你会开始不放心。 那个位置就是这套系统真正的约束所在。

什么时候适合与不适合

适合:放完成当前任务必需且可信的材料,并给输出留出余量。一个常被忽略的细节是——生成的内容也占窗口,所以要按「输入 + 输出」一起算,而不是只看输入。

不适合:把整个知识库、全部历史、所有工具文档无差别塞进去。冗余与互相冲突的材料不只是浪费钱,还会实际降低判断质量:模型要在一堆无关内容里找那一条,找错的概率上升。

判断颗粒度:不要问「窗口够不够大」,要问「这一类材料值得占多少格」。能回答后者的团队,即使窗口很小也跑得稳;只能回答前者的,窗口再翻十倍也还是会在某次请求上崩掉。

亲自试一下

列一次你线上真实请求里的六类内容:系统指令、对话历史、用户输入、工具结果、检索片段、待生成输出。

逐类估算 Token,然后给每一类打一个标签:必须 / 可摘要 / 可检索 / 可删。

全程约 15 分钟。观察点是你的裁剪顺序——当总量超限时你第一个动手的是哪一类?如果答案是「系统指令」,说明你还把约束当成可压缩的东西;如果答案是「历史」,方向通常是对的。

把这份顺序写下来,它就是你后面做上下文预算时的默认规则。

接下来学什么

上下文窗口是第 1 站 地基 · 模型是什么 的容量边界,也是后面所有取舍的物理起点。

顺着本站走:先看 Token(容量的计量单位)与 大语言模型(窗口里的东西是怎么被处理的)。

再往下一步就进入取舍本身:窗口装不下时把材料交给 文档切片 与 检索 去按需取回,也就是第 3 站 给知识;想看清「窗口变大后还要不要检索」,读 RAG 词条里对 长上下文 的那组对比。

来源与修订

窗口的构成(系统指令、历史、工具结果、检索资料与待生成输出共同占用容量)与「它是工作记忆、不等于训练语料」的定位,参考 Anthropic 官方 Context windows 文档(访问于 2026-09-19)。Token 化后按有序序列处理、由注意力机制交换信息的背景,参考 Attention Is All You Need(arXiv 1706.03762)。

一处刻意的留白:本文不固化任何具体上限数字。 容量随模型版本变化,写进来必然过期;而且真正该被记住的是「怎么在边界内做取舍」,不是这个边界当前在哪儿。

修订日期 2026-09-19:本条由生成模板改为决策页——补「必须澄清的误会」一节(含对长上下文、对长期记忆两组区分),把「超限时的四种动作」写成机制,去掉生成期的引用标记,补 boundaries 与 minAction。

Learning questions

这个概念出现在哪些题里

下面的题目直接引用了本词条,适合先做判断,再回到正文核对边界。

Case practice

这个概念出现在哪些案例里

案例中的这些关卡会把概念放进业务约束、证据与取舍里练一遍。

Learning navigation

学习导航

沿认知链路:你现在在第 1 站,下一站是「沟通 · 怎么把需求说清楚」:先沿主路径补上这一层。

Relation topology

概念关系

本词条在知识拓扑中的连接关系。涵盖前置依赖、组成要素、对比差异与应用场景。

拓扑图谱网络 · 一度关联场

可拖拽节点、滚轮缩放、点击节点探索

Local relation field

上下文窗口的一层关系

4 个节点 · 5 条直接关系

关系类型
图谱进入视口后加载

交互图谱之外,本页下方保留完整文字关系与词条链接。

Source register

核验来源

  1. Context windowsAnthropic · 访问于 2026-09-19
  2. Attention Is All You NeedarXiv · 访问于 2026-09-19

发布 2026-07-29 · 更新 2026-09-19 · 核验 2026-09-19