AI 总是"失忆"?OpenClaw Memory 让你告别重复说明
|
每次和 AI 聊天都要重新介绍自己? 昨天聊的项目,今天它全忘了? 你不是一个人。这正是 OpenClaw Memory 要解决的核心问题。 |
为什么 AI 需要记忆?
想象这样一个场景:
你有一个朋友,每次见面他都不认识你。
不记得你们聊过什么。
甚至不知道你的喜好。
这就是大多数 AI 助手的现状。
每次对话都是全新的开始。
每次都要重复说明。
每次都要重新建立上下文。
OpenClaw 的 Memory 系统改变了这一切。
它让 AI 能够:
- 📚 记住你的偏好 —— 喜欢的搜索工具、常用的设备名称
- 📝 记录重要决策 —— 你们一起做出的选择和结论
- 🔗 保持上下文连贯 —— 昨天聊的项目,今天继续跟进
- 🧠 积累长期知识 —— 越用越懂你
OpenClaw Memory 的核心理念
文件即记忆
OpenClaw 采用了一个简单但强大的设计理念:
记忆就是普通的 Markdown 文件。
没有复杂的数据库。
没有封闭的存储格式。
就是你能直接打开、编辑、版本控制的纯文本。
text workspace/├── MEMORY.md # 长期记忆(精选重要信息)└── memory/├── 2026-03-18.md # 每日日志├── 2026-03-17.md # 昨天的记录└── projects.md # 项目专用笔记
关键洞察:
文件是唯一的真相来源。
AI 只"记得"写入磁盘的内容,而不是保存在模型参数中的模糊印象。
这意味着什么?
- ✅ 你可以随时查看和编辑记忆
- ✅ 可以用 Git 版本控制
- ✅ 数据完全属于你
双层记忆架构
| 层级 | 文件 | 用途 | 加载时机 |
|---|---|---|---|
| 每日日志 | memory/YYYY-MM-DD.md | 记录当天发生的事情 | 每次启动读取今天+昨天 |
| 长期记忆 | MEMORY.md | 精选的重要信息、偏好、决策 | 仅在私聊会话中加载 |
安全设计:
MEMORY.md 只在私聊中加载。
避免在群聊中泄露个人信息。
三大核心能力
1. 语义搜索 —— 找到你忘记的事情
即使你不记得确切的关键词,OpenClaw 也能理解你的意图。
传统搜索的问题:
你必须记得那个词。
比如你想找路由器的配置,但如果你只记得"家里网络",传统搜索就无能为力。
语义搜索的优势:
输入:"家里网络怎么设置的"
结果:找到 "Configured Omada router, set VLAN 10 for IoT devices"
它是怎么做到的?
- 使用向量嵌入(Embeddings)将文本转换为高维向量
- 支持 OpenAI、Gemini、Voyage、Mistral 等多种嵌入模型
- 可选本地模型(node-llama-cpp),完全离线运行
简单说:它理解意思,不只是匹配文字。
2. 混合搜索 —— 智能 + 精准
单一搜索方式都有局限。
向量搜索(语义匹配):
- ✅ 理解同义词和相似表达
- ✅ "Mac Studio gateway host" ≈ "the machine running the gateway"
- ❌ 对精确 ID、代码符号不够敏感
BM25 全文搜索(关键词匹配):
- ✅ 精确匹配 ID、错误信息、代码符号
- ✅ "sqlite-vec unavailable" 能精准定位
- ❌ 不理解语义相似性
OpenClaw 的解决方案:两者结合
text 最终得分 = 0.7 × 向量得分 + 0.3 × BM25 得分
结果:
- 既能理解你的意思
- 又能找到精确的技术细节
3. 智能后处理 —— 让结果更实用
MMR 多样性排序
你遇到过这种情况吗?
搜索"home network setup",返回 5 条几乎相同的结果。
都是关于路由器配置的,没有涵盖 DNS、防火墙等其他方面。
MMR 解决:
- 自动识别重复内容
- 平衡相关性和多样性
- 确保 top 结果覆盖不同方面
效果对比:
text Before: 路由器配置 (0.92) | 路由器配置 (0.89) | 路由器配置 (0.85)After: 路由器配置 (0.92) | 参考文档 (0.85) | AdGuard DNS (0.78)
时间衰减 —— 让记忆"褪色"
另一个常见问题:
6 个月前的旧笔记排名比昨天的新笔记还高。
时间衰减解决:
新笔记:100% 权重
30 天前:50% 权重
90 天前:12.5% 权重
180 天前:1.6% 权重
但有一个例外:
MEMORY.md 等非日期文件永不衰减。
确保重要参考信息始终可用。
进阶功能:QMD 后端
对于追求极致性能的用户,OpenClaw 支持 QMD(Query Markdown) 后端。
QMD 是什么?
一个本地优先的搜索 sidecar,结合了:
- BM25 全文检索
- 向量搜索 语义匹配
- 重排序 提升结果质量
对比内置后端
| 特性 | 内置后端 | QMD 后端 |
|---|---|---|
| 部署复杂度 | 开箱即用 | 需单独安装 Bun + SQLite |
| 搜索质量 | 良好 | 更优(三阶段检索) |
| 本地模型 | 支持 | 支持(自动下载 GGUF) |
| 首次搜索速度 | 快 | 较慢(需下载模型) |
配置示例
text {memory: {backend: "qmd",citations: "auto",qmd: {includeDefaultMemory: true,update: { interval: "5m", debounceMs: 15000 },limits: { maxResults: 6, timeoutMs: 4000 },paths: [{ name: "docs", path: "~/notes", pattern: "**/*.md" }]}}}
实际应用场景
场景 1:个人知识库
问题:你读了很多文章、做了很多笔记,但找不到。
OpenClaw 解决:
- 将所有笔记放入
memory/目录 - 随时问 AI:"我之前看过关于微服务的文章"
- AI 通过语义搜索找到相关内容
场景 2:项目管理
问题:项目持续数月,之前的决策和讨论散落在各处。
OpenClaw 解决:
- 创建
memory/projects/目录 - 每次重要讨论后,AI 自动记录到当日日志
- 搜索:"我们为什么选 PostgreSQL 而不是 MySQL?"
场景 3:个性化助手
问题:每次都要告诉 AI 你的偏好。
OpenClaw 解决:
- 告诉 AI:"记住我喜欢用 SearXNG 搜索"
- AI 写入
MEMORY.md - 以后自动使用 SearXNG,无需重复说明
配置指南
基础配置(使用 OpenAI 嵌入)
text {agents: {defaults: {memorySearch: {provider: "openai",model: "text-embedding-3-small",remote: {apiKey: "YOUR_OPENAI_API_KEY"}}}}}
高级配置(混合搜索 + 时间衰减)
text {agents: {defaults: {memorySearch: {provider: "openai",model: "text-embedding-3-small",query: {hybrid: {enabled: true,vectorWeight: 0.7,textWeight: 0.3,mmr: { enabled: true, lambda: 0.7 },temporalDecay: { enabled: true, halfLifeDays: 30 }}},cache: { enabled: true, maxEntries: 50000 }}}}}
完全本地(无需联网)
text {agents: {defaults: {memorySearch: {provider: "local",local: {modelPath: "hf:ggml-org/embeddinggemma-300m-qat-q8_0-GGUF/embeddinggemma-300m-qat-Q8_0.gguf"},fallback: "none"}}}}
最佳实践
1. 养成"写记忆"的习惯
- 重要决策 → 让 AI 写入
MEMORY.md - 日常事项 → 自动记录到每日日志
- 项目信息 → 创建专门的 Markdown 文件
2. 定期整理 MEMORY.md
- 每周回顾每日日志
- 提取重要信息到
MEMORY.md - 删除过时的内容
3. 合理配置时间衰减
- 日常笔记多 →
halfLifeDays: 30 - 需要长期参考 →
halfLifeDays: 90 - 纯项目文档 → 关闭衰减
4. 利用混合搜索
- 找概念 → 向量搜索主导
- 找代码/ID → BM25 更精准
- 两者结合 → 混合搜索
写在最后
OpenClaw 的 Memory 系统不是简单的"聊天记录保存"。
它是一个完整的记忆架构:
- 🗂️ 文件化:Markdown 是真相来源,可审计、可版本控制
- 🔍 智能化:语义搜索理解意图,不只是关键词匹配
- ⚡ 高性能:本地嵌入、SQLite 加速、可选 QMD 后端
- 🔒 隐私优先:本地运行,数据不离开你的机器
重要提醒:
AI 不会自动记住一切。
如果你希望某条信息被长期保留,明确告诉 AI "记住这个",让它写入记忆文件。
你的 AI,值得拥有记忆。
你觉得 OpenClaw 的 Memory 系统最吸引你的功能是什么?
欢迎在评论区分享你的想法!
夜雨聆风