Skip to main content

EmbeddingProvider

Trait EmbeddingProvider 

Source
pub trait EmbeddingProvider: Send + Sync {
    // Required methods
    fn embed(&self, text: &str) -> Result<Vec<f32>>;
    fn embed_batch(&self, texts: &[&str]) -> Result<Vec<Vec<f32>>>;
    fn dimension(&self) -> usize;
    fn model_name(&self) -> &str;
    fn provider_name(&self) -> &'static str;

    // Provided method
    fn batch_size(&self) -> usize { ... }
}

Required Methods§

Source

fn embed(&self, text: &str) -> Result<Vec<f32>>

Source

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

Source

fn dimension(&self) -> usize

Source

fn model_name(&self) -> &str

Source

fn provider_name(&self) -> &'static str

Provided Methods§

Source

fn batch_size(&self) -> usize

Implementors§