Claude
|
f2dbb6efbd
|
feat(rabitq): add RaBitQ rotation-based 1-bit quantization crate (ADR-154)
Implements SIGMOD 2024 RaBitQ algorithm as ruvector-rabitq crate:
- RandomRotation: Haar-uniform D×D orthogonal matrix via Gram-Schmidt
- BinaryCode: u64-packed sign bits + XNOR-popcount + angular correction estimator
- AnnIndex trait with 3 swappable backends (FlatF32, RabitqIndex, RabitqPlusIndex)
Measured on x86-64, D=128, Gaussian-cluster data (100 clusters, σ=0.6):
- RaBitQ+ rerank×5: 98.9% recall@10 at 4,271 QPS (2.05× vs exact 2,087 QPS)
- RaBitQ+ rerank×10: 100.0% recall@10 at 4,069 QPS (1.95×)
- Memory: 17.5× compression (1.4 MB vs 24.4 MB at n=50K, D=128)
- Binary codes: 16 bytes/vec (2 u64) vs 512 bytes (f32) at D=128
All 10 unit tests pass. cargo build --release succeeds.
https://claude.ai/code/session_01DAaNhfoLwpbWRbExsayoep
|
2026-04-23 07:56:23 +00:00 |
|