AI Fundamentals for Beginners Pink Book
AI 入门基础
第四部分 上下文与 RAG12

上下文窗口:有限台面上的摆放之道

进阶25 分钟第 12 / 19 章

一次请求能装下的内容就这么大一张台面,而且中间那段最容易失焦。窗口、中段丢失、对话压缩、长期记忆——四个机制决定了「AI 忘事」的全部原因。

学完本章你能做到

  • 说清上下文窗口的构成:规则、历史、资料、问题共享同一额度
  • 利用「首尾清晰、中间失焦」的规律摆放关键信息
  • 解释长期记忆的实现方式及其代价

学习与练习

从课程目录定位知识点,按章节完成练习,随时接着上次继续。

先理解

窗口就这么大一张台面

模型一次能「看见」的内容总量,就是上下文窗口,以 token 计。系统提示、对话历史、参考资料、你的问题——全都摆在这同一张台面上,共同消耗额度。 台面尺寸因模型而异,从十几万到百万级 token 不等,但无论多大都有三推论: 装不下就得取舍:塞入的资料越多,留给历史和问题的空间越少,费用也线性上涨; 「支持超长上下文」不等于「塞得越满越好」——下一个知识点会讲为什么; 报错「超出上下文长度」时,最先该删的是冗余历史,其次是无关资料。 用餐桌做比喻:上下文窗口就像一张吃火锅的桌子。锅底调料(系统提示)、已点的菜(历史对话)、新端上来的菜(参考资料)、你正在夹的菜(当前问题)——全都要摆在同一张桌上。桌子大小因模型而异,但无论多大的桌子: 摆满了就得撤一些旧菜(删历史或资料) 菜越多吃得越慢(响应变慢、费用上涨) 放在桌子中间的菜最容易被忽略(中段丢失效应)

先停一下

中段丢失:开头结尾看得清,中间易失焦

实测多个模型都会呈现同一个规律:对上下文开头和结尾的信息利用率最高,埋在中段的内容随总长度增加逐渐「失焦」——不是完全看不见,而是容易被忽略、被概括、被张冠李戴。 实操摆放策略: 最重要的约束放开头(系统提示位置)或结尾(紧贴问题的位置); 大块参考资料放中间,但要接受它们的利用率打折; 指望模型从五十页资料正中间挖出一个小数字的任务,拆成多次问,或者先把范围缩小再问。 这不是模型偷懒,是注意力机制在超长序列上的固有特性,短期不会消失。

先理解

对话压缩:丢掉的常常是最早的约定

聊得够久,一些产品会自动压缩早期对话来腾地方——把旧消息摘要成几句话。省空间的代价是:被压掉的字句永久丢失,而丢失的经常正是最早定下的规矩。 这就是「前说后忘」的技术根源:不是模型健忘,是它已经看不见那段原文了。 应对办法很朴素: 长会话定期重申关键约束(「再次强调:输出不超过 200 字,不要编造数字」); 话题切换时,果断开新会话,把必要背景重新贴一遍——新会话的干净窗口,胜过老会话的臃肿记忆。

看个例子

长期记忆:提取、冲突、注入,以及代价

「让 AI 记住我」的产品能力,实现方式基本都是三步: 提取:从对话里识别值得保存的信息(你的称呼、偏好、项目背景); 存储:写进一个独立于对话的数据库; 注入:下次对话开始时,检索相关条目拼进上下文。 它带来的代价也要心里有数: 记忆会过时——三个月前的职位信息今天还在生效; 记忆会冲突——新旧条目打架时模型听谁的不可控; 记忆有隐私——里面存着你说过的话,产品必须有查看和删除入口才算合格。 使用任何「记忆功能」前,先找到那个入口,看看它到底记了你什么。

诊断一次「前说后忘」

主动制造一次长对话失忆,然后修复它。

  1. 1开启新会话,第一条消息定下两条硬约束(如「只用表格回答」「每次不超过 100 字」)
  2. 2连续追问 15 轮以上,观察约束何时开始松动
  3. 3用两种方式修复并对比:a. 当场重申约束 b. 开新会话并粘贴摘要

验收清单

  • 亲眼观察到约束随对话变长而失效
  • 能解释失效原因是上下文管理而非模型「不听话」
  • 形成了自己的长会话使用习惯

学完后记得保存进度

Completion marks stay in this browser. Sign in to remember your last chapter and reading position.