Crate ruvector_core

Crate ruvector_core 

Source
Expand description

§Ruvector Core

High-performance Rust-native vector database with HNSW indexing and SIMD-optimized operations.

§Working Features (Tested & Benchmarked)

  • HNSW Indexing: Approximate nearest neighbor search with O(log n) complexity
  • SIMD Distance: SimSIMD-powered distance calculations (~16M ops/sec for 512-dim)
  • Quantization: Scalar (4x) and binary (32x) compression with distance support
  • Persistence: REDB-based storage with config persistence
  • Search: ~2.5K queries/sec on 10K vectors (benchmarked)

§⚠️ Experimental/Incomplete Features - READ BEFORE USE

  • AgenticDB: ⚠️⚠️⚠️ CRITICAL WARNING ⚠️⚠️⚠️
    • Uses PLACEHOLDER hash-based embeddings, NOT real semantic embeddings
    • “dog” and “cat” will NOT be similar (different characters)
    • “dog” and “god” WILL be similar (same characters) - This is wrong!
    • MUST integrate real embedding model for production (ONNX, Candle, or API)
    • See agenticdb module docs and /examples/onnx-embeddings for integration
  • Advanced Features: Conformal prediction, hybrid search - functional but less tested

§What This Is NOT

  • This is NOT a complete RAG solution - you need external embedding models
  • Examples use mock embeddings for demonstration only

Re-exports§

pub use advanced_features::ConformalConfig;
pub use advanced_features::ConformalPredictor;
pub use advanced_features::EnhancedPQ;
pub use advanced_features::FilterExpression;
pub use advanced_features::FilterStrategy;
pub use advanced_features::FilteredSearch;
pub use advanced_features::HybridConfig;
pub use advanced_features::HybridSearch;
pub use advanced_features::MMRConfig;
pub use advanced_features::MMRSearch;
pub use advanced_features::PQConfig;
pub use advanced_features::PredictionSet;
pub use advanced_features::BM25;
pub use agenticdb::AgenticDB;
pub use embeddings::EmbeddingProvider;
pub use embeddings::HashEmbedding;
pub use embeddings::BoxedEmbeddingProvider;
pub use embeddings::ApiEmbedding;
pub use error::Result;
pub use error::RuvectorError;
pub use types::DistanceMetric;
pub use types::SearchQuery;
pub use types::SearchResult;
pub use types::VectorEntry;
pub use types::VectorId;
pub use vector_db::VectorDB;

Modules§

advanced
Advanced techniques: hypergraphs, learned indexes, neural hashing, TDA (Phase 6)
advanced_features
Advanced Features for Ruvector
agenticdb
AgenticDB API Compatibility Layer
arena
Arena allocator for batch operations
cache_optimized
Cache-optimized data structures using Structure-of-Arrays (SoA) layout
distance
SIMD-optimized distance metrics Uses SimSIMD when available (native), falls back to pure Rust for WASM
embeddings
Text Embedding Providers
error
Error types for Ruvector
index
Index structures for efficient vector search
lockfree
Lock-free data structures for high-concurrency operations
quantization
Quantization techniques for memory compression
simd_intrinsics
Custom SIMD intrinsics for performance-critical operations
storage
Storage layer with redb for metadata and memory-mapped vectors
types
Core types and data structures
vector_db
Main VectorDB interface