2020from .base_analyzer import BaseAnalyzer
2121
2222
23- class ChatQualityAnalyzer (BaseAnalyzer [QualityReview ]):
23+ class ChatQualityAnalyzer (BaseAnalyzer [QualityReview , list [ dict ] ]):
2424 """
2525 聊天质量分析器
2626 专门处理群聊质量的锐评和多维度分析
@@ -89,8 +89,7 @@ def build_prompt(self, data: list[dict]) -> str:
8989 if prompt_template :
9090 return render_template (prompt_template , messages_text = messages_text )
9191
92- prompt_template = """你是一个毒舌且幽默的群聊质量分析师。
93- 请分析以下群聊记录,输出一份"聊天质量锐评"。
92+ prompt_template = """请分析以下群聊记录,输出一份"聊天质量锐评"。
9493
9594## 任务目标:
96951. **维度划分**:将聊天内容划分为 3-6 个【高层级、抽象、泛化】的维度(例如:就业焦虑、生涯规划、技术方案研究、情感树洞、无意义水群等)。
@@ -297,8 +296,7 @@ async def summarize_batch_reviews(
297296 # 获取配置中的汇总提示词模板,如果没有则使用默认模板
298297 prompt_template = (
299298 self .config_manager .get_quality_summary_prompt ()
300- or """你是一个毒舌且幽默的群聊质量分析师。
301- 你现在有一份今天全天分散时间段的多个“增量批次点评笔记”。
299+ or """你现在有一份今天全天分散时间段的多个“增量批次点评笔记”。
302300你的任务是将这些分散的笔记汇总成一份最终的“全天聊天质量终极锐评”。
303301
304302## 任务目标:
@@ -310,7 +308,7 @@ async def summarize_batch_reviews(
310308
311309## 风格要求:
312310- 只有维度名称(name)需要高度概括抽象。
313- - 点评(comment)和总结(summary)请尽量生动、毒舌、 具体,要把一整天的梗串联起来。
311+ - 点评(comment)和总结(summary)请尽量生动、具体,要把一整天的梗串联起来。
314312
315313## 返回格式要求:
316314必须以纯 JSON 格式返回,不得包含任何 Markdown 格式。
@@ -339,6 +337,9 @@ async def summarize_batch_reviews(
339337 self .get_provider_id_key (), umo
340338 )
341339
340+ # 应用人设强化注入
341+ prompt = self ._apply_persona_reinforcement (prompt , system_prompt )
342+
342343 response = await call_provider_with_retry (
343344 self .context ,
344345 self .config_manager ,
@@ -430,6 +431,9 @@ async def analyze_quality(
430431 if not prompt :
431432 return None , TokenUsage ()
432433
434+ # 应用人设强化注入
435+ prompt = self ._apply_persona_reinforcement (prompt , system_prompt )
436+
433437 # 3. 调用 LLM
434438 response = await call_provider_with_retry (
435439 self .context ,
0 commit comments