def get_file_path(local_doc_id: str, doc_name: str): return os.path.join(UPLOAD_ROOT_PATH, local_doc_id, doc_name)
时间: 2023-12-14 18:02:25 浏览: 130
这是一个 Python 函数,用于获取指定文档的本地文件路径。该函数接受两个参数:local_doc_id 和 doc_name,分别表示文档所属的本地文件夹 ID 和文档的文件名。函数使用 os.path.join() 函数将这两个参数连接起来,生成文档的本地文件路径。文档的本地文件路径由 UPLOAD_ROOT_PATH(文件上传的根目录)、local_doc_id 和 doc_name 三部分组成,其中 local_doc_id 是 UPLOAD_ROOT_PATH 下的一个子文件夹,用于存储该文档的相关文件。
相关问题
async def list_docs( knowledge_base_id: Optional[str] = Query(default=None, description="Knowledge Base Name", example="kb1") ): if knowledge_base_id: local_doc_folder = get_folder_path(knowledge_base_id) if not os.path.exists(local_doc_folder): return {"code": 1, "msg": f"Knowledge base {knowledge_base_id} not found"} all_doc_names = [ doc for doc in os.listdir(local_doc_folder) if os.path.isfile(os.path.join(local_doc_folder, doc)) ] return ListDocsResponse(data=all_doc_names) else: if not os.path.exists(UPLOAD_ROOT_PATH): all_doc_ids = [] else: all_doc_ids = [ folder for folder in os.listdir(UPLOAD_ROOT_PATH) if os.path.isdir(os.path.join(UPLOAD_ROOT_PATH, folder)) ] return ListDocsResponse(data=all_doc_ids)
这是一个 Python 函数,用于列出文档列表。该函数包含一个可选的参数 knowledge_base_id,如果提供了该参数,则会列出该知识库中的所有文档。否则,将列出所有知识库中的文档名并返回。函数首先检查提供的知识库 ID 是否存在,如果存在,则获取该知识库中的本地文档文件夹路径。然后,它检查该文件夹是否存在。如果不存在,则返回一个包含错误消息的字典。如果该文件夹存在,则使用 os.listdir() 函数获取该文件夹中的所有文件名。然后,它使用列表推导式过滤掉所有非文件类型的对象,并将剩余的文件名添加到一个列表中。最后,函数返回一个 ListDocsResponse 对象,其中包含文档名的列表。如果没有提供知识库 ID,则获取所有知识库中的文档名并返回。
阅读全文