pub struct CustomProvider { /* private fields */ }Expand description
Custom endpoint embedding provider
Implementations§
Source§impl CustomProvider
impl CustomProvider
Sourcepub fn new(endpoint_url: String, api_key: Option<String>) -> Self
pub fn new(endpoint_url: String, api_key: Option<String>) -> Self
Create a new custom endpoint provider
Sourcepub async fn detect_dimension(&mut self) -> Result<usize>
pub async fn detect_dimension(&mut self) -> Result<usize>
Detect dimension by making a test API call
Sourcepub async fn check_endpoint(&self) -> Result<()>
pub async fn check_endpoint(&self) -> Result<()>
Health check for custom endpoint
Trait Implementations§
Source§impl EmbeddingProvider for CustomProvider
impl EmbeddingProvider for CustomProvider
Source§fn embed_text<'life0, 'life1, 'async_trait>(
&'life0 self,
text: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<f32>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn embed_text<'life0, 'life1, 'async_trait>(
&'life0 self,
text: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<f32>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Generate embeddings for a single text
Source§fn get_dimension<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<usize>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_dimension<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<usize>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get the dimension of embeddings produced by this provider
Source§fn health_check<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn health_check<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Test if the provider is available and working
Source§fn get_info(&self) -> ProviderInfo
fn get_info(&self) -> ProviderInfo
Get provider-specific information
Auto Trait Implementations§
impl Freeze for CustomProvider
impl !RefUnwindSafe for CustomProvider
impl Send for CustomProvider
impl Sync for CustomProvider
impl Unpin for CustomProvider
impl !UnwindSafe for CustomProvider
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more