mirror of
https://github.com/meilisearch/meilisearch.git
synced 2025-03-06 22:02:34 +08:00
Remove Embedder:embed
This commit is contained in:
parent
73d2dbd60f
commit
afb4b9677f
@ -637,23 +637,7 @@ impl Embedder {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Embed one or multiple texts.
|
/// Embed in search context
|
||||||
///
|
|
||||||
/// Each text can be embedded as one or multiple embeddings.
|
|
||||||
fn embed(
|
|
||||||
&self,
|
|
||||||
texts: Vec<String>,
|
|
||||||
deadline: Option<Instant>,
|
|
||||||
) -> std::result::Result<Vec<Embedding>, EmbedError> {
|
|
||||||
match self {
|
|
||||||
Embedder::HuggingFace(embedder) => embedder.embed(texts),
|
|
||||||
Embedder::OpenAi(embedder) => embedder.embed(&texts, deadline),
|
|
||||||
Embedder::Ollama(embedder) => embedder.embed(&texts, deadline),
|
|
||||||
Embedder::UserProvided(embedder) => embedder.embed(&texts),
|
|
||||||
Embedder::Rest(embedder) => embedder.embed(texts, deadline),
|
|
||||||
Embedder::Composite(embedder) => embedder.search.embed(texts, deadline),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#[tracing::instrument(level = "debug", skip_all, target = "search")]
|
#[tracing::instrument(level = "debug", skip_all, target = "search")]
|
||||||
pub fn embed_search(
|
pub fn embed_search(
|
||||||
@ -661,7 +645,15 @@ impl Embedder {
|
|||||||
text: String,
|
text: String,
|
||||||
deadline: Option<Instant>,
|
deadline: Option<Instant>,
|
||||||
) -> std::result::Result<Embedding, EmbedError> {
|
) -> std::result::Result<Embedding, EmbedError> {
|
||||||
let mut embedding = self.embed(vec![text], deadline)?;
|
let texts = vec![text];
|
||||||
|
let mut embedding = match self {
|
||||||
|
Embedder::HuggingFace(embedder) => embedder.embed(texts),
|
||||||
|
Embedder::OpenAi(embedder) => embedder.embed(&texts, deadline),
|
||||||
|
Embedder::Ollama(embedder) => embedder.embed(&texts, deadline),
|
||||||
|
Embedder::UserProvided(embedder) => embedder.embed(&texts),
|
||||||
|
Embedder::Rest(embedder) => embedder.embed(texts, deadline),
|
||||||
|
Embedder::Composite(embedder) => embedder.search.embed(texts, deadline),
|
||||||
|
}?;
|
||||||
let embedding = embedding.pop().ok_or_else(EmbedError::missing_embedding)?;
|
let embedding = embedding.pop().ok_or_else(EmbedError::missing_embedding)?;
|
||||||
Ok(embedding)
|
Ok(embedding)
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user