怒省 1 亿 Token!OpenClaw 本地记忆检索实战:从 60 秒超时到 0.5 秒响应的优雅降级
让 AI 记住一切,不需要昂贵的远程 API,也不需要复杂的 MCP 协议。有时候,最原始的方式,反而最优雅。
一、AI 的"失忆症":当模型记不住你说过的话
2026 年 3 月 2 日上午,一个看似平常的问题暴露了大模型的致命缺陷:
用户:“墨守 001 的核心铁律是什么?”
AI:(沉默 60 秒,消耗 2000+ tokens 检索历史)“抱歉,我没有找到相关信息…”
这不是 AI 变笨了,而是远程记忆检索的代价太高:
- 每次对话需要加载 2000+ tokens 历史上下文
- 响应时间 60 秒+,用户早已失去耐心
- Token 消耗巨大,API 额度蹭蹭掉
痛点:AI 不是记不住,而是"想"起来太慢、太贵。
[📷 截图提示:展示 OpenClaw 默认 MCP 检索的耗时日志,突出 60 秒超时]
二、性能对比:远程 MCP vs 本地 QMD
| 维度 | 远程 MCP 协议 | 本地 QMD CLI |
|---|---|---|
| 响应时间 | 60 秒+ | < 0.5 秒 |
| Token 消耗 | 2000+ tokens/次 | 0 tokens(本地) |
| 网络依赖 | 需要联网 | 完全离线 |
| 部署难度 | 复杂(MCP 配置) | 简单(CLI 直连) |
| 成本 | 高(API 调用) | 零(本地执行) |
| 适用场景 | 大规模分布式 | 个人/单机 |
关键发现:
- 性能提升:120 倍(60 秒 → 0.5 秒)
- Token 节省:100%(2000+ → 0)
- 部署时间:5 分钟 vs 30 分钟
[📷 截图提示:性能对比柱状图,突出 120 倍提升]
三、QMD 是什么?
QMD(Query Memory Database)是一个本地 CLI 工具,专为 AI 记忆检索设计:
- 直接读取 Markdown 文件
- 支持混合搜索(关键词 + 语义)
- 零网络依赖,完全离线
- 响应时间 < 0.5 秒
核心理念:让 AI 的记忆回归本地,拒绝远程 API 的延迟和成本。
四、部署实战:5 分钟完成集成
步骤 1:安装 QMD
npm install -g qmd
[📷 截图提示:终端中 npm install 过程,显示安装成功]
步骤 2:创建记忆集合
cd /root/.openclaw/workspace
qmd collection add memory --name daily-logs --mask "**/*.md"
参数说明:
--name daily-logs:集合名称--mask "**/*.md":匹配所有 markdown 文件
[📷 截图提示:qmd collection add 命令执行成功,显示集合创建信息]
步骤 3:生成 Embeddings
qmd embed
说明:首次运行会生成向量嵌入,后续自动增量更新。
[📷 截图提示:qmd embed 进度条,显示嵌入生成完成]
步骤 4:测试搜索
# 混合搜索(最精准)
qmd query "墨守 001 的核心铁律"
# 纯语义搜索
qmd vsearch "AI 记忆"
# 关键词搜索
qmd search "OpenClaw" -c daily-logs
[📷 截图提示:三种搜索方式的结果对比,突出响应速度]
五、实际效果:从"失忆"到"过目不忘"
场景 1:回忆用户偏好
之前(远程 MCP):
用户:我喜欢用什么编辑器?
AI:(加载 2000 tokens 历史,耗时 60 秒)抱歉,我不记得了...
现在(本地 QMD):
用户:我喜欢用什么编辑器?
AI:(0.5 秒内)您偏好 VS Code,曾在 3 月 1 日提到"VS Code 的插件生态很强大"。
对比:
- Token 消耗:2000+ → 200(仅返回相关片段)
- 响应时间:60 秒 → 0.5 秒
场景 2:跨文件知识检索
之前:需要手动翻阅多个 memory 文件,或让 AI 加载全部历史。
现在:
qmd query "OpenClaw 配置"
自动从所有 memory 文件中提取最相关的 3-5 个片段,精准命中。
[📷 截图提示:qmd query 返回的相关片段,突出精准度]
六、进阶技巧
1. 定期更新索引
# 每天凌晨 3 点更新索引
0 3 * * * /root/.openclaw/workspace/scripts/update-qmd-index.sh
2. 集成到 OpenClaw
在 mcporter.json 中添加 QMD 配置,让 AI 主动调用:
{
"mcpServers": {
"qmd": {
"command": "/usr/bin/qmd",
"args": ["query", "{query}"]
}
}
}
[📷 截图提示:mcporter.json 配置示例]
3. 性能调优
- 增加
--limit参数控制返回数量 - 使用
--threshold调整相关度阈值 - 定期清理旧 embeddings 释放空间
七、总结:优雅降级,回归本质
我们曾经迷信远程 API 的强大,却忘了本地 CLI 的简洁与高效。QMD 不是要取代 MCP,而是提供一种更务实的选择:
- 追求极致性能 → 本地 QMD
- 需要分布式协作 → 远程 MCP
- 个人/单机使用 → 强烈推荐 QMD
关键不是选最强大的,而是选最合适的。
现在,打开你的终端,运行 qmd query "第一篇记忆",感受 0.5 秒的快感。
本文测试版本:QMD 1.0.0 / OpenClaw 2026.2.22-2 / Node.js v22.22.0