lexir
Lexical IR (BM25/TF‑IDF) on top of postings lists.
Status: experimental. This repository is public as a reference implementation; it is not
currently packaged for crates.io.
Feature Selection
default: Includespersistence.- In-memory only: disable default features.
What it is
lexir is the scoring/ranking layer. Candidate generation and storage live in postings.
Building
lexir is not on crates.io yet; use a git dependency:
[]
= { = "https://github.com/arclabs561/lexir" }
Notes:
postings,rankfns, anddurabilityare pulled as git dependencies.gramdexandtextprepare pulled fromcrates.io(and are only used when their features are enabled).
Usage (library)
use InvertedIndex;
let mut idx = new;
idx.add_document;
let hits = idx.retrieve.unwrap;
assert_eq!;
Features
persistence(default): save/load viadurability+postings/persistencerecordlog: append-only operation logs for rebuildable indexes (CLI uses this)cli: enables thelexirCLI (debugging + end-to-end validation)fuzzy: fuzzy query expansion viagramdex