fix(elasticsearch): set size on KNN search to respect top_k (#5910)

This commit is contained in:
Aari
2026-07-31 20:32:27 +05:30
committed by GitHub
parent 760dca6f39
commit 8d45fb3c9a
2 changed files with 43 additions and 1 deletions
+4 -1
View File
@@ -163,7 +163,10 @@ class ElasticsearchDB(VectorStoreBase):
search_query = self.custom_search_query(vectors, top_k, filters)
else:
search_query = {
"knn": {"field": "vector", "query_vector": vectors, "k": top_k, "num_candidates": top_k * 2}
# Without `size`, Elasticsearch caps the response at its default of 10 hits
# regardless of `knn.k`, silently truncating results when top_k > 10.
"size": top_k,
"knn": {"field": "vector", "query_vector": vectors, "k": top_k, "num_candidates": top_k * 2},
}
if filters:
filter_conditions = []