ruvector/docs
rUv 8f97421297
research(nightly): rairs-ivf — RAIRS IVF, ruvector's first Inverted File Index (ADR-193) (#459)
* feat(rairs-ivf): add RAIRS IVF — ruvector's first Inverted File Index (ADR-193)

Implements Yang & Chen, SIGMOD 2026 (arXiv:2601.07183): three variants of
IVF with Redundant Assignment + Amplified Inverse Residual + SEIL layout.

Three measurable variants (N=5K, D=128, 64 clusters, cargo --release):
  IvfFlat      nprobe=1 recall@10  61.3%  mem 2,571 KB  26,984 QPS
  RairsStrict  nprobe=1 recall@10  83.8%  mem 5,110 KB  13,243 QPS
  RairsSeil    nprobe=1 recall@10  93.1%  mem 2,571 KB  13,582 QPS

RairsSeil: +31.8 pp recall at nprobe=1 vs IvfFlat with identical memory.

Files:
  crates/ruvector-rairs/         — new crate (IvfFlat, RairsStrict, RairsSeil)
  docs/adr/ADR-193-rairs-ivf.md  — architecture decision record
  docs/research/nightly/2026-05-12-rairs-ivf/README.md — SOTA survey + results
  Cargo.toml                     — workspace member added

10/10 unit tests pass. cargo build --release -p ruvector-rairs green.

* perf(ruvector-rairs): SIMD-friendly distance kernels + partial-select top-k; fix clippy/fmt; flag unverified citation

Optimizations (recall unchanged; ~2.3–2.9× single-thread QPS across all
variants/nprobe on x86-64):
- index.rs: rewrite l2sq/dot as 8-lane unrolled reductions so LLVM
  auto-vectorises the f32 accumulation (the naïve iter().sum() can't — f32
  add isn't associative). This is the hot path: every centroid scan + every
  list-entry distance.
- index.rs: add finalize_topk() / top_nprobe_centroids() using
  select_nth_unstable (O(n) avg) instead of full O(n log n) sorts of every
  candidate / every centroid; all three search() impls use them. Distance
  ordering switched to f32::total_cmp — no more partial_cmp().unwrap() panics.
- rairs.rs: rair_score is now allocation-free (no per-call Vec for the diff);
  search() dedups ids with a reused bool scratch array instead of allocating
  a HashSet per query.
- seil.rs: block-visited dedup uses a flat bool array indexed via per-list
  prefix sums instead of a per-query HashSet<(usize,usize)>.

Fixes:
- clippy `-D warnings` now passes: documented the 6 RairsError struct fields
  + RairsSeil::lambda; elided the explicit lifetime on resolve_block.
- cargo fmt --check now passes (benches/rairs_bench.rs import ordering, etc.).
- lib.rs + ADR-193 + the research README now carry a Provenance note: the
  "RAIRS/SEIL" names and the SIGMOD-2026 / arXiv:2601.07183 citation are
  unverified; the crate is an original implementation of the redundant-
  assignment idea (cf. IVF spill lists / SOAR / multi-probe LSH) and should
  be judged on src/main.rs's reproducible benchmarks, not the reference.

cargo test -p ruvector-rairs: 10/10 pass; recall@10 at nprobe∈{1,4,16}
unchanged (61.3/97.9/100 IvfFlat, 83.8/99.4/100 RairsStrict,
93.1/99.9/100 RairsSeil); index memory unchanged.

Co-Authored-By: claude-flow <ruv@ruv.net>

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: ruvnet <ruvnet@gmail.com>
2026-05-12 09:47:19 -04:00
..
adr research(nightly): rairs-ivf — RAIRS IVF, ruvector's first Inverted File Index (ADR-193) (#459) 2026-05-12 09:47:19 -04:00
analysis fix(brain): defer sparsifier build on startup for large graphs 2026-03-24 12:29:52 +00:00
api fix(brain): defer sparsifier build on startup for large graphs 2026-03-24 12:29:52 +00:00
architecture fix(brain): defer sparsifier build on startup for large graphs 2026-03-24 12:29:52 +00:00
benchmarks fix(brain): defer sparsifier build on startup for large graphs 2026-03-24 12:29:52 +00:00
cloud-architecture fix(brain): defer sparsifier build on startup for large graphs 2026-03-24 12:29:52 +00:00
cnn feat(demo): add Self-Learning tab with 6 interactive training demos 2026-03-11 19:31:23 -04:00
code-reviews docs: reorganize into subfolders 2026-01-21 23:43:50 -05:00
dag docs(dag): add comprehensive Neural DAG Learning implementation plan 2025-12-29 22:15:55 +00:00
development feat(micro-hnsw-wasm): Add Neuromorphic HNSW v2.3 with SNN Integration (#40) 2025-12-01 22:30:15 -05:00
examples feat(musica): structure-first audio separation via dynamic mincut (#337) 2026-04-08 12:23:48 -05:00
gnn fix(brain): defer sparsifier build on startup for large graphs 2026-03-24 12:29:52 +00:00
guides docs: add missing capabilities to advanced features guide 2026-02-26 16:09:06 +00:00
hailo feat(ruvector-hailo): NPU embedding backend + multi-Pi cluster (ADRs 167-170) (#413) 2026-05-04 08:30:40 -04:00
hnsw fix(brain): defer sparsifier build on startup for large graphs 2026-03-24 12:29:52 +00:00
hooks feat(cli): Implement full hooks system in Rust CLI 2025-12-27 01:08:36 +00:00
implementation fix(brain): defer sparsifier build on startup for large graphs 2026-03-24 12:29:52 +00:00
integration fix(brain): defer sparsifier build on startup for large graphs 2026-03-24 12:29:52 +00:00
nervous-system docs: reorganize into subfolders 2026-01-21 23:43:50 -05:00
optimization fix(brain): defer sparsifier build on startup for large graphs 2026-03-24 12:29:52 +00:00
plans/subpolynomial-time-mincut chore(docs): Clean up and reorganize documentation structure 2025-12-25 19:39:44 +00:00
postgres fix(brain): defer sparsifier build on startup for large graphs 2026-03-24 12:29:52 +00:00
project-phases Clean up repository structure and organize documentation 2025-11-20 19:50:03 +00:00
publishing fix(brain): defer sparsifier build on startup for large graphs 2026-03-24 12:29:52 +00:00
research research(nightly): rairs-ivf — RAIRS IVF, ruvector's first Inverted File Index (ADR-193) (#459) 2026-05-12 09:47:19 -04:00
reviews perf(ruvllm): optimize MoE routing with buffer reuse and optional metrics 2026-03-12 23:27:00 -04:00
ruvllm docs: reorganize into subfolders 2026-01-21 23:43:50 -05:00
rvagent feat(rvAgent): Complete DeepAgents Rust Conversion (ADR-093 → ADR-103) (#262) 2026-03-16 09:52:32 -04:00
sdk docs(sdk): add deep planning review for ruvector Python SDK 2026-04-25 20:28:54 -04:00
security feat(rvAgent): Complete DeepAgents Rust Conversion (ADR-093 → ADR-103) (#262) 2026-03-16 09:52:32 -04:00
sparse-inference feat: Add PowerInfer-style sparse inference engine with precision lanes (#106) 2026-01-04 23:40:31 -05:00
sql feat(postgres): Add ruvector-postgres extension with SIMD optimizations (#42) 2025-12-02 09:55:07 -05:00
testing Clean up repository structure and organize documentation 2025-11-20 19:50:03 +00:00
training fix(brain): defer sparsifier build on startup for large graphs 2026-03-24 12:29:52 +00:00
.gitkeep Clean up repository structure and organize documentation 2025-11-20 19:50:03 +00:00
.nojekyll fix: add .nojekyll to disable Jekyll processing 2026-03-11 17:53:19 -04:00
agi-container.md feat(rvAgent): Complete DeepAgents Rust Conversion (ADR-093 → ADR-103) (#262) 2026-03-16 09:52:32 -04:00
C2-shell-execution-hardening.md feat(rvAgent): Complete DeepAgents Rust Conversion (ADR-093 → ADR-103) (#262) 2026-03-16 09:52:32 -04:00
C8_RESULT_VALIDATION_IMPLEMENTATION.md feat(rvAgent): Complete DeepAgents Rust Conversion (ADR-093 → ADR-103) (#262) 2026-03-16 09:52:32 -04:00
consciousness-api.md feat(consciousness): SOTA IIT Φ, causal emergence, quantum collapse crate (ADR-131) 2026-03-31 16:36:25 -04:00
IMPLEMENTATION-C5.md feat(rvAgent): Complete DeepAgents Rust Conversion (ADR-093 → ADR-103) (#262) 2026-03-16 09:52:32 -04:00
index.html refactor: move CNN demo to docs/cnn/ for shorter URL 2026-03-11 17:52:13 -04:00
INDEX.md fix(brain): defer sparsifier build on startup for large graphs 2026-03-24 12:29:52 +00:00
moe-routing-optimization-analysis.md perf(ruvllm): optimize MoE routing with buffer reuse and optional metrics 2026-03-12 23:27:00 -04:00
README.md fix(brain): defer sparsifier build on startup for large graphs 2026-03-24 12:29:52 +00:00
REPO_STRUCTURE.md fix(brain): defer sparsifier build on startup for large graphs 2026-03-24 12:29:52 +00:00
research-openfang.md Add OpenFang project research document 2026-02-26 14:14:58 +00:00

RuVector Documentation

Complete documentation for RuVector, the high-performance Rust vector database with global scale capabilities.

📚 Documentation Structure

docs/
├── adr/                    # Architecture Decision Records
├── analysis/               # Research & analysis docs
├── api/                    # API references (Rust, Node.js, Cypher)
├── architecture/           # System design docs
├── benchmarks/             # Performance benchmarks & results
├── cloud-architecture/     # Cloud deployment guides
├── code-reviews/           # Code review documentation
├── dag/                    # DAG implementation
├── development/            # Developer guides
├── examples/               # SQL examples
├── gnn/                    # GNN/Graph implementation
├── guides/                 # User guides & tutorials
├── hnsw/                   # HNSW index documentation
├── hooks/                  # Hooks system documentation
├── implementation/         # Implementation details & summaries
├── integration/            # Integration guides
├── nervous-system/         # Nervous system architecture
├── optimization/           # Performance optimization guides
├── plans/                  # Implementation plans
├── postgres/               # PostgreSQL extension docs
├── project-phases/         # Development phases
├── publishing/             # NPM publishing guides
├── research/               # Research documentation
├── ruvllm/                 # RuVLLM documentation
├── security/               # Security audits & reports
├── sparse-inference/       # Sparse inference docs
├── sql/                    # SQL examples
├── testing/                # Testing documentation
└── training/               # Training & LoRA docs

Getting Started

Architecture & Design

API Reference

Performance & Benchmarks

Security

Implementation

Specialized Topics

Development

Research

  • research/ - Research documentation
    • cognitive-frontier/ - Cognitive frontier research
    • gnn-v2/ - GNN v2 research
    • latent-space/ - HNSW & attention research
    • mincut/ - MinCut algorithm research

For New Users

  1. Start with Getting Started Guide
  2. Try the Basic Tutorial
  3. Review API Documentation

For Cloud Deployment

  1. Read Architecture Overview
  2. Follow Deployment Guide
  3. Apply Performance Optimizations

For Contributors

  1. Read Contributing Guidelines
  2. Review Architecture Decisions
  3. Check Migration Guide

For Performance Tuning

  1. Review Optimization Guide
  2. Run Benchmarks
  3. Check Analysis

📊 Documentation Status

Category Directory Status
Getting Started guides/ Complete
Architecture architecture/, adr/ Complete
API Reference api/ Complete
Performance benchmarks/, optimization/, analysis/ Complete
Security security/ Complete
Implementation implementation/, integration/ Complete
Development development/, testing/ Complete
Research research/ 📚 Ongoing

Total Documentation: 460+ documents across 60+ directories


🔗 External Resources


Last Updated: 2026-02-26 | Version: 2.0.4 (core) / 0.1.100 (npm) | Status: Production Ready