feat: 添加标记等待状态文件为失败的功能

This commit is contained in:
Wenjie Zhang 2025-05-27 11:14:48 +08:00
parent 582742d016
commit 589894720c

View File

@ -43,6 +43,9 @@ class KnowledgeBase:
self._load_models()
# 检查所有 waiting 状态的文件并标记为 failed
self._mark_waiting_files_as_failed()
def _to_dict_safely(self, obj):
"""安全地将对象转换为字典,避免延迟加载问题"""
if hasattr(obj, 'to_dict'):
@ -760,6 +763,16 @@ class KnowledgeBase:
updated_db = self.update_database_record(db_id, name, description)
return updated_db
def _mark_waiting_files_as_failed(self):
"""将所有 status 为 'waiting' 的文件标记为 'failed'"""
with db_manager.get_session_context() as session:
waiting_files = session.query(KnowledgeFile).filter_by(status="waiting").all()
if waiting_files:
for file_obj in waiting_files:
file_obj.status = "failed"
session.commit()
logger.info(f"已将 {len(waiting_files)} 个 waiting 状态的文件标记为 failed")
def parse_node_data(node):
# Handles both LlamaIndex NodeWithScore and simple dicts/BaseModel instances