12 releases
Uses new Rust 2024
| 0.3.2 | Feb 3, 2026 |
|---|---|
| 0.3.1 | Feb 3, 2026 |
| 0.2.5 | Feb 3, 2026 |
| 0.1.2 | Feb 2, 2026 |
#2391 in Text processing
558 downloads per month
Used in 3 crates
125KB
3K
SLoC
QMD - Query Markdown Documents
A high-performance local search engine for markdown files with full-text search, vector semantic search, and LLM-powered features.
Features
- Full-text search with BM25 ranking via SQLite FTS5
- Vector semantic search with local embeddings (GGUF models)
- Hybrid search with query expansion and RRF fusion
- Reranking with cross-encoder models
- Collection management for organizing document sets
- Automatic model download from HuggingFace
Quick Start
use qmd::{Store, EmbeddingEngine};
use anyhow::Result;
fn main() -> Result<()> {
// Open the document store
let store = Store::new()?;
// Full-text search (BM25)
let results = store.search_fts("rust programming", 10, None)?;
// Vector search (requires embedding model)
let mut engine = EmbeddingEngine::load_default()?;
let query_emb = engine.embed_query("how to use rust")?;
let vec_results = store.search_vec(&query_emb.embedding, 10, None)?;
Ok(())
}
qmd
Lightweight SOTA local search engine for AI agents in Rust.
License
This project is licensed under either of the following licenses, at your option:
- Apache License, Version 2.0, (LICENSE-APACHE or https://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or https://opensource.org/licenses/MIT)
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you, as defined in the Apache-2.0 license, shall be dually licensed as above, without any additional terms or conditions.
Dependencies
~75MB
~1.5M SLoC