Module embedding

Module embedding 

Source
Expand description

Embedding Provider Trait - Unified Interface for Text Embeddings

TigerStyle: Simulation-first embedding generation.

See ADR-019 for design rationale.

§Architecture

EmbeddingProvider (trait)
├── SimEmbeddingProvider    (always available, deterministic)
└── OpenAIEmbeddingProvider (feature: embedding-openai)

§Usage

use umi_memory::embedding::{EmbeddingProvider, SimEmbeddingProvider};

#[tokio::main]
async fn main() {
    // Simulation (always available, deterministic)
    let provider = SimEmbeddingProvider::with_seed(42);

    let embedding = provider.embed("Alice works at Acme").await.unwrap();
    println!("Generated {} dimensional embedding", embedding.len());
}

Structs§

SimEmbeddingProvider
In-memory embedding provider for deterministic simulation testing.

Enums§

EmbeddingError
Unified error type for all embedding providers.

Traits§

EmbeddingProvider
Trait for embedding providers.

Functions§

is_normalized
Check if a vector is normalized (L2 norm ≈ 1.0).
normalize_vector
Normalize a vector to unit length (L2 norm = 1).
validate_dimensions
Validate that an embedding has the expected dimensions.