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::ApiEmbedding;
pub use embeddings::BoxedEmbeddingProvider;
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 using SimSIMD
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