OpenClaw 又慢还费钱,你需要给它安装这个 Skill 技能:本地语义搜索引擎 QMD
将该目录添加到系统 PATH 环境变量: - 右键"此电脑" → "属性" → "高级系统设置" - "环境变量" → 编辑"Path"变量 - 添加解压路径(例如。不要把整个文件塞给 AI,而是先用本地搜索找到最相关的片段(通常只有 2-3 句话),再把这些精准内容传给 AI。: 无论历史记录有多长,每次只提取最相关的几句话(通常削减 95% 以上)。:速度快了 20+ 倍,成本降低 200+
QMD 是什么
QMD (Quantum Memory Database)是 Shopify 联合创始人兼 CEO Tobias Lütke (Tobi) 开发的本地语义搜索引擎。
核心价值:
-
不要把整个文件塞给 AI,而是先用本地搜索找到最相关的片段(通常只有 2-3 句话),再把这些精准内容传给 AI
-
解决传统记忆系统把整个 MEMORY.md 文件直接塞进上下文导致的"上下文爆炸"问题
实际效果:
-
📊 Token 削减:60-97%(平均 95% 以上)
-
⚡ 响应速度提升:5-50 倍
-
💰 成本降低:90-99%
-
🎯 精准度:93%(纯语义搜索仅 59%)
底层技术:
-
基于 TypeScript + Bun 开发,使用 node-llama-cpp 运行本地模型
-
三层混合检索:BM25 全文搜索 + 向量语义搜索 + LLM 重排序
-
所有模型在本地运行(GGUF 格式),完全离线
核心架构:

在 OpenClaw 中安装 QMD
前提条件
⚠️ OpenClaw 版本需要 ≥ 2026.2.2
检查你的版本:
openclaw --version
如果版本低于 2026.2.2,需要先更新到最新版本。
第一步:安装 QMD
1.1 选择包管理器
推荐使用 Bun(速度更快):
# 使用 Bun 安装
bun install -g @tobilu/qmd
或使用 npm:
# 使用 npm 安装
npm install -g @tobilu/qmd
或直接运行(无需安装):
npx @tobilu/qmd ...
# 或
bunx @tobilu/qmd ...
1.2 安装支持扩展的 SQLite
QMD 需要支持 vector 扩展的 SQLite。
macOS 用户:
brew install sqlite
验证安装:
sqlite3 --version
# 应该显示版本号 ≥ 3.40.0
Linux 用户 (Ubuntu/Debian):
sudo apt update
sudo apt install sqlite3
验证安装:
sqlite3 --version
Windows 用户:
-
访问 SQLite 官网下载页面:https://www.sqlite.org/download.html
-
下载 "Precompiled Binaries for Windows" 中的
sqlite-tools-win-x64-*.zip -
解压到任意目录(例如
C:\sqlite) -
将该目录添加到系统 PATH 环境变量: - 右键"此电脑" → "属性" → "高级系统设置" - "环境变量" → 编辑"Path"变量 - 添加解压路径(例如
C:\sqlite) -
重启终端,验证安装:
sqlite3 --version
1.3 验证 QMD 安装
qmd --version
如果显示版本号,说明安装成功。
第二步:配置 OpenClaw 使用 QMD
2.1 找到配置文件
根据你使用的版本和操作系统,配置文件位置:
OpenClaw 用户:
-
macOS/Linux:
~/.openclaw/openclaw.json -
Windows:
C:\Users\你的用户名\.openclaw\openclaw.json
2.2 修改配置
在配置文件中添加或修改以下内容:
{
"memory":{
"backend":"qmd",
"qmd":{
"limits":{
"timeoutMs":8000
}
}
}
}
配置说明:
backend: "qmd"- 切换到 QMD 记忆后端
timeoutMs: 8000- 设置超时时间为 8 秒(默认 4 秒可能不够)
💡 提示:所有操作系统的配置内容完全相同,只是文件路径不同
第三步:重启 OpenClaw
所有操作系统使用相同命令:
# 重启 OpenClaw Gateway 服务
openclaw gateway restart
重启后的行为:
-
OpenClaw 会自动使用 QMD 进行记忆检索
-
如果 QMD 出现问题,会自动回退到内置的 SQLite 记忆系统
-
不影响正常使用
验证 QMD 是否正常工作:
查看 OpenClaw 日志,确认 QMD 后端已启用:
openclaw logs --follow
如果看到类似 Using QMD memory backend的日志,说明配置成功。
实测对比效果
我在启用 QMD 前后做了对比测试,结果让人惊喜。
场景一:长期会话记忆查询
测试问题:"我们三个月前讨论的那个项目,最后用的什么方案?"
|
对比项 |
启用前 |
启用后 |
改善幅度 |
|---|---|---|---|
|
上下文大小 |
8 万+ tokens |
削减 95%+ |
- |
|
响应时间 |
45 秒(超时失败) |
2 秒 |
快 20+ 倍 |
|
API 成本 |
$2.4 |
$0.01 |
降低 200+ 倍 |
|
成功率 |
失败 |
成功 |
✅ |
结论:速度快了 20+ 倍,成本降低 200+ 倍,而且不会失败。
场景二:跨文件知识检索
测试问题:"我们之前所有项目用过哪些技术栈?"
|
对比项 |
启用前 |
启用后 |
改善幅度 |
|---|---|---|---|
|
上下文大小 |
15000+ tokens |
削减 90%+ |
- |
|
响应时间 |
25-30 秒 |
3 秒 |
快 10 倍 |
|
稳定性 |
容易触发 rate limit 卡死 |
从不卡死 |
✅ |
结论:速度提升 10 倍,再也没卡死过。
场景三:日常对话
测试问题:"帮我写个函数"
|
对比项 |
启用前 |
启用后 |
改善幅度 |
|---|---|---|---|
|
上下文大小 |
5000+ tokens |
削减 95%+ |
- |
|
响应时间 |
8-10 秒 |
1 秒 |
快 8-10 倍 |
|
体验 |
感觉慢 |
秒级响应 |
🚀 |
结论:日常使用体验天差地别。
技术深度:为什么上下文变小,速度就快那么多?
大模型的推理时间和输入 token 数量基本成正比关系:
|
上下文大小 |
平均响应时间 |
成本水平 |
稳定性 |
|---|---|---|---|
|
200 tokens |
0.5-1 秒 |
💰 |
✅ |
|
2,000 tokens |
5-8 秒 |
💰💰💰 |
✅ |
|
10,000 tokens |
25-40 秒 |
💰💰💰💰 |
⚠️ |
|
50,000 tokens |
1-2 分钟 |
💰💰💰💰💰💰 |
❌ 容易超时 |
|
100,000+ tokens |
2-5 分钟 |
💰💰💰💰💰💰💰💰 |
❌ 基本失败 |
我的极端案例: 那个 20 万 token 的会话,单次请求成本高达 $6-8,而且基本上都是超时失败,钱白花了。
启用 QMD 后: 无论历史记录有多长,每次只提取最相关的几句话(通常削减 95% 以上)。
✅ 响应快了 5-50 倍 ✅ 成本降低 90-99% ✅ 精准度反而更高(因为噪音少了) ✅ 再也不会因为上下文太长而卡死或超时
全面对比:启用 QMD 前后
|
未启用 QMD |
启用 QMD |
|
|---|---|---|
| 响应速度 |
5-120 秒(长会话直接超时) |
1-3 秒(快 5-50 倍) |
| Token 削减 |
完整上下文(5K-200K tokens) |
削减 60-97%(平均 95%+) |
| 单次 API 成本 |
$0.05-8(长会话) |
降低 90-99% |
| 精准度 |
容易被干扰 |
93% 准确率 |
| 稳定性 |
长会话必卡死 |
从不卡死 |
| 隐私 |
数据本地 |
完全本地 |
| 成本 |
持续消耗 API |
完全免费 |
适用场景
必须启用的情况
🔴 会话历史超过 1 万 token(基本上运行一周就会超过)
🔴 经常被慢速响应或卡死困扰(特别是长期会话)
🔴 单次请求成本超过 $1
常见问题
Q1: QMD 和传统记忆系统的区别是什么?
传统系统:
-
把整个 MEMORY.md 文件直接塞进上下文
-
其中 90% 的内容可能和当前问题毫无关系
-
上下文越长,请求越慢,成本越高,AI 还容易被无关信息干扰
QMD 系统:
-
先用本地搜索找到最相关的片段(通常只有 2-3 句话)
-
再把这些精准内容传给 AI
-
大幅减少上下文,提升速度和精准度
Q2: QMD 是否安全?
完全安全:
-
✅ 完全免费
-
✅ 完全本地运行
-
✅ 数据永远不出你的电脑
-
✅ 不消耗任何 API 配额
Q3: QMD 的准确率如何?
根据实测数据:
-
混合搜索精准度:93%
-
纯语义搜索精准度:59%
-
混合搜索明显更准确
Q4: 如果 QMD 出现问题怎么办?
OpenClaw 有自动回退机制:
-
如果 QMD 出现问题,会自动回退到内置的 SQLite 记忆系统
-
不影响正常使用
-
可以查看日志了解具体问题
Q5: QMD 需要联网吗?
不需要:
-
首次安装时会下载模型(需要联网)
-
之后完全离线运行
-
所有处理都在本地完成
Q6: QMD 支持哪些文件格式?
主要支持:
-
✅ Markdown 文件(.md)
-
✅ 文本文件(.txt)
其他格式需要先转换为 Markdown 或文本格式。
Q7: QMD 的性能如何?
非常高效:
-
12 个文件的索引只需几秒钟
-
搜索响应通常在 1-3 秒内
-
完全适合实时交互场景
Q8: 如何优化 QMD 的性能?
可以调整以下参数:
{
"memory":{
"backend":"qmd",
"qmd":{
"limits":{
"timeoutMs":8000// 根据需要调整超时时间
}
}
}
}
Q9: QMD 占用多少存储空间?
存储空间取决于:
-
索引的文件数量和大小
-
模型文件(约几百 MB)
-
通常总占用在 1-2 GB 左右
Q10: 如何卸载 QMD?
如果要卸载 QMD:
-
修改配置文件,移除 QMD 配置:
{
"memory": {
"backend": "sqlite" // 改回默认的 SQLite 后端
}
}
-
重启 OpenClaw:
openclaw gateway restart
-
卸载 QMD 包(可选):
bun uninstall -g @tobilu/qmd
# 或
npm uninstall -g @tobilu/qmd
相关链接
- QMD GitHub
: https://github.com/tobi/qmd
- OpenClaw 官网
: https://openclaw.ai
- SQLite 官网
: https://www.sqlite.org/
推荐阅读
更多推荐

所有评论(0)