[fix]Update the knowledge base configuration to address the issue of not being able to change embeding_id when it is null

This commit is contained in:
lixiangcheng1
2025-12-29 16:16:16 +08:00
parent f5af5cc58d
commit adbba8773b
2 changed files with 4 additions and 2 deletions

View File

@@ -242,8 +242,9 @@ async def _update_knowledge(
if "embedding_id" in update_dict:
embedding_id = update_dict["embedding_id"]
if embedding_id != db_knowledge.embedding_id:
vector_service = ElasticSearchVectorFactory().init_vector(knowledge=db_knowledge)
vector_service.delete()
if db_knowledge.embedding_id and db_knowledge.reranker_id:
vector_service = ElasticSearchVectorFactory().init_vector(knowledge=db_knowledge)
vector_service.delete()
document_service.reset_documents_progress_by_kb_id(db, kb_id=db_knowledge.id, current_user=current_user)
# 2. Update fields (only update non-null fields)