feat:给超时处理器默认值

This commit is contained in:
SengokuCola
2025-05-29 13:38:11 +08:00
parent 126111c83c
commit b741ef761a
4 changed files with 34 additions and 10 deletions

View File

@@ -11,6 +11,7 @@ from datetime import datetime
from typing import Dict
from src.llm_models.utils_model import LLMRequest
from src.config.config import global_config
import asyncio
logger = get_logger("processor")
@@ -59,7 +60,8 @@ class ChattingInfoProcessor(BaseProcessor):
obs_info = ObsInfo()
await self.chat_compress(obs)
# 改为异步任务,不阻塞主流程
asyncio.create_task(self.chat_compress(obs))
# 设置说话消息
if hasattr(obs, "talking_message_str"):
@@ -95,15 +97,20 @@ class ChattingInfoProcessor(BaseProcessor):
return processed_infos
async def chat_compress(self, obs: ChattingObservation):
log_msg = ""
if obs.compressor_prompt:
summary = ""
try:
summary_result, _, _ = await self.model_summary.generate_response(obs.compressor_prompt)
summary = "没有主题的闲聊" # 默认值
if summary_result: # 确保结果不为空
summary = "没有主题的闲聊"
if summary_result:
summary = summary_result
except Exception as e:
logger.error(f"总结主题失败 for chat {obs.chat_id}: {e}")
log_msg = f"总结主题失败 for chat {obs.chat_id}: {e}"
logger.error(log_msg)
else:
log_msg = f"chat_compress 完成 for chat {obs.chat_id}, summary: {summary}"
logger.info(log_msg)
mid_memory = {
"id": str(int(datetime.now().timestamp())),
@@ -130,3 +137,5 @@ class ChattingInfoProcessor(BaseProcessor):
obs.compressor_prompt = ""
obs.oldest_messages = []
obs.oldest_messages_str = ""
return log_msg