Back to Blog
BlogMarch 13, 2026

如何让OpenClaw更聪明:QMD本地搜寻引擎

如何让OpenClaw更聪明:QMD本地搜寻引擎

Prerequisites

所需准备:

  • OpenClaw 版本 ≥ 2026.2.0(使用 openclaw --version 检查并更新到最新)
  • Bun(强烈推荐)或 Node.js ≥ 22
  • 至少 4GB 可用 RAM 和 2GB 磁盘空间(用于下载 GGUF 模型)
  • 已准备好的 Markdown 笔记文件夹(例如 ~/notes~/Documents/meetings
  • OpenClaw 已正常运行(通过 openclaw start 或守护进程)

非显而易见概念:QMD(Queryable Markdown Documents)是本地混合搜索引擎,结合 BM25 全文搜索 + 向量语义搜索 + LLM 重排序,完全离线运行。集成后 OpenClaw 能精准提取你的本地笔记片段,避免把全部文档塞进上下文。

Step 1: 安装 QMD

使用 Bun 全局安装(速度更快):

bun install -g @tobilu/qmd

或使用 npm:

npm install -g @tobilu/qmd

验证安装并查看版本:

qmd --version

预期输出

qmd 0.4.2 (或更高版本)

首次运行会自动下载 embedding、reranker 和 query-expansion 模型(约 2GB,缓存在 ~/.cache/qmd/models/)。

Step 2: 添加文档集合并建立索引

创建集合(指向你的 Markdown 文件夹):

qmd collection add ~/notes --name notes
qmd collection add ~/Documents/meetings --name meetings
qmd collection add ~/.openclaw/agents/main/memory --name openclaw-memory

预期输出

Collection 'notes' added successfully.

添加上下文描述(大幅提升语义准确性):

qmd context add qmd://notes "我的个人知识库、想法和日常笔记"
qmd context add qmd://meetings "会议记录和行动项"

生成向量嵌入(首次 30-60 秒,后续秒级):

qmd embed

预期输出

Embedding completed for 248 documents (chunked into 1,234 segments).

定期更新索引:

qmd update

Step 3: 配置 OpenClaw 使用 QMD 作为记忆后端

编辑 OpenClaw 主配置文件(通常位于 ~/.config/openclaw/config.yml 或通过 openclaw config edit 打开):

memory:
  backend: "qmd"
  qmd:
    update:
      interval: "5m"    # 每 5 分钟自动重新索引
      onBoot: true
    limits:
      maxResults: 6      # 最多返回 6 个相关片段
      maxChars: 700      # 每个片段限 700 字符(控制 Token)

保存后,QMD 将自动成为 OpenClaw 的记忆引擎,支持混合检索(关键词 + 语义)。

Step 4: 重启 OpenClaw 并验证效果

重启服务:

openclaw gateway restart

测试方法

  1. 在 OpenClaw 聊天界面(WhatsApp/Telegram 等)提问与笔记相关的问题,例如:“我的季度规划流程是什么?”
  2. OpenClaw 会自动从 QMD 拉取精准片段并回答。

手动 CLI 测试(推荐先验证):

qmd query "季度规划流程" -n 5 --explain

预期输出示例(片段 + 分数):

[1] notes/2025-q1-plan.md (score: 0.92)
标题:季度规划流程
内容片段:第一步:收集上季度数据...(700 字符)

Step 5: 进阶用法与优化

  • 限制特定集合qmd query "API 部署" -c notes
  • 输出完整文档qmd query "..." --full
  • MCP 服务器模式(让 OpenClaw 程序化调用):
qmd mcp --http --port 8080 --daemon

然后在 OpenClaw 技能中调用 qmd 工具。

  • 自定义嵌入模型(多语言优化):
export QMD_EMBED_MODEL="hf:Qwen/Qwen3-Embedding-0.6B-GGUF/Qwen3-Embedding-0.6B-Q8_0.gguf"
qmd embed

Common Issues & Troubleshooting

  • 模型下载失败或卡住:检查磁盘空间(≥2GB)、网络稳定,或手动删除 ~/.cache/qmd/models/ 后重试。
  • 集合未找到:运行 qmd collection list 确认路径,路径必须包含 .md 文件。
  • 首次查询慢或 OOM:正常(首次加载模型),降低 maxResults 为 4,或增加系统 RAM。
  • OpenClaw 未使用 QMD:确认 config.yml 中 backend: "qmd",重启后用 openclaw status 检查记忆后端。
  • 索引不更新:运行 qmd update --pull(支持 Git 仓库),或设置更短 interval。

Next Steps

  • 添加更多集合(如代码片段、会议转录、推文备份),让 OpenClaw 拥有“无限记忆”。
  • 结合 Auto-Skill 构建自进化工作流(QMD + mq + auto-skill 组合)。
  • 探索 MCP 高级集成,实现 OpenClaw 自动增删记忆条目。
  • 定期更新 QMD 和 OpenClaw,监控 Token 消耗(预期下降 90-99%)。

现在你的 OpenClaw 已经从“聊天机器人”升级为拥有本地智能大脑的真正助手——更快、更省、更私密。