Skip to main content

HashEmbeddingProvider

Struct HashEmbeddingProvider 

Source
pub struct HashEmbeddingProvider { /* private fields */ }
Expand description

Deterministic hash-based embedding provider.

Useful for testing the full embedding pipeline without requiring an ML model. The same input text always produces the same embedding vector.

Implementations§

Source§

impl HashEmbeddingProvider

Source

pub fn new(dimensions: usize) -> Self

Create a new hash embedding provider with the given dimensions.

Source

pub fn default_384() -> Self

Create a new hash embedding provider with the default 384 dimensions.

Trait Implementations§

Source§

impl AsyncEmbeddingProvider for HashEmbeddingProvider

Source§

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

Generate an embedding vector for a single text.
Source§

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

Generate embedding vectors for a batch of texts.
Source§

fn dimensions(&self) -> usize

The dimensionality of the embedding vectors produced by this provider.
Source§

fn model_name(&self) -> &str

The name of the model used by this provider.
Source§

impl EmbeddingProvider for HashEmbeddingProvider

Source§

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

Generate an embedding vector for a single text.
Source§

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

Generate embedding vectors for a batch of texts.
Source§

fn dimensions(&self) -> usize

The dimensionality of the embedding vectors produced by this provider.
Source§

fn model_name(&self) -> &str

The name of the model used by this provider.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.