This commit is contained in:
Louis Dureuil 2025-03-31 15:26:31 +02:00
parent f729864466
commit 08ff135ad6
No known key found for this signature in database

View File

@ -188,7 +188,7 @@ async fn user_provide_mismatched_embedding_dimension() {
let (value, code) = index.add_documents(documents, None).await; let (value, code) = index.add_documents(documents, None).await;
snapshot!(code, @"202 Accepted"); snapshot!(code, @"202 Accepted");
let task = index.wait_task(value.uid()).await; let task = index.wait_task(value.uid()).await;
snapshot!(task, @r#" snapshot!(task, @r###"
{ {
"uid": "[uid]", "uid": "[uid]",
"batchUid": "[batch_uid]", "batchUid": "[batch_uid]",
@ -201,7 +201,7 @@ async fn user_provide_mismatched_embedding_dimension() {
"indexedDocuments": 0 "indexedDocuments": 0
}, },
"error": { "error": {
"message": "Index `doggo`: Invalid vector dimensions: expected: `3`, found: `2`.", "message": "Index `doggo`: Invalid vector dimensions in document with id `0` in `._vectors.manual`.\n - note: embedding #0 has dimensions 2\n - note: embedder `manual` requires 3",
"code": "invalid_vector_dimensions", "code": "invalid_vector_dimensions",
"type": "invalid_request", "type": "invalid_request",
"link": "https://docs.meilisearch.com/errors#invalid_vector_dimensions" "link": "https://docs.meilisearch.com/errors#invalid_vector_dimensions"
@ -211,46 +211,36 @@ async fn user_provide_mismatched_embedding_dimension() {
"startedAt": "[date]", "startedAt": "[date]",
"finishedAt": "[date]" "finishedAt": "[date]"
} }
"#); "###);
// FIXME: /!\ Case where number of embeddings is divisor of `dimensions` would still pass
let new_document = json!([ let new_document = json!([
{"id": 0, "name": "kefir", "_vectors": { "manual": [[0, 0], [1, 1], [2, 2]] }}, {"id": 0, "name": "kefir", "_vectors": { "manual": [[0, 0], [1, 1], [2, 2]] }},
]); ]);
let (response, code) = index.add_documents(new_document, None).await; let (response, code) = index.add_documents(new_document, None).await;
snapshot!(code, @"202 Accepted"); snapshot!(code, @"202 Accepted");
index.wait_task(response.uid()).await.succeeded(); let task = index.wait_task(response.uid()).await;
let (documents, _code) = index snapshot!(task, @r###"
.get_all_documents(GetAllDocumentsOptions { retrieve_vectors: true, ..Default::default() })
.await;
snapshot!(json_string!(documents), @r###"
{ {
"results": [ "uid": "[uid]",
{ "batchUid": "[batch_uid]",
"id": 0, "indexUid": "doggo",
"name": "kefir", "status": "failed",
"_vectors": { "type": "documentAdditionOrUpdate",
"manual": { "canceledBy": null,
"embeddings": [ "details": {
[ "receivedDocuments": 1,
0.0, "indexedDocuments": 0
0.0, },
1.0 "error": {
], "message": "Index `doggo`: Invalid vector dimensions in document with id `0` in `._vectors.manual`.\n - note: embedding #0 has dimensions 2\n - note: embedder `manual` requires 3",
[ "code": "invalid_vector_dimensions",
1.0, "type": "invalid_request",
2.0, "link": "https://docs.meilisearch.com/errors#invalid_vector_dimensions"
2.0 },
] "duration": "[duration]",
], "enqueuedAt": "[date]",
"regenerate": false "startedAt": "[date]",
} "finishedAt": "[date]"
}
}
],
"offset": 0,
"limit": 20,
"total": 1
} }
"###); "###);
} }