pub trait EmbeddingProvider: Send + Sync {
// Required methods
fn content_dim(&self) -> usize;
fn trigger_dim(&self) -> usize;
fn embed_content(&self, text: &str) -> Result<Vec<f32>>;
fn embed_trigger(&self, text: &str) -> Result<Vec<f32>>;
// Provided method
fn model_name(&self) -> &'static str { ... }
}Expand description
Embedding provider trait — swap for real models at construction time.
Required Methods§
fn content_dim(&self) -> usize
fn trigger_dim(&self) -> usize
fn embed_content(&self, text: &str) -> Result<Vec<f32>>
fn embed_trigger(&self, text: &str) -> Result<Vec<f32>>
Provided Methods§
fn model_name(&self) -> &'static str
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".