ハイブリッド検索パイプライン(FTS5+ベクター+重排序)
段階分離で組み立てる。まず SQLite FTS5 のBM25で高速召回、次にベクター類似で語義補完、最後にローカルGGUFモデルをnode-llama-cppで動かし重排序して“答えやすさ”を上げる。
QMD はMarkdownコンテンツを端末内で索引化し、ノートや議事録、社内ドキュメントを“エージェントが呼べる検索レイヤー”に変えるツールです。SQLite のFTS5(BM25)でキーワード検索を回しつつ、ベクター類似で語義検索も行い、node-llama-cpp 上のローカルGGUFモデルでクエリ拡張と重排序をかけて精度を上げます。--json/--files/--csv など自動化向け出力に加え、Model Context Protocol (MCP) サーバーとして search/get/status をツール化でき、読み取り→抽出→要約の流れをローカルに閉じられます。
| ✕従来の課題 | ✓革新的ソリューション |
|---|---|
| Markdownが増えるとgrep/キーワード検索だけでは言い換えや分散した根拠を拾えず、エージェントに渡す文脈が薄くなる。 | QMD はFTS5(BM25)+ベクター+ローカルLLM重排序のハイブリッドで、召回と可回答性を段階分離して最適化する。 |
| エージェント連携は全文詰め込みか遠隔ベクタDB依存になりがちで、コストとプライバシー境界が揺れる。 | 内蔵 Model Context Protocol (MCP) サーバーで検索をツール化し、必要部分だけを取り出す運用に寄せられる。 |
1bun --version1bun install -g https://github.com/tobi/qmd1qmd collection add ~/notes --name notes && qmd embed1qmd search "auth"\nqmd vsearch "login flow"\nqmd query "how to deploy"1qmd mcp| コアシーン | 対象読者 | ソリューション | 成果 |
|---|---|---|---|
| Claude Code/デスクトップ向けローカル検索ツール | エージェント活用の個人/チーム | ローカルノートとプロジェクト文書を索引化してJSONで返す | 全文投入を避け、必要断片だけで回答品質を上げる |
| 出社外送信なしの社内ナレッジ検索レイヤー | 機密性の高い開発/法務/監査 | 端末や内網でハイブリッド検索と重排序を実行 | 外部ベクタDBに載せずに検索性とQAを改善 |
| 議事録/運用ログの継続索引と回溯 | 意思決定の追跡が必要な担当者 | 議事録や変更履歴をコレクション化し更新を自動化 | 自然文で“いつ何を決めたか”を引ける |