pub struct EmbeddingModel { /* private fields */ }Expand description
A loaded embedding model: tokenizer + encoder + the checkpoint’s own pooling rule.
Implementations§
Source§impl EmbeddingModel
impl EmbeddingModel
Sourcepub fn from_gguf_path(path: impl AsRef<Path>) -> Result<Self, EmbedError>
pub fn from_gguf_path(path: impl AsRef<Path>) -> Result<Self, EmbedError>
Opens path and builds whichever embedding stack its
general.architecture names, or refuses naming what is missing.
pub fn architecture(&self) -> &str
Sourcepub fn name(&self) -> &str
pub fn name(&self) -> &str
The checkpoint’s general.name, or its architecture when the
file carries none. What /v1/embeddings reports as model.
pub fn n_embd(&self) -> usize
pub fn n_ctx_train(&self) -> usize
pub fn pooling_type(&self) -> PoolingType
Sourcepub fn token_ids(&self, text: &str) -> Vec<u32>
pub fn token_ids(&self, text: &str) -> Vec<u32>
The exact ids the encoder will see for text: the tokenizer’s
pieces wrapped in the model’s own special tokens. Public because
/v1/embeddings has to report usage.prompt_tokens, and that
number is this length — llama.cpp counts the specials too.
Sourcepub fn embed(&self, text: &str, normalize: bool) -> Result<Vec<f32>, EmbedError>
pub fn embed(&self, text: &str, normalize: bool) -> Result<Vec<f32>, EmbedError>
Pooled embedding for text. normalize applies L2 normalization,
which is what an OpenAI-compatible /v1/embeddings response is
expected to carry and what llama.cpp’s server does by default;
the raw pooled vector is what the graph produced.
Un-pooled n_tokens × n_embd hidden states, for a caller that
wants to pool differently (or not at all).
Auto Trait Implementations§
impl !RefUnwindSafe for EmbeddingModel
impl !UnwindSafe for EmbeddingModel
impl Freeze for EmbeddingModel
impl Send for EmbeddingModel
impl Sync for EmbeddingModel
impl Unpin for EmbeddingModel
impl UnsafeUnpin for EmbeddingModel
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
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> ⓘ
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> ⓘ
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