Discover and explore top open-source AI tools and projects—updated daily.
tobiAI-powered local search for your documents
Top 42.1% on SourcePulse
Summary
QMD is an on-device, hybrid search engine designed for local documents such as notes, transcripts, and knowledge bases. It targets users and AI agents requiring fast, intelligent, and private search capabilities by seamlessly integrating keyword, semantic, and LLM re-ranking.
How It Works
QMD employs a sophisticated hybrid search pipeline. It indexes Markdown content using SQLite FTS5 for BM25 full-text search and generates vector embeddings for semantic search. Queries are expanded by an LLM, then retrieved in parallel via FTS and vector backends. Results are fused using Reciprocal Rank Fusion (RRF) with a top-rank bonus and position-aware blending, followed by LLM re-ranking for optimal relevance. This multi-stage approach balances speed, semantic understanding, and accuracy locally.
Quick Start & Requirements
Installation is via Bun: bun install -g https://github.com/tobi/qmd.
Key requirements include:
http://localhost:11434).brew install sqlite.embeddinggemma, ExpedientFalcon/qwen3-reranker:0.6b-q8_0, qwen3:0.6b.
Setup involves installing Bun, Ollama, and then running qmd add . on your directories.Highlighted Details
--json, --files, and --md formats optimized for AI agent workflows.Maintenance & Community
The repository is maintained by tobi. No specific community channels (Discord/Slack), roadmap, or notable contributor information is provided in the README.
Licensing & Compatibility
QMD is released under the MIT License. This permissive license allows for broad use, including in commercial and closed-source applications, with minimal restrictions.
Limitations & Caveats
The project relies on the Bun runtime, which is less common than Node.js. macOS users require a specific Homebrew installation for SQLite. While designed for local use, it necessitates a running Ollama instance and downloading several LLM models, which can consume significant disk space and initial setup time.
1 day ago
Inactive
freedmand