Unverified 提交 8477368f 作者: 移花香 提交者: GitHub

delete_docs (#499)

删除文档的时候重新生成知识库(FAISS)内的数据
上级 8d669cdb
...@@ -175,7 +175,7 @@ async def list_docs( ...@@ -175,7 +175,7 @@ async def list_docs(
async def delete_docs( async def delete_docs(
knowledge_base_id: str = Query(..., knowledge_base_id: str = Query(...,
description="Knowledge Base Name(注意此方法仅删除上传的文件并不会删除知识库(FAISS)内数据)", description="Knowledge Base Name",
example="kb1"), example="kb1"),
doc_name: Optional[str] = Query( doc_name: Optional[str] = Query(
None, description="doc name", example="doc_name_1.pdf" None, description="doc name", example="doc_name_1.pdf"
...@@ -188,18 +188,20 @@ async def delete_docs( ...@@ -188,18 +188,20 @@ async def delete_docs(
doc_path = get_file_path(knowledge_base_id, doc_name) doc_path = get_file_path(knowledge_base_id, doc_name)
if os.path.exists(doc_path): if os.path.exists(doc_path):
os.remove(doc_path) os.remove(doc_path)
# 删除上传的文件后重新生成知识库(FAISS)内的数据
remain_docs = await list_docs(knowledge_base_id)
if len(remain_docs.data) == 0:
shutil.rmtree(get_folder_path(knowledge_base_id), ignore_errors=True)
else:
local_doc_qa.init_knowledge_vector_store(
get_folder_path(knowledge_base_id), get_vs_path(knowledge_base_id)
)
return BaseResponse(code=200, msg=f"document {doc_name} delete success") return BaseResponse(code=200, msg=f"document {doc_name} delete success")
else: else:
return BaseResponse(code=1, msg=f"document {doc_name} not found") return BaseResponse(code=1, msg=f"document {doc_name} not found")
remain_docs = await list_docs(knowledge_base_id)
remain_docs = remain_docs.json()
if len(remain_docs["data"]) == 0:
shutil.rmtree(get_folder_path(knowledge_base_id), ignore_errors=True)
else:
local_doc_qa.init_knowledge_vector_store(
get_folder_path(knowledge_base_id), get_vs_path(knowledge_base_id)
)
else: else:
shutil.rmtree(get_folder_path(knowledge_base_id)) shutil.rmtree(get_folder_path(knowledge_base_id))
return BaseResponse(code=200, msg=f"Knowledge Base {knowledge_base_id} delete success") return BaseResponse(code=200, msg=f"Knowledge Base {knowledge_base_id} delete success")
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论