名称: qmd
描述: 使用 qmd 从本地知识库中搜索和检索 Markdown 文档。支持 BM25 关键词搜索、向量语义搜索以及结合 LLM 重排序的混合搜索。适用于查询已建立索引的笔记、文档、会议记录和任何基于 Markdown 的知识。需要安装 qmd CLI (bun install -g https://github.com/tobi/qmd)。
从本地已建立索引的 Markdown 知识库中搜索和检索文档。
bun install -g https://github.com/tobi/qmd
# 添加一个集合
qmd collection add ~/notes --name notes --mask "**/*.md"
# 生成嵌入向量(vsearch/query 命令所必需)
qmd embed
调用 qmd 命令时,务必使用 --json 标志,以获得结构化的输出。
qmd search "authentication flow" --json
qmd search "error handling" --json -n 10
qmd search "config" --json -c notes
qmd vsearch "how does login work" --json
qmd vsearch "authentication best practices" --json -n 20
qmd query "implementing user auth" --json
qmd query "deployment process" --json --min-score 0.5
| 选项 | 描述 |
|---|---|
-n NUM |
返回结果数量(默认:5,使用 --json 时为 20) |
-c, --collection NAME |
限制在特定集合内搜索 |
--min-score NUM |
最低分数阈值 |
--full |
在结果中返回完整的文档内容 |
--all |
返回所有匹配项 |
qmd get docs/guide.md --json
qmd get "#a1b2c3" --json
qmd get notes/meeting.md:50 -l 100 --json
qmd multi-get "docs/*.md" --json
qmd multi-get "api.md, guide.md, #abc123" --json
qmd multi-get "notes/**/*.md" --json --max-bytes 20480
qmd update # 重新索引已更改的文件
qmd status # 检查索引健康状态
qmd collection list # 列出所有集合
| 模式 | 速度 | 质量 | 最佳适用场景 |
|---|---|---|---|
| search | 快 | 良好 | 精确关键词、已知术语 |
| vsearch | 中等 | 更好 | 概念性查询、同义词 |
| query | 慢 | 最佳 | 复杂问题、不确定的术语 |
性能提示: vsearch 和 query 在向量初始化时有约 1 分钟的冷启动延迟。交互式使用建议优先选择 search。
qmd 可以作为 MCP 服务器运行,以便直接集成:
qmd mcp
暴露的工具包括:qmd_search, qmd_vsearch, qmd_query, qmd_get, qmd_multi_get, qmd_status