ruvector/examples
rUv 31bb996d29
Test and validate core functionality (#54)
* chore: Add proptest regression data from test run

Records edge cases found during property testing that cause
integer overflow failures. These will help reproduce and fix
the boundary condition bugs in distance calculations.

* fix: Resolve property test failures with overflow handling

- Fix ScalarQuantized::distance() i16 overflow: use i32 for diff*diff
  (255*255=65025 overflows i16 max of 32767)
- Fix ScalarQuantized::quantize() division by zero when all values equal
  (handle scale=0 case by defaulting to 1.0)
- Bound vector_strategy() to -1000..1000 range to prevent overflow in
  distance calculations with extreme float values

All 177 tests now pass in ruvector-core.

* fix(cli): Resolve short option conflicts in clap argument definitions

- Change --dimensions from -d to -D to avoid conflict with global --debug
- Change --db from -d to -b across all subcommands (Insert, Search, Info,
  Benchmark, Export, Import) to avoid conflict with global --debug

Fixes clap panic in debug builds: "Short option names must be unique"

Note: 4 CLI integration tests still fail due to pre-existing issue where
VectorDB doesn't persist its configuration to disk. When reopening a
database, dimensions are read from config defaults (384) instead of
from the stored database metadata. This is an architectural issue
requiring VectorDB changes to implement proper metadata persistence.

* feat(core): Add database configuration persistence and fix CLI test

- Add CONFIG_TABLE to storage.rs for persisting DbOptions
- Implement save_config() and load_config() methods in VectorStorage
- Modify VectorDB::new() to load stored config for existing databases
- Fix dimension mismatch by recreating storage with correct dimensions
- Fix test_error_handling CLI test to use /dev/null/db.db path

This ensures database settings (dimensions, distance metric, HNSW config,
quantization) are preserved across restarts. Previously opening an existing
database would use default settings instead of stored configuration.

* fix(ruvLLM): Guard against edge cases in HNSW and softmax

- memory.rs: Fix random_level() to handle r=0 (ln(0) = -inf)
- memory.rs: Fix ml calculation when hnsw_m=1 (ln(1) = 0 → div by zero)
- router.rs: Add division-by-zero guard in softmax for larger arrays

These edge cases could cause undefined behavior or NaN propagation.

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-12-06 09:36:47 -05:00
..
agentic-jujutsu feat: Add comprehensive agentic-jujutsu integration examples and tests 2025-11-22 03:12:31 +00:00
docs docs: Organize examples/ with comprehensive READMEs 2025-11-29 14:05:04 +00:00
exo-ai-2025 feat(examples): Add ultra-low-latency meta-simulation engine (#53) 2025-12-04 18:00:21 -05:00
google-cloud feat(micro-hnsw-wasm): Add Neuromorphic HNSW v2.3 with SNN Integration (#40) 2025-12-01 22:30:15 -05:00
graph docs: Organize examples/ with comprehensive READMEs 2025-11-29 14:05:04 +00:00
meta-cognition-spiking-neural-network feat(gnn-v2): Comprehensive GNN v2 implementation with cognitive substrate (#43) 2025-12-02 11:26:10 -05:00
nodejs docs: Organize examples/ with comprehensive READMEs 2025-11-29 14:05:04 +00:00
onnx-embeddings feat(examples): Add ONNX-Rust embeddings example for RuVector 2025-11-29 18:11:26 -05:00
refrag-pipeline feat: Add REFRAG pipeline example demonstrating 30x RAG latency reduction 2025-11-27 20:59:23 +00:00
rust docs: Organize examples/ with comprehensive READMEs 2025-11-29 14:05:04 +00:00
ruvLLM Test and validate core functionality (#54) 2025-12-06 09:36:47 -05:00
scipix Plan Rust Mathpix clone for ruvector (#28) 2025-11-29 17:34:47 -05:00
spiking-network feat(micro-hnsw-wasm): Add Neuromorphic HNSW v2.3 with SNN Integration (#40) 2025-12-01 22:30:15 -05:00
ultra-low-latency-sim feat(examples): Add ultra-low-latency meta-simulation engine (#53) 2025-12-04 18:00:21 -05:00
wasm-react docs: Organize examples/ with comprehensive READMEs 2025-11-29 14:05:04 +00:00
wasm-vanilla docs: Organize examples/ with comprehensive READMEs 2025-11-29 14:05:04 +00:00
README.md docs: Organize examples/ with comprehensive READMEs 2025-11-29 14:05:04 +00:00

RuVector Examples

Comprehensive examples demonstrating RuVector's capabilities across multiple platforms and use cases.

Directory Structure

examples/
├── rust/                 # Rust SDK examples
├── nodejs/               # Node.js SDK examples
├── graph/                # Graph database features
├── wasm-react/           # React + WebAssembly integration
├── wasm-vanilla/         # Vanilla JS + WebAssembly
├── agentic-jujutsu/      # AI agent version control
├── exo-ai-2025/          # Advanced cognitive substrate
├── refrag-pipeline/      # Document processing pipeline
└── docs/                 # Additional documentation

Quick Start by Platform

Rust

cd rust
cargo run --example basic_usage
cargo run --example advanced_features
cargo run --example agenticdb_demo

Node.js

cd nodejs
npm install
node basic_usage.js
node semantic_search.js

WebAssembly (React)

cd wasm-react
npm install
npm run dev

WebAssembly (Vanilla)

cd wasm-vanilla
# Open index.html in browser

Example Categories

Category Directory Description
Core API rust/basic_usage.rs Vector DB fundamentals
Batch Ops rust/batch_operations.rs High-throughput ingestion
RAG Pipeline rust/rag_pipeline.rs Retrieval-Augmented Generation
Advanced rust/advanced_features.rs Hypergraphs, neural hashing
AgenticDB rust/agenticdb_demo.rs AI agent memory system
GNN rust/gnn_example.rs Graph Neural Networks
Graph graph/ Cypher queries, clustering
Node.js nodejs/ JavaScript integration
WASM React wasm-react/ Modern React apps
WASM Vanilla wasm-vanilla/ Browser without framework
Agentic Jujutsu agentic-jujutsu/ Multi-agent version control
EXO-AI 2025 exo-ai-2025/ Cognitive substrate research
Refrag refrag-pipeline/ Document fragmentation

Feature Highlights

Vector Database Core

  • High-performance similarity search
  • Multiple distance metrics (Cosine, Euclidean, Dot Product)
  • Metadata filtering
  • Batch operations

Advanced Features

  • Hypergraph Index: Multi-entity relationships
  • Temporal Hypergraph: Time-aware relationships
  • Causal Memory: Cause-effect chains
  • Learned Index: ML-optimized indexing
  • Neural Hash: Locality-sensitive hashing
  • Topological Analysis: Persistent homology

AgenticDB

  • Reflexion episodes (self-critique)
  • Skill library (consolidated patterns)
  • Causal memory (hypergraph relationships)
  • Learning sessions (RL training data)
  • Vector embeddings (core storage)

EXO-AI Cognitive Substrate

  • exo-core: IIT consciousness, thermodynamics
  • exo-temporal: Causal memory coordination
  • exo-hypergraph: Topological structures
  • exo-manifold: Continuous deformation
  • exo-exotic: 10 cutting-edge experiments
  • exo-wasm: Browser deployment
  • exo-federation: Distributed consensus
  • exo-node: Native bindings
  • exo-backend-classical: Classical compute

Running Benchmarks

# Rust benchmarks
cargo bench --example advanced_features

# Refrag pipeline benchmarks
cd refrag-pipeline
cargo bench

# EXO-AI benchmarks
cd exo-ai-2025
cargo bench

License

MIT OR Apache-2.0