Merge #5257
Some checks failed
Indexing bench (push) / Run and upload benchmarks (push) Waiting to run
Benchmarks of indexing (push) / Run and upload benchmarks (push) Waiting to run
Benchmarks of search for geo (push) / Run and upload benchmarks (push) Waiting to run
Benchmarks of search for songs (push) / Run and upload benchmarks (push) Waiting to run
Benchmarks of search for Wikipedia articles (push) / Run and upload benchmarks (push) Waiting to run
Test suite / Tests on ubuntu-20.04 (push) Failing after 0s
Test suite / Tests almost all features (push) Has been skipped
Test suite / Test disabled tokenization (push) Has been skipped
Test suite / Run tests in debug (push) Failing after 11s
Test suite / Run Clippy (push) Failing after 11s
Test suite / Tests on windows-2022 (push) Failing after 43s
Test suite / Run Rustfmt (push) Successful in 2m21s
Run the indexing fuzzer / Setup the action (push) Successful in 1h5m6s
Test suite / Tests on macos-13 (push) Has been cancelled

5257: Fix ollama r=Kerollmops a=dureuill

Fix oversight in ollama embedder 

WIP Integration tests are on branch `ollama-integration-test` and will be added as a future PR.

Co-authored-by: Louis Dureuil <louis@meilisearch.com>
This commit is contained in:
meili-bors[bot] 2025-01-22 15:36:15 +00:00 committed by GitHub
commit b15de68831
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -45,11 +45,6 @@ impl EmbedderOptions {
// **warning**: do not swap these two `if`s, as the second one is always true when the first one is. // **warning**: do not swap these two `if`s, as the second one is always true when the first one is.
let (request, response) = if url.ends_with("/api/embeddings") { let (request, response) = if url.ends_with("/api/embeddings") {
(
serde_json::json!({"model": model, "input": [super::rest::REQUEST_PLACEHOLDER, super::rest::REPEAT_PLACEHOLDER]}),
serde_json::json!({"embeddings": [super::rest::RESPONSE_PLACEHOLDER, super::rest::REPEAT_PLACEHOLDER]}),
)
} else if url.ends_with("/api/embed") {
( (
serde_json::json!({ serde_json::json!({
"model": model, "model": model,
@ -59,6 +54,11 @@ impl EmbedderOptions {
"embedding": super::rest::RESPONSE_PLACEHOLDER, "embedding": super::rest::RESPONSE_PLACEHOLDER,
}), }),
) )
} else if url.ends_with("/api/embed") {
(
serde_json::json!({"model": model, "input": [super::rest::REQUEST_PLACEHOLDER, super::rest::REPEAT_PLACEHOLDER]}),
serde_json::json!({"embeddings": [super::rest::RESPONSE_PLACEHOLDER, super::rest::REPEAT_PLACEHOLDER]}),
)
} else { } else {
return Err(NewEmbedderError::ollama_unsupported_url(url)); return Err(NewEmbedderError::ollama_unsupported_url(url));
}; };