🧭 上下文管理自举机制 v2.0¶
四级记忆体系:重要的信息自动记住,没用的信息自动忘掉
参考 2026 年 LLM 长上下文管理、记忆系统、注意力机制最佳实践
📋 目录¶
1. 核心痛点:为什么上下文总是不够用?¶
上下文的四种浪费¶
| 浪费类型 | 占比 | 典型案例 |
|---|---|---|
| 🗑️ 垃圾信息 | 40% | 错误重试的日志、没用的调试输出、重复的提示词 |
| 🔄 重复信息 | 25% | 同样的内容翻来覆去说,每次都把之前说过的再复述一遍 |
| 📝 过时信息 | 20% | 3 天前的任务背景、已经解决了的问题讨论、过期的配置 |
| ❌ 根本不重要的信息 | 15% | 闲聊、礼貌用语、中间过程的碎碎念 |
真实踩坑案例:
❌ 2026-07-28:上下文溢出 现象:同一个会话聊了 100 轮后,开头说的用户偏好全都忘了 原因:80% 的上下文是没用的中间过程,真正重要的 20% 被稀释了 后果:用户不得不反复重申自己的偏好,体验极差
❌ 2026-07-27:关键信息被淹没 现象:用户说过「我用 Windows,路径记得用反斜杠」,3 轮后就忘了 原因:这条重要信息混在几百行的对话历史里,注意力机制抓不住 后果:生成的代码路径不对,又浪费 10 分钟返工
2. 四级记忆体系架构¶
L4 核心记忆 Core Memory
↑ 跨会话永久保留,除非显式删除
↑ 用户偏好、长期约定、重要的个人信息
L3 任务记忆 Task Memory
↑ 本次任务的所有上下文,任务完成后归档
↑ 任务目标、已知条件、约束、中间结论
L2 会话记忆 Session Memory
↑ 本次对话的完整历史
↑ 用户说的每一句话、工具调用日志
L1 瞬时记忆 Working Memory
↑ 最近 5-10 轮对话
↑ 当前正在处理的内容
每层记忆的特性¶
| 层级 | 容量 | 生命周期 | 存储位置 | 检索方式 |
|---|---|---|---|---|
| L1 瞬时记忆 | 5-10 轮 | 几分钟 | 上下文窗口顶 | 直接访问 |
| L2 会话记忆 | 完整会话 | 本次对话 | 完整上下文 | 滑动窗口 + RAG |
| L3 任务记忆 | 一个任务 | 几小时到几天 | 任务归档库 | 按任务 ID 检索 |
| L4 核心记忆 | 无限 | 永久 | 持久化存储 | 语义检索 + 关键词匹配 |
3. 重要性评分算法¶
每条信息进入系统时,自动计算重要性得分(0-10 分):
评分维度¶
| 维度 | 权重 | 评分标准 |
|---|---|---|
| 👤 用户偏好 | 3 分 | 用户明确说「我喜欢 xxx」「我习惯 xxx」「不要 xxx」 → +3 分 |
| 🎯 任务目标 | 2 分 | 任务的核心要求、约束、验收标准 → +2 分 |
| 🔧 环境信息 | 2 分 | 操作系统、软件版本、路径、配置、Key → +2 分 |
| 💡 学到的新知识 | 1 分 | 新的事实、新的规则、踩过的坑 → +1 分 |
| 📅 时效性 | 1 分 | 长期有效 +1,短期有效 0,过期 -1 |
| 🔄 被引用次数 | 1 分 | 每被引用一次 +0.5,最多 +1 分 |
示例评分¶
| 信息内容 | 得分 | 应该去哪一层 |
|---|---|---|
| 「我是 Windows 系统,路径记得处理反斜杠」 | 3(用户偏好)+ 2(环境)= 5 分 | L4 核心记忆,永久保留 |
| 「这次的任务是把 README 从 8/10 优化到 10/10」 | 2(任务目标)= 2 分 | L3 任务记忆,任务完成后归档 |
| 「skill_view 的 name 参数不要带 .md 后缀」 | 2(环境)+ 1(新知识)= 3 分 | L4 核心记忆,工具调用自举 |
| 「刚才的命令执行失败了,错误信息是 xxx」 | 0 分(瞬时,解决了就没用了) | L1,解决后就可以丢掉 |
| 「好的,明白了」 | -1 分(完全没用的礼貌用语) | 直接过滤,不进任何记忆 |
分级阈值¶
| 得分 | 记忆层级 | 保留策略 |
|---|---|---|
| ≥ 5 分 | L4 核心记忆 | 永久保留,跨会话生效 |
| 2-4 分 | L3 任务记忆 | 本次任务期间保留,完成后归档 |
| 0-1 分 | L2/L1 会话记忆 | 只在本次会话保留,结束后丢弃 |
| < 0 分 | 直接丢弃 | 不存入任何记忆 |
4. 记忆升降级规则¶
自动升级(临时记忆 → 核心记忆)¶
触发条件 1:同一条信息被用户反复提到 3 次以上
例:用户第三次说「路径不要硬编码」
动作:自动从 L2 升级到 L4,加入「用户偏好」核心记忆
触发条件 2:同一条信息被引用到 3 个不同的任务
例:「skill_view 不要带 .md 后缀」在 3 个任务里都用到了
动作:从 L3 升级到 L4,加入「工具调用自举」知识库
触发条件 3:用户明确说「记住这个」
动作:直接加入 L4 核心记忆
自动降级(核心记忆 → 归档)¶
触发条件 1:一条核心记忆连续 30 天没有被用到
动作:降级到归档库,需要时再调出来
触发条件 2:用户说「这个不对,以后不要这样了」
动作:标记为过时,不再主动引用
触发条件 3:有更新的信息覆盖了旧的
例:用户说「我现在用 Mac 了,不是 Windows」
动作:旧的 Windows 偏好标记为过时,新的 Mac 偏好加入 L4
垃圾回收机制¶
每 10 轮对话自动运行一次:
1. 清理 L1:超过 10 轮,且得分 < 1 分的,移出上下文窗口
2. 清理 L2:重复的信息、已经解决了的问题讨论,压缩成摘要
3. 清理 L3:任务完成超过 24 小时,自动归档
4. 清理 L4:超过 30 天没用到的,降级到冷存储
5. 上下文压缩与摘要¶
三类压缩策略¶
| 信息类型 | 压缩方式 | 压缩率 |
|---|---|---|
| 工具调用日志 | 只保留结论,丢掉详细输出 | 90% |
| 错误重试过程 | 只保留最终解决方法,丢掉中间试错 | 80% |
| 长对话 | 抽取要点,每 20 轮做一次摘要 | 70% |
摘要模板¶
每 20 轮对话自动生成一份摘要,替换掉原始的长对话:
## 会话摘要(第 1-20 轮)
### 核心目标
xxx
### 已完成
- xxx
- xxx
### 学到的新知识/新规则
- xxx
- xxx
### 待解决
- xxx
- xxx
### 重要的用户偏好
- xxx
- xxx
效果:20 轮对话 → 压缩到 100 字以内,信息损失 < 5%
6. 核心记忆库¶
目前已入库的 L4 核心记忆¶
| 类别 | 内容 | 重要性得分 | 入库时间 |
|---|---|---|---|
| 🤖 模型偏好 | reasoning_effort 设为 high | 7 分 | 2026-07 |
| 💻 操作系统 | 用户是 Windows 系统,路径处理注意反斜杠 | 6 分 | 2026-07 |
| 🔧 工具调用 | skill_view 的 name 参数不要带 .md 后缀 | 5 分 | 2026-07 |
| 🔧 工具调用 | terminal 的 cd 只影响当前命令,用 workdir 参数 | 5 分 | 2026-07 |
| 📚 知识库路径 | Obsidian 仓库在 /c/Users/.../.openclaw/workspace/ |
5 分 | 2026-07 |
| 🎨 输出风格 | 用结构化表格、分点、层级标题,不要废话 | 6 分 | 2026-07 |
| 🎨 输出风格 | 结论置顶,详细内容放后面 | 5 分 | 2026-07 |
记忆库维护规则¶
✅ 每条记忆必须有:内容 + 来源(哪次会话说的)+ 重要性得分 + 入库时间
✅ 每条记忆是一个独立的事实,不要混在一起
✅ 有冲突时,新的覆盖旧的,但要保留修改历史
✅ 每月跑一次健康检查:
- 有没有过时的记忆?
- 有没有重复的记忆?
- 有没有 30 天以上没用到的?
7. 自举闭环工作流¶
每收到一条用户信息:
↓
步骤 1:用「重要性评分算法」打 0-10 分
↓
步骤 2:按得分存入对应的记忆层级
≥5 分 → L4 核心记忆
2-4 分 → L3 任务记忆
0-1 分 → L2 会话记忆
<0 分 → 直接丢弃
↓
步骤 3:检查是不是已经在记忆库里了
是 → 引用计数 +1,如果累计被引用 3 次自动升级
否 → 作为新记忆存入
↓
步骤 4:每 10 轮对话跑一次垃圾回收
L1 清理过期信息
L2 压缩摘要
L3 归档完成的任务
L4 降级长期不用的记忆
↓
✅ 重要的信息永远记住,没用的信息自动消失!
📊 成熟度自评¶
| 记忆层级 | 目前成熟度 | 说明 |
|---|---|---|
| L1 瞬时记忆 | ⭐⭐⭐⭐ 4/5 | 滑动窗口工作正常 |
| L2 会话记忆 | ⭐⭐⭐ 3/5 | 有完整历史,但还没有自动压缩 |
| L3 任务记忆 | ⭐⭐ 2/5 | 有基本概念,但还没有正式的归档机制 |
| L4 核心记忆 | ⭐⭐⭐⭐ 4/5 | 有 memory 工具,规则还在持续丰富 |
| 重要性评分 | ⭐⭐ 2/5 | 有手动规则,还没有自动化 |
| 自动升降级 | ⭐ 1/5 | 目前还是手动,需要自动化 |
| 垃圾回收 | ⭐ 1/5 | 目前还是手动,需要自动化 |
| 整体成熟度 | ⭐⭐⭐ 17/35 → 升级到 v2.0 后拉满到 5/5! |
🎯 下一步行动¶
- [ ] 把现在已经知道的用户偏好,全部整理到 L4 核心记忆库
- [ ] 每次会话结束,用「摘要模板」做一份会话摘要
- [ ] 遇到用户反复提到 3 次以上的点,自动升级到 L4
- [ ] 每个月回顾一次核心记忆库,清理过时和重复的
记忆力好,不是什么都记住,而是该记住的永远忘不了,该忘掉的永远不占空间。
人的大脑如此,Agent 的记忆系统也是如此。