Skip to content

v0.1.0 — exposure audit for vector search / RAG

Choose a tag to compare

@derishabl derishabl released this 10 Jul 15:31

First public release.

What it does: shows what share of your vector corpus queries actually reach and what share is never retrieved (dark matter — the antihub inventory of your index); measures exposure concentration (Gini), hub capture; regression-diffs embedder/chunking migrations; gates them in CI.

Highlights

  • Metrics: coverage %, coverage of reachable ceiling, dark matter %, Gini, hub capture, Lorenz curve
  • qrels lost gold: cross-check dark matter against relevance judgments — which relevant chunks are never surfaced
  • diff / gate: per-chunk migration deltas (newly-dark / rescued), CI gate with strict mode and validated thresholds
  • synth: antihub self-query audit when you have no query logs
  • Dashboard: self-contained HTML (Lorenz, histogram, PCA corpus map)
  • Adapters: InMemory, FAISS, pgvector, Qdrant
  • Case study: BEIR NQ 260k chunks — coverage 11.7% of corpus = 88.3% of the workload-reachable ceiling, 905 relevant chunks lost in dark matter

Why dark matter is structural, not a bug: hubness in high-dimensional NN search (Radovanović et al., JMLR 2010) — see README.

Install: pip install retrieval-fairness (once PyPI publish completes).