Module embeddings

Module embeddings 

Source
Expand description

Embedding Management

Provides embedding generation from various providers (OpenAI, local models) with caching and batch processing support.

§Features

  • Multiple Providers: OpenAI, local models, custom implementations
  • Caching: TTL-based cache to reduce redundant API calls
  • Batch Processing: Efficient batch embedding generation
  • Async Support: Non-blocking embedding generation

§Example

use oxify_vector::embeddings::{EmbeddingProvider, MockEmbeddingProvider};

// Use mock provider for testing
let provider = MockEmbeddingProvider::new(384);

let text = "Hello, world!";
let embedding = provider.embed(text)?;

assert_eq!(embedding.len(), 384);

Structs§

CachedEmbeddingProvider
Cached embedding provider
EmbeddingCache
Embedding cache with TTL
MockEmbeddingProvider
Mock embedding provider for testing
OpenAIConfig
OpenAI embedding provider configuration
OpenAIEmbeddingProvider
OpenAI embedding provider (stub for future implementation)

Traits§

EmbeddingProvider
Trait for embedding providers