跳转至

🧭 上下文管理自举机制 v2.0

四级记忆体系:重要的信息自动记住,没用的信息自动忘掉

参考 2026 年 LLM 长上下文管理、记忆系统、注意力机制最佳实践


📋 目录

  1. 核心痛点:为什么上下文总是不够用?
  2. 四级记忆体系架构
  3. 重要性评分算法
  4. 记忆升降级规则
  5. 上下文压缩与摘要
  6. 核心记忆库
  7. 自举闭环工作流

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 的记忆系统也是如此。