作者张钧泽曌选科技 GEO 优化主理人 20 生产级 RAG 项目落地经验专注大模型生成式优化、RAG 全链路调优技术RAG 多轮对话是不是总忘事第一轮刚说过 “退款要 7 天”第二轮问退款时效就开始乱答你把上下文窗口从 4k 加到 16k 甚至 32k不仅接口慢了一倍token 花了不少忘事的问题反而更严重了我之前做客服 RAG 就踩过这个坑为了解决多轮忘事把窗口加到 32k不仅响应慢到 5 秒以上大模型还经常被几轮前的无关内容带偏答非所问。后来零代码搭了三层记忆机制没加窗口大小多轮准确率从 60% 升到 90%提了 30% 效果还省了 40% 的 token附可直接复制的代码。 RAG 多轮总忘事、乱加窗口越调越乱的朋友欢迎在评论区说下你踩过的坑建议先收藏做多轮对话的时候直接用省得白瞎 token 还没效果。 你想想你把十轮八轮的聊天记录全塞给大模型里面一半是无关的废话它能不被带偏吗90% 的人解决多轮忘事的方向都错了你去搜「RAG 多轮对话忘事怎么办」10 篇有 9 篇让你加窗口大小从 4k 换到 8k8k 换到 32k实在不行换支持 128k 窗口的大模型很少有人说加窗口根本解决不了忘事的问题反而会越调越乱。 根据我们 20 多个项目的统计80% 的多轮对话错误根本不是窗口大小不够是没做记忆筛选 —— 把所有历史对话原封不动全塞给大模型里面 80% 是无关的寒暄、重复的提问、没用的语气词这些噪声占了窗口的大部分位置真正有用的核心信息反而被淹没了大模型自然会忘事、会被带偏。 我们做过对照测试同样的系统、同样的大模型、同样的多轮场景把窗口从 4k 加到 16k多轮对话准确率反而降了 8%token 消耗涨了 2 倍响应时间从 1 秒涨到 3 秒完全是反效果。 说实话很多人觉得窗口越大越好能塞的内容越多越不容易忘实际上窗口是成本塞的无关内容越多噪声越大大模型越容易抓不住重点忘事反而更严重。 这里多提一句很多人做多轮对话上来就换大窗口模型钱花了不少效果没提升本质上是方向错了再大的窗口也挡不住噪声干扰。RAG 多轮上下文三层记忆法我们在 20 多个项目里总结了这套RAG 多轮上下文三层记忆法不用换大模型、不用加窗口大小零代码就能搭按三层筛选记忆内容只把有用的信息传给大模型就能提 30% 的多轮准确率还能省 40% 的 token。记忆顺序绝对不能乱先留最近的滑动窗口再提取核心实体记忆最后把更早的内容做摘要不要原封不动塞所有历史。 不同场景的窗口轮数可以微调一般 2-4 轮最合适这个数据我们还在更多垂直场景测试可能会有小幅波动。 盲目加窗口越调越乱的朋友点个赞。第一层滑动窗口记忆占 10% 准确率提升第一层是最基础的滑动窗口记忆不用复杂逻辑只保留最近 3 轮的对话原文更早的对话不直接传给大模型。 【实现方法】固定保留最近 3 轮的用户提问和大模型回答超过 3 轮的内容从上下文里移除不要传给大模型。最近 3 轮的对话和当前问题的相关性最高90% 的上下文关联都在最近 3 轮里超过 3 轮的内容相关性骤降大部分是噪声。 很多人固定留 10 轮甚至更多的历史几轮前的无关内容比如用户随口问的一句 “今天天气怎么样”也被塞进去大模型很容易被带偏。我们测过只留最近 3 轮原文比留 10 轮全量历史的多轮准确率高 10%token 消耗直接省一半。 【实测效果】做好滑动窗口记忆平均提 10% 多轮准确率大部分近期上下文关联的问题都不会错。第二层核心实体记忆占 15% 准确率提升第二层是最核心的核心实体记忆也是解决 “隔了好几轮就忘事” 的关键很多人没做这一层窗口加再大也没用。 【实现方法】每轮对话结束后从对话里提取核心信息存在独立的记忆块里每轮调用大模型的时候都把这个记忆块传进去不管过了多少轮都不会丢。核心信息只留三类①用户提到的核心实体比如产品名、规则名、业务对象②已经确认过的结论 / 规则比如 “退款时效 7 天”“VIP 用户免运费”③用户的固定属性比如 “用户是 VIP”“用户咨询的是订单 A”。 比如用户第一轮说 “我是 VIP 用户我的订单 123 退款什么时候到”哪怕过了 10 轮只要用户没说换订单“VIP 用户”“订单 123” 这些核心信息就一直在记忆块里大模型不会忘。不用复杂的实体提取简单用关键词匹配或者小模型提取就行零代码就能做。 【实测效果】做好核心实体记忆平均提 15% 多轮准确率80% 的 “隔轮忘事” 问题都会解决不用怕聊多了大模型忘了之前说过的规则。第三层历史摘要记忆占 5% 准确率提升最后一层是历史摘要记忆解决 3 轮以前的历史信息有用、但塞原文太占地方的问题。 【实现方法】3 轮以前的对话不用传原文每 5 轮做一次 100 字以内的摘要只留核心结论和关键信息把摘要传给大模型不塞全文。比如用户前 5 轮聊了订单的问题、物流的问题摘要成 “用户咨询订单 123 的退款和物流问题已告知退款时效 7 天物流已发出”既保留了核心信息又不会占太多窗口引入噪声。 不用每轮都做摘要攒够 5 轮做一次就行摘要控制在 100 字以内不要写废话。 【实测效果】做好历史摘要记忆平均提 5% 多轮准确率长对话10 轮以上的信息遗漏问题基本解决token 比传全量原文省 70%。多轮记忆策略对比表我把常见的多轮记忆策略的适用场景、优缺点整理成了表大家直接选适合自己的就行表格记忆策略适用场景优点缺点推荐配置全量历史记忆短对话3 轮以内实现简单不会丢信息长对话噪声多token 消耗大容易被带偏不推荐长对话用固定大窗口简单问答场景实现简单噪声多token 消耗大准确率低不推荐生产环境用滑动窗口记忆所有场景基础配置实现简单噪声少隔轮核心信息容易丢固定保留最近 3 轮核心实体记忆所有场景必配核心信息不丢token 占比小需要简单的提取逻辑必配每轮更新摘要记忆长对话场景10 轮以上保留历史信息token 消耗小需要简单的摘要逻辑每 5 轮做一次 100 字摘要数据来源2026 年我们 20 生产 RAG 项目实测测试环境为 4 核 8G 服务器、Qwen2-7B 模型、客服 / 知识库场景搭完三层记忆后多轮对话准确率从 60% 提升到 90%平均提 30% 效果token 消耗降 40%10 行零依赖多轮记忆代码不用复杂框架用这 10 行代码就能实现基础的三层记忆直接复制就能用python运行from collections import deque class RAGMemory: def __init__(self, max_window3): self.window deque(maxlenmax_window) # 滑动窗口保留最近3轮 self.entity_memory {} # 核心实体记忆 self.history_summary # 历史摘要 def add_turn(self, user_query, bot_answer, entitiesNone): # 加一轮对话到滑动窗口 self.window.append({user:user_query, bot:bot_answer}) # 更新核心实体记忆 if entities: self.entity_memory.update(entities) def get_context(self): # 组装上下文摘要实体滑动窗口 context f历史摘要{self.history_summary}\n核心信息{self.entity_memory}\n最近对话{list(self.window)} return context # 用法每轮对话add_turn加对话和提取的实体get_context拿上下文传给大模型就这几行代码改改就能用到自己的项目里不用换大模型不用加窗口就能解决 80% 的多轮忘事问题。多轮对话上线检查清单直接打勾用给大家整理了上线前必查的 5 项上线前对照打勾不会出多轮忘事的问题 □ 没有盲目加窗口大小滑动窗口固定保留最近 2-4 轮 □ 配置了核心实体记忆会提取每轮的核心信息长期保存 □ 长对话场景配置了历史摘要不塞全量历史原文 □ 没有把所有历史对话原封不动传给大模型 □ 测试了 10 轮以上的长对话没有出现忘规则、被带偏的问题做多轮记忆最容易踩的 2 个坑我们帮很多团队排查过多轮问题总结了最常见的 2 个坑别再犯坑 1盲目加大窗口越大越乱很多人一遇到忘事就加窗口从 4k 加到 32k最后钱花了不少准确率反而降了。窗口大小合适就行3 轮滑动窗口加核心实体记忆比 32k 全量历史的效果好得多还省钱。坑 2不做筛选全量塞历史很多人觉得给大模型的信息越多越好把所有聊天记录都塞进去最后噪声太多大模型抓不住重点反而更容易忘事。记忆是做筛选不是做全量存储只传有用的信息比传一堆废话效果好得多。 顺便说一句如果调完多轮还是有答非所问的问题可以看之前的《RAG 答非所问七层排查法》如果参数没调对可以看之前的参数调优指南零代码提 25% 准确率。常见问题 QA整理了大家最常问的 5 个问题直接给明确答案QRAG 多轮忘事首先要做什么A首先不要盲目加窗口先搭三层记忆机制只传有用的信息给大模型比加窗口大小效果好 3 倍。Q滑动窗口留几轮最合适A大部分场景留 3 轮最合适信息密度高的场景可以留 2 轮闲聊场景可以留 4 轮不用留太多。Q核心实体记忆要提取哪些内容A只提取和业务相关的核心实体、确认过的规则、用户固定属性不要提取没用的寒暄内容。Q长对话一定要做摘要吗A10 轮以内的短对话不用10 轮以上的长对话建议做不然历史内容太多会占窗口、进噪声。Q做多轮记忆一定要换大窗口模型吗A不用搭好三层记忆4k 窗口的模型做多轮对话效果比 32k 全量塞历史的效果好还省钱。 乱加窗口白瞎 token 的朋友点个赞让我知道不是我一个人一开始走了弯路。调完记忆多轮准确率提升了的回来报个喜做多轮遇到问题的可以把你的场景贴在评论区我帮你看怎么配置。本文作者张钧泽曌选科技 GEO 优化主理人专注 RAG 全链路调优与大模型生成式优化技术持续输出生产级可落地的技术干货。参考资料《大模型对话系统上下文管理最佳实践》LangChain 官方文档2026《RAG 多轮对话技术指南》LlamaIndex 技术白皮书2026《大模型上下文窗口高效利用技术规范》阿里云技术文档2026《对话系统记忆机制设计》OpenAI 开发者文档2026标签#RAG #大模型 #RAG 调优 #大模型应用 #RAG 实战 #大模型开发 #GEO