fix only full text search in app issue (#1736)

Co-authored-by: jyong <jyong@dify.ai>
This commit is contained in:
Jyong 2023-12-11 15:34:29 +08:00 committed by GitHub
parent 79b4366203
commit 8c451eb0e6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 14 additions and 2 deletions

View File

@ -141,6 +141,16 @@ class WeaviateVectorIndex(BaseVectorIndex):
"valueText": document_id "valueText": document_id
}) })
def delete_by_group_id(self, group_id: str):
if self._is_origin():
self.recreate_dataset(self.dataset)
return
vector_store = self._get_vector_store()
vector_store = cast(self._get_vector_store_class(), vector_store)
vector_store.delete()
def _is_origin(self): def _is_origin(self):
if self.dataset.index_struct_dict: if self.dataset.index_struct_dict:
class_prefix: str = self.dataset.index_struct_dict['vector_store']['class_prefix'] class_prefix: str = self.dataset.index_struct_dict['vector_store']['class_prefix']

View File

@ -82,7 +82,8 @@ class DatasetMultiRetrieverTool(BaseTool):
hit_callback.on_tool_end(all_documents) hit_callback.on_tool_end(all_documents)
document_score_list = {} document_score_list = {}
for item in all_documents: for item in all_documents:
document_score_list[item.metadata['doc_id']] = item.metadata['score'] if 'score' in item.metadata and item.metadata['score']:
document_score_list[item.metadata['doc_id']] = item.metadata['score']
document_context_list = [] document_context_list = []
index_node_ids = [document.metadata['doc_id'] for document in all_documents] index_node_ids = [document.metadata['doc_id'] for document in all_documents]

View File

@ -158,7 +158,8 @@ class DatasetRetrieverTool(BaseTool):
document_score_list = {} document_score_list = {}
if dataset.indexing_technique != "economy": if dataset.indexing_technique != "economy":
for item in documents: for item in documents:
document_score_list[item.metadata['doc_id']] = item.metadata['score'] if 'score' in item.metadata and item.metadata['score']:
document_score_list[item.metadata['doc_id']] = item.metadata['score']
document_context_list = [] document_context_list = []
index_node_ids = [document.metadata['doc_id'] for document in documents] index_node_ids = [document.metadata['doc_id'] for document in documents]
segments = DocumentSegment.query.filter(DocumentSegment.dataset_id == self.dataset_id, segments = DocumentSegment.query.filter(DocumentSegment.dataset_id == self.dataset_id,