bones-search
Hybrid search engine for the bones issue tracker, combining lexical BM25, semantic embeddings, and structural graph proximity via reciprocal rank fusion (RRF).
What this crate provides
- Hybrid search: fuses three independent ranking signals with RRF
- Lexical (FTS5/BM25): stemming, prefix search, boolean operators
- Semantic (optional): ONNX embedding model via
ort, KNN over stored vectors - Structural: graph proximity to lexical seed items via dependency edges
- Semantic model: loads an ONNX sentence-transformer model; gracefully degrades to lexical+structural when unavailable
- Structural similarity: shared label/parent/dependency scoring between items
- Duplicate detection: multi-signal fusion used by
bn createto surface near-duplicates
Features
semantic-ort— enable semantic search via ONNX Runtime (requiresortandtokenizers)bundled-model— embed a default model at build time (impliessemantic-ort)
Usage
This crate is an internal dependency of bones-cli. See the bones repository for the full project.