tobi/qmd
TypeScript0 / 0
BM25·Vector Search·LLM reranking을 로컬 GGUF 모델로 묶은 문서 검색 CLI·SDK입니다.
TL;DR
QMD는 Markdown 노트와 문서를 로컬 SQLite 인덱스에 저장하고 키워드 검색, 의미 검색, LLM 기반 재순위를 하나의 CLI로 제공합니다. 원본 질의와 확장 질의를 BM25 및 Vector Search에 병렬 전달한 뒤 RRF로 합치고, 상위 후보를 LLM reranker로 다시 정렬합니다. Node.js 22 또는 Bun 1.0에서 실행되며 GGUF 모델 세 개를 HuggingFace에서 내려받아 로컬 추론하므로 외부 검색 서비스 없이 개인 지식 기반을 구성할 수 있습니다. Claude Desktop과 Claude Code는 MCP로 연결할 수 있고, Node.js·Bun 애플리케이션에는 명시적인 dbPath를 받는 SDK를 삽입할 수 있습니다. 다만 기본 embedding 모델은 영어 최적화이며 HTTP MCP endpoint는 인증되지 않으므로 CJK 문서나 외부 네트워크 노출 환경에서는 별도 설정이 필요합니다.
핵심 포인트
- TypeScript 기반 standalone CLI tool이자 Node.js·Bun SDK이며, MCP server와 Claude Code plugin으로도 연결됩니다.
- BM25와 Vector Search를 병렬 실행한 뒤 RRF와 LLM re-ranking으로 최종 순위를 계산합니다.
- Markdown 문서를 SQLite FTS5와 sqlite-vec에 저장하고, GGUF 모델 세 개를 로컬에서 구동합니다.
- Node.js 22 또는 Bun 1.0이 필요하며, CJK 문서는 Qwen3-Embedding으로 교체해 검색할 수 있습니다.
벤치마크
| 벤치마크 | 지표 | 값 | 비교 |
|---|---|---|---|
| QMD example fixture bm25 | 대표 검색 점수 | 약 0.50 | — |
| QMD example fixture vector | 대표 검색 점수 | 약 0.70 | — |
| QMD example fixture hybrid | 대표 검색 점수 | 약 1.00 | — |
| QMD example fixture full | 대표 검색 점수 | 약 1.00 | — |
29k
STARS
1.8k
FORKS
+207
TRENDING
0
조회수
관련 토론
아직 관련 토론이 없습니다.
댓글
댓글을 작성하려면 로그인이 필요합니다.