sapphire-retrieve 0.9.0

Document retrieval and semantic search library with SQLite (FTS5/sqlite-vec) and LanceDB backends
docs.rs failed to build sapphire-retrieve-0.9.0
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build: sapphire-retrieve-0.12.1

sapphire-retrieve

Full-text and semantic search library extracted from sapphire-journal.

What this crate provides

  • FTS5 — trigram full-text search over a SQLite database (RetrieveDb::search_fts)
  • Vector search — approximate nearest-neighbour search via sqlite-vec or LanceDB (RetrieveDb::search_similar)
  • Chunker — splits documents into overlapping text chunks for embedding (chunker::chunk_document)
  • Embedder trait — pluggable embedding backends (build_embedder)
    • openai — OpenAI-compatible REST API
    • ollama — local Ollama server
    • fastembed (feature: fastembed-embed) — local ONNX inference, no server required
  • Config typesRetrieveConfig, VectorDb, EmbeddingConfig in sapphire_retrieve::config
  • LanceDB store (feature: lancedb-store) — high-performance columnar vector store

Features

Feature Default Description
sqlite-store no SQLite FTS5 + sqlite-vec backend
lancedb-store yes LanceDB vector backend
fastembed-embed yes Local ONNX embedding via fastembed

License

MIT OR Apache-2.0