浏览代码

fix: opensearch vector search falls back to keyword search (#20723)

Co-authored-by: wenjun.gu <wenjun.gu@envision-energy.com>
tags/1.4.2
jefferyvvv 4 个月前
父节点
当前提交
37c3283450
没有帐户链接到提交者的电子邮件
共有 1 个文件被更改,包括 10 次插入1 次删除
  1. 10
    1
      api/core/rag/datasource/vdb/opensearch/opensearch_vector.py

+ 10
- 1
api/core/rag/datasource/vdb/opensearch/opensearch_vector.py 查看文件

@@ -184,7 +184,16 @@ class OpenSearchVector(BaseVector):
}
document_ids_filter = kwargs.get("document_ids_filter")
if document_ids_filter:
query["query"] = {"terms": {"metadata.document_id": document_ids_filter}}
query["query"] = {
"script_score": {
"query": {"bool": {"filter": [{"terms": {Field.DOCUMENT_ID.value: document_ids_filter}}]}},
"script": {
"source": "knn_score",
"lang": "knn",
"params": {"field": Field.VECTOR.value, "query_value": query_vector, "space_type": "l2"},
},
}
}

try:
response = self._client.search(index=self._collection_name.lower(), body=query)

正在加载...
取消
保存