1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
//! Vector indexing data structures
//!
//! This module provides a modular architecture for vector search:
//!
//! ## Module Structure
//!
//! - `ivf` - Core IVF (Inverted File Index) infrastructure
//! - `CoarseCentroids` - k-means clustering for coarse quantization
//! - `ClusterData` / `ClusterStorage` - generic cluster storage
//! - `SoarConfig` / `MultiAssignment` - SOAR geometry-aware assignment
//!
//! - `quantization` - Vector quantization methods
//! - `RaBitQCodebook` - RaBitQ binary quantization (32x compression)
//! - `PQCodebook` - Product Quantization with OPQ (ScaNN-style)
//! - `Quantizer` trait - common interface for quantizers
//!
//! - `index` - Ready-to-use IVF indexes
//! - `IVFRaBitQIndex` - IVF + RaBitQ
//! - `IVFPQIndex` - IVF + PQ
//!
//! ## SOAR (Spilling with Orthogonality-Amplified Residuals)
//!
//! The IVF module includes Google's SOAR algorithm for improved recall:
//! - Assigns vectors to multiple clusters (primary + secondary)
//! - Secondary clusters chosen to have orthogonal residuals
//! - Improves recall by 5-15% with ~1.3-2x storage overhead
// IVF core
pub use ;
// Quantization
pub use ;
// Indexes
pub use ;