fix: MCP插件TimeoutError修复 + 多项Bug修复和性能优化
- fix: MCP插件管理接口改为后台任务,修复TimeoutError - fix: MCP连接失败后上下文清理的cancel scope错误 - feat: MCP插件后台注册添加重试机制 - fix: 限制每章自动创建伏笔数量上限 - fix: 修复JSON非法转义字符清洗 - fix: SSE流式生成添加心跳保活 - fix: 职业生成改用POST请求避免URL长度限制 - perf: 使用torch CPU版本加速Docker构建 - fix: 自动修复JSON字符串值中的裸换行符 - feat: 集成json5容错解析器
This commit is contained in:
@@ -2,6 +2,7 @@
|
||||
from typing import Dict, Any, List, Optional, Callable, Awaitable
|
||||
from sqlalchemy.ext.asyncio import AsyncSession
|
||||
from app.services.ai_service import AIService
|
||||
from app.services.json_helper import loads_json
|
||||
from app.services.prompt_service import prompt_service, PromptService
|
||||
from app.logger import get_logger
|
||||
import json
|
||||
@@ -277,7 +278,7 @@ class PlotAnalyzer:
|
||||
cleaned = self.ai_service._clean_json_response(response)
|
||||
|
||||
# 尝试解析JSON
|
||||
result = json.loads(cleaned)
|
||||
result = loads_json(cleaned)
|
||||
|
||||
# 验证必要字段
|
||||
required_fields = ['hooks', 'plot_points', 'scores']
|
||||
@@ -594,4 +595,4 @@ def get_plot_analyzer(ai_service: AIService) -> PlotAnalyzer:
|
||||
global _plot_analyzer_instance
|
||||
if _plot_analyzer_instance is None:
|
||||
_plot_analyzer_instance = PlotAnalyzer(ai_service)
|
||||
return _plot_analyzer_instance
|
||||
return _plot_analyzer_instance
|
||||
|
||||
Reference in New Issue
Block a user