Skip to main content

EmbeddingProvider

Trait EmbeddingProvider 

Source
pub trait EmbeddingProvider: Send + Sync {
    // Required methods
    fn embed(&self, text: &str) -> Option<Embedding>;
    fn dimension(&self) -> usize;
    fn name(&self) -> &str;

    // Provided method
    fn embed_batch(&self, texts: &[&str]) -> Vec<Option<Embedding>> { ... }
}
Expand description

Trait for embedding providers

Required Methods§

Source

fn embed(&self, text: &str) -> Option<Embedding>

Generate embedding for text

Source

fn dimension(&self) -> usize

Get embedding dimension

Source

fn name(&self) -> &str

Provider name

Provided Methods§

Source

fn embed_batch(&self, texts: &[&str]) -> Vec<Option<Embedding>>

Generate embeddings for multiple texts (batched)

Implementors§