修复了judeger的响应问题

This commit is contained in:
jinye_huang 2025-07-10 16:15:13 +08:00
parent ae6801a7d5
commit 157d3348a6
3 changed files with 10 additions and 4 deletions

View File

@ -7,7 +7,7 @@
import logging
import json
from typing import Dict, Any
from typing import Dict, Any, Union
from core.ai import AIAgent
from core.config import ConfigManager, GenerateTopicConfig, GenerateContentConfig
@ -36,12 +36,12 @@ class ContentJudger:
self.prompt_builder = JudgerPromptBuilder(config_manager)
self.output_manager = output_manager
async def judge_content(self, generated_content: str, topic: Dict[str, Any]) -> Dict[str, Any]:
async def judge_content(self, generated_content: Union[str, Dict[str, Any]], topic: Dict[str, Any]) -> Dict[str, Any]:
"""
调用AI审核生成的内容
Args:
generated_content: 已生成的原始内容JSON字符串格式
generated_content: 已生成的原始内容JSON字符串或字典对象
topic: 与内容相关的原始选题字典
Returns:
@ -62,10 +62,16 @@ class ContentJudger:
else:
logger.warning("从原始内容提取标签失败")
# 将字典转换为JSON字符串以便在提示中使用
if isinstance(generated_content, dict):
generated_content_str = json.dumps(generated_content, ensure_ascii=False, indent=2)
else:
generated_content_str = str(generated_content)
# 1. 构建提示
system_prompt = self.prompt_builder.get_system_prompt()
user_prompt = self.prompt_builder.build_user_prompt(
generated_content=generated_content,
generated_content=generated_content_str,
topic=topic
)