实际测试表明,QMD在当前版本对英语文档的语义检索和理解已达到生产级水准,但在处理中文内容时,其识别的准确性和深度仍有可观的优化潜力。对于中文用户,建议将其作为性能补充方案进行测试,并持续关注官方迭代对多语言模型的改进。
免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈
QMD(量子记忆数据库)是Shopify联合创始人Tobias Lütke构建的本地化语义搜索与记忆引擎。其架构设计极具巧思——它摒弃了向大语言模型盲目塞入全文的粗放方式,而是通过本地混合检索技术,首先精准锁定文档中最相关的核心片段(通常仅2-3句),再将这个高纯度的上下文“切片”传递给AI进行推理。
这种机制从根源上缓解了传统记忆系统因上下文窗口过载导致的“记忆污染”与“推理噪音”问题。过去,AI助手需要将整个庞大的记忆文件载入上下文,不仅效率低下,更严重消耗了宝贵的Token配额与计算资源。
部署后取得的关键指标提升如下:
QMD的核心优势可概括为:
其技术栈基于TypeScript与Bun运行时,利用node-llama-cpp驱动本地模型。检索层采用三步流水线:首先进行BM25全文快速筛选,接着通过向量嵌入进行语义对齐,最后交由轻量级LLM对候选结果进行智能重排序。所有模型均以GGUF格式在本地离线运行。
核心资源链接:
自OpenClaw 2026.2.2版本起,该系统已原生集成QMD作为可选的记忆后端。这套由顶尖工程师打造的语义搜索引擎,为AI智能体的长期记忆与知识召回效率带来了革新。
首先,请通过终端命令确认你当前的OpenClaw版本:
openclaw -v
若版本号低于2026.2.2,你需要先将其更新至最新稳定版,以解锁QMD的全部功能。
主流方式是使用npm进行全局安装:
# 使用npm安装
npm install -g @tobilu/qmd
若你追求极致的安装与运行速度,可选择Bun作为替代运行时:
# 安装bun
curl -fsSL https://bun.sh/install | bash
# bun安装qmd
bun install -g github:tobi/qmd
安装完成后,务必执行版本验证命令:
终端应输出类似qmd 2.0.1 (bab86d5)的版本信息。
# 查看QMD版本
qmd -v
QMD依赖于支持向量扩展的SQLite数据库环境:
# 更新包列表
sudo apt update
# 安装sqlite3
sudo apt install sqlite3 libsqlite3-dev
# 验证安装
sqlite3 --version
接下来,需要修改OpenClaw的主配置文件~/.openclaw/openclaw.json。操作前,建议进行备份:
cp ~/.openclaw/openclaw.json ~/.openclaw/openclaw.json.bak
编辑配置文件,添加或修改memory配置段:
{"memory": {"backend": "qmd","qmd": {"limits": {"timeoutMs": 8000}}}}
配置参数解析:
backend: "qmd" - 将记忆后端切换至QMD引擎。
timeoutMs: 8000 - 将检索超时时间设置为8秒(默认4秒在某些复杂查询下可能不足)。
重启服务后,OpenClaw将自动启用QMD处理所有记忆检索请求。系统具备优雅的降级机制:若QMD运行异常,将无缝回退至内置的SQLite记忆系统,保障服务连续性。
# 重启OpenClaw Gateway服务
openclaw gateway restart
通过日志确认QMD后端已成功加载并初始化:
# 查看OpenClaw日志
openclaw logs --follow
# 查看OpenClaw与qmd相关的日志
openclaw logs | grep qmd
寻找包含qmd memory的关键日志行,例如:info gateway {"subsystem":"gateway"} qmd memory startup initialization armed for agent "main"。
# 查看QMD状态
qmd status
正常输出示例如下图所示:
你可能会看到一些提示信息,这通常是运行状态日志,而非错误报告。
QMD在初次启动时会执行以下自适应流程:
尝试GPU加速 - 自动编译支持Vulkan后端的llama.cpp。
编译失败 - 大多数系统默认未安装Vulkan图形驱动。
自动回退 - 无缝切换到纯CPU计算模式(falling back to no GPU)。
这是预期内的标准行为,QMD在CPU模式下仍可全功能工作。
如需启用GPU加速以提升检索速度,请手动安装Vulkan驱动:
# Ubuntu/Debian
sudo apt install vulkan-tools libvulkan-dev
# 安装后重启qmd服务,引擎将自动重新编译以启用GPU支持
最直接的验证方法是与OpenClaw进行对话,询问关于历史会话的具体细节,亲身感知其响应速度与答案准确度的提升。
编辑配置文件~/.openclaw/openclaw.json,将记忆后端改回sqlite:
{"memory": {"backend": "sqlite"// 恢复为默认的SQLite后端}}
你也可以选择直接删除整个memory配置块,系统将自动使用SQLite作为默认后端。
# 重启Gateway
openclaw gateway restart
# 等待3秒后检查状态
sleep 3 && openclaw gateway status
# npm方式卸载
npm uninstall -g @tobilu/qmd
# 或bun方式卸载
bun uninstall -g @tobilu/qmd
删除QMD生成的索引与缓存文件,彻底释放磁盘空间:
# 查看qmd数据占用
du -sh ~/.openclaw/agents/main/qmd/
# 删除qmd数据目录
rm -rf ~/.openclaw/agents/main/qmd/
# 验证删除
ls -la ~/.openclaw/agents/main/ | grep qmd
# 应无输出(目录已不存在)
执行记忆搜索测试,确认系统已完全回退到默认模式:
# 方法1:使用OpenClaw CLI
openclaw memory search "测试关键词"
# 方法2:在对话中让AI执行
# 发送消息:帮我搜索memory中的"安全检查"
which qmd
输出空
解决:
npm install -g @tobilu/qmd
错误信息:/home/zilong/.bun/bin/qmd: 29: exec: bun: not found
解决:切换到npm版本
# 备份bun版本
mv ~/.bun/bin/qmd ~/.bun/bin/qmd.bun.bak
# 创建符号链接到npm版本
ln -s ~/.nvm/versions/node/v25.8.0/bin/qmd ~/.bun/bin/qmd
# 验证
qmd --version
错误信息:ERROR OMG C++ Compiler toolset is not available. Install proper compiler toolset with your package manager, eg. 'sudo apt-get install g++'.
解决:
# Ubuntu/Debian
sudo apt install build-essential g++
或选择忽略(CPU模式仍可工作):QMD会自动回退到CPU模式,仅牺牲部分编译期性能。
现象:第一次使用QMD时,需要下载模型(约2GB),耗时较长。
解决:耐心等待完成,后续使用会很快。模型下载位置:~/.cache/qmd/models/
查看日志发现:warn memory {"subsystem":"memory"} qmd update failed
解决:
# 手动更新QMD
qmd update
# 重新嵌入
qmd embed -f
OpenClaw以守护进程运行,没有加载nvm的环境变量,所以找不到node。
在系统路径创建node符号链接(指向v22):需要sudo权限。请在终端手动执行:
# 在系统路径创建node符号链接(指向v22)
sudo ln -s /home/zilong/.nvm/versions/node/v22.22.1/bin/node /usr/local/bin/node
# 重启openclaw
openclaw gateway restart
error [tools] read failed: ENOENT: no such file or directory, access '/home/zilong/.openclaw/agents/main/qmd/config.json'
~/.openclaw/agents/main/qmd/config.json文件缺失
创建了一个空的JSON文件{}