QMD 本地語義搜尋工具

QMD(Quick Markdown Search)是一個完全在本機運行的 Markdown 筆記搜尋工具,解決 AI Agent 在大量筆記中找到正確資訊的問題。可作為 OpenClaw 的 Skill 安裝。

三層搜尋架構

QMD 結合三種搜尋技術,而非只用其中一種:

搜尋層適用場景類比
Keyword Search知道確切的關鍵字Ctrl+F
Semantic Search只有模糊的概念「找跟 X 有關的東西」
Smart Re-ranker多筆結果需要排序把最相關的排到最前面

對應 CLI 指令:

指令功能使用場景
qmd searchBM25 關鍵字搜尋知道精確名詞時
qmd vsearch向量語意搜尋 + query expansion只有模糊描述時
qmd query組合搜尋 + re-ranking一般查詢(推薦預設使用)

Agent 會自動判斷使用哪種搜尋方式(也可以手動指定 deep search 來強制使用語義搜尋 + 重排)。

安裝與架構

安裝需要 Bun runtime:

curl -fsSL https://bun.sh/install | bash
bun install -g github:tobi/qmd

qmd 不需要 Ollama。它自帶三個 GGUF 模型,透過 node-llama-cpp 在本機推論,首次使用時自動下載至 ~/.cache/qmd/models/

模型用途大小
embedding-gemma-300M向量嵌入~300MB
qwen3-reranker-0.6b結果重排~640MB
qmd-query-expansion-1.7B查詢擴展(fine-tuned)~1.1GB

索引流程:

qmd collection add notes/ --name my-collection --mask "*.md"  # 首次建立
qmd embed                                                       # 建向量嵌入
qmd update                                                      # 後續更新索引

為什麼重要

這解決了 AI Agent 記憶系統的檢索瓶頸

  • 根據 AI Agent 的記憶系統設計,記憶的關鍵是「寫下來」
  • 但當筆記累積到成千上萬篇,找到對的那篇比寫下來更困難
  • 不用把整個 vault 丟進 context window(昂貴且低效),而是精準檢索需要的段落

這相當於給 AI Agent 一個**「你個人筆記的 Google」**,完全本地運行,不需雲端。

連結

  • 上層:Clawdbot MOC
  • 相關:AI Agent 的記憶系統設計、Agent Skills 模式
  • 類比:RAG 檢索增強生成 — QMD 本質上是本地化的 RAG

參考