增加清除、删除日志文件接口

This commit is contained in:
Tiger Ren 2024-10-15 20:58:46 +08:00
parent e382fcb04e
commit e5244ab4e3
3 changed files with 22 additions and 1 deletions

View File

@ -112,6 +112,9 @@ def retrive_stream():
generated_report += chunk
yield chunk
return Response(event_stream_generate_report_updated(), content_type='text/event-stream')
elif classification_result.get('category')== 'clear_report':
deleted_files = zhipu_file_service.delete_file_by_prefix(prefix="销售日志", project_name="数字电网项目")
return deleted_files
else:
return "输入意图判断不明,请明确意图"

View File

@ -25,7 +25,7 @@ class ZhipuAlltoolService:
"properties": {
"category": {
"type": "string",
"description": "用户的意图有以下选项:web_search,retrive_knowledge,generate_report,update_report",
"description": "用户的意图有以下选项:web_search,retrive_knowledge,generate_report,update_report,clear_report",
}
},
"required": ["category"],

View File

@ -62,3 +62,21 @@ class ZhipuFileService:
if match:
versions.append(int(match.group(1)))
return max(versions) + 1
def delete_file_by_prefix(self, prefix, project_name):
file_list = self.get_file_list()
current_date = datetime.now().strftime('%Y-%m-%d')
base_filename = f"{prefix}-{project_name}-{current_date}"
deleted_files = []
for file in file_list:
if file['filename'].startswith(base_filename) and file['filename'] != base_filename + ".txt":
self.delete_file(file['id'])
deleted_files.append(file)
return deleted_files
def delete_file(self, document_id):
client = ZhipuAI(api_key=self.app_secret_key) # 请填写您自己的APIKey
result = client.files.delete(
file_id=document_id, #支持retrieval、batch、fine-tune、file-extract文件
)
return result