chore: optimize knowledge ID retrieval in base_search_knowledge_node

--bug=1062936 --user=刘瑞斌 【应用】应用访问限制开启登录认证,登录后对话,知识库引用文档标签检索节点的输出参数报错 https://www.tapd.cn/62980211/s/1789493
v3.2
CaptainB 2025-10-24 10:38:00 +08:00
parent 4398500200
commit 609667d9d3
1 changed files with 4 additions and 3 deletions

View File

@ -85,11 +85,11 @@ class BaseSearchKnowledgeNode(ISearchKnowledgeStepNode):
knowledge_id_list = self.get_reference_content(search_scope_reference)
else: # 文档
document_id_list = self.get_reference_content(search_scope_reference)
knowledge_id_list = QuerySet(Document).filter(
knowledge_id_list = list(QuerySet(Document).filter(
id__in=document_id_list
).values_list(
'knowledge_id', flat=True
).distinct()
).distinct())
get_knowledge_list_of_authorized = DatabaseModelManage.get_model('get_knowledge_list_of_authorized')
chat_user_type = self.workflow_manage.get_body().get('chat_user_type')
@ -107,7 +107,8 @@ class BaseSearchKnowledgeNode(ISearchKnowledgeStepNode):
QuerySet(Document).filter(
knowledge_id__in=knowledge_id_list,
is_active=False)]
embedding_list = vector.query(question, embedding_value, knowledge_id_list, document_id_list, exclude_document_id_list,
embedding_list = vector.query(question, embedding_value, knowledge_id_list, document_id_list,
exclude_document_id_list,
exclude_paragraph_id_list, True, knowledge_setting.get('top_n'),
knowledge_setting.get('similarity'),
SearchMode(knowledge_setting.get('search_mode')))