This commit is contained in:
@@ -46,6 +46,20 @@ class BailianService:
|
||||
prompt = evaluation.prompt
|
||||
content = task.transcription
|
||||
|
||||
# 准备章节/时间戳数据以辅助分析发言节奏
|
||||
chapter_context = ""
|
||||
if task.auto_chapters_data:
|
||||
try:
|
||||
# 确保是字符串格式
|
||||
if isinstance(task.auto_chapters_data, (dict, list)):
|
||||
chapters_str = json.dumps(task.auto_chapters_data, ensure_ascii=False, indent=2)
|
||||
else:
|
||||
chapters_str = str(task.auto_chapters_data)
|
||||
|
||||
chapter_context = f"\n\n【章节与时间戳信息】\n{chapters_str}\n\n(提示:请结合上述章节时间戳信息,分析发言者的语速、节奏变化及停顿情况。)"
|
||||
except Exception as e:
|
||||
logger.warning(f"Failed to process auto_chapters_data: {e}")
|
||||
|
||||
# 截断过长的内容以防止超出Token限制 (简单处理,取前10000字)
|
||||
if len(content) > 10000:
|
||||
content = content[:10000] + "...(内容过长已截断)"
|
||||
@@ -53,7 +67,7 @@ class BailianService:
|
||||
# Construct messages
|
||||
messages = [
|
||||
{'role': 'system', 'content': 'You are a helpful assistant designed to output JSON.'},
|
||||
{'role': 'user', 'content': f"{prompt}\n\n以下是需要评估的内容:\n{content}"}
|
||||
{'role': 'user', 'content': f"{prompt}\n\n以下是需要评估的内容:\n{content}{chapter_context}"}
|
||||
]
|
||||
|
||||
completion = self.client.chat.completions.create(
|
||||
|
||||
Reference in New Issue
Block a user