第十阶段 · 第77篇2026-04-02

上下文管理:AI如何记住你在说什么

上下文窗口有限,怎么让AI记住关键信息?滑动窗口、摘要压缩、重要性排序...这些策略让AI在有限空间里「装下」最重要的内容。

阅读时间:11分钟
💭 先想一个问题

你在和一个AI聊天,已经聊了50轮。突然你问:「还记得我最开始说什么吗?」AI能回答吗?

大概率不能。为什么?因为AI的「记忆容量」是有限的——这就是上下文窗口(Context Window)。

01 上下文窗口:AI的「工作台」

想象你在厨房做菜。你的切菜板大小有限,一次只能放这么多食材。如果切菜板满了,你想切新的菜,就必须把一些菜先挪到旁边的盘子里。

AI的上下文窗口就像这块切菜板。它是一块「工作台」,里面装着:

上下文窗口的结构
上下文窗口(例如:8K tokens)系统提示System Prompt对话历史Conversation History当前问题Current Question~500 tokens~6000 tokens~1500 tokens总计:8000 tokens(窗口已满)当对话历史增长,需要删除旧内容才能加入新问题这就是上下文管理的核心挑战:在有限空间里保留最重要的信息

Token是什么?

Token是AI的「最小单位」。一个英文单词≈1个token,一个汉字≈1.5-2个token。8K的窗口≈4000个汉字或8000个英文单词。

02 滑动窗口:保留最近的对话

最简单的策略是什么?保留最近的N轮对话,删掉旧的。就像一条传送带,新的进来,旧的出去。

滑动窗口策略示意
滑动窗口(最多10轮)第1轮(已删除)第2轮(已删除)第3轮第4轮第5轮第6轮第7轮第8轮第9轮第10轮第11轮(新)新对话进入窗口❌ 第1-2轮被丢弃

滑动窗口的优缺点

✅ 优点:

  • 实现简单,计算快速
  • 保留最近对话,符合直觉
  • 性能稳定,易于预测

❌ 缺点:

  • 可能丢失重要的早期信息
  • 无法区分重要和不重要的对话
  • 不适合长对话场景
03 摘要压缩:把对话「浓缩」

更聪明的做法是什么?不是直接删除,而是把旧对话「压缩」成摘要。就像你看书时做的笔记——不是记住每句话,而是记住关键内容。

摘要压缩流程
原始对话(第1-10轮)用户:我想学做川菜AI:推荐麻婆豆腐、宫保鸡丁...用户:麻婆豆腐怎么做?AI:需要豆腐、肉末、豆瓣酱...用户:豆腐要嫩豆腐还是老豆腐?AI:用嫩豆腐口感更好......(更多对话)...共 2000 tokens摘要压缩摘要内容📝 用户在学习川菜制作📝 重点:麻婆豆腐📝 已讨论:食材选择(嫩豆腐)📝 下一步:烹饪步骤📝 用户偏好:偏辣口味压缩后:300 tokens压缩比:85%(节省1700 tokens)

摘要压缩怎么做?有几种方式:

摘要压缩的几种方式
1. 定期摘要:每10轮对话,让AI生成一个摘要,替换这10轮的原始对话。
2. 分层摘要:近5轮保留原文,5-15轮生成简短摘要,15轮之前生成超短摘要。
3. 智能摘要:让AI判断哪些信息重要,只保留关键信息。
4. 递归摘要:摘要的摘要。比如:10轮→摘要A,10轮→摘要B,然后摘要A+B→超级摘要。
04 重要性排序:保留关键信息

还有一种更高级的策略:不是按时间删除,而是按重要性删除。就像你会记住考试重点,但忘记无关的细节。

重要性排序策略
所有对话(按重要性排序)🔴 高重要性(必须保留)用户目标:学做川菜关键决策:选择麻婆豆腐用户偏好:偏辣口味🟡 中重要性(尽量保留)食材清单烹饪步骤技巧要点⚪ 低重要性(可压缩/删除)闲聊内容重复问题简单问答客套话当窗口不足时,优先删除低重要性内容,保留高重要性内容

如何判断重要性?

可以用AI来判断。比如,让AI给每段对话打分:1-10分,10分最重要。也可以用规则:提到用户目标→高分,闲聊→低分。

05 组合策略:最优方案

实际上,最好的方案是把以上策略组合起来用:

组合上下文管理策略
组合策略:分层管理第一层:始终保留(~1000 tokens)• 系统提示(System Prompt)• 用户目标、偏好、关键决策第二层:滑动窗口(最近5轮,~2000 tokens)• 最近的对话,完整保留• 包含当前问题的上下文第三层:摘要压缩(第6-20轮,~1000 tokens)• 较老的对话,生成摘要• 保留关键信息,压缩细节第四层:递归摘要(第21轮之前,~500 tokens)• 更老的对话,超短摘要• 只保留最核心的信息总计:4500 tokens / 8000 tokens(还有空间处理新问题)通过分层管理,既保留了重要信息,又留出了充足的窗口空间
06 上下文管理的实际应用

让我们看一个实际的例子。假设用户和AI聊了50轮,讨论如何开发一个AI应用:

实际案例:AI应用开发对话
第1-5轮:用户想做AI客服,讨论需求
第6-15轮:讨论技术方案(选择模型、设计架构)
第16-30轮:编写代码、调试问题
第31-45轮:测试、优化性能
第46-50轮:部署上线、监控告警
第51轮:用户问:「还记得我们最开始讨论的需求吗?」

如果用组合策略,AI会这样处理:

AI的回答

「当然记得。您最开始想做AI客服系统,目标用户是电商平台的客户。主要需求包括:自动回答常见问题、订单查询、退换货处理。我们选择了GPT-4作为基础模型,结合RAG技术实现了知识库检索功能。整个过程历经需求分析、技术选型、开发测试,现在已经成功上线运行了。」

总结

上下文管理是AI系统的「记忆管理艺术」。在有限的窗口里,如何保留最重要的信息,同时又能处理新的对话?这需要策略:

核心要点

📌 滑动窗口:简单快速,但可能丢失重要信息

📌 摘要压缩:智能压缩,保留核心内容

📌 重要性排序:按价值保留,删除无关内容

📌 组合策略:分层管理,最优方案

记住,没有一种策略是完美的。关键是要根据实际场景选择合适的策略组合。