feat(evaluation): 成稿 100 分 rubric、证据评审与评测台调整
- 回忆录细项上限收紧为合计 100 分,去掉 110 折算与 raw_dimension_total - judge_memoir 拼接原始访谈与可选导出基线;无证据时提示保守打真实性相关分 - 自动评测 run 与手动章节/故事评审统一带 transcript 证据(会话/用户聚合、截断) - 访谈打分仍为情绪强化版 15 细项、总分 100 - 评测台默认基准改为 zuckxu 导出 MD;移除逐轮用户句对齐表及相关逻辑 - 新增 judge schema 与 memoir prompt 组装的单元测试
This commit is contained in:
@@ -1,31 +1,60 @@
|
||||
"""对话评审 rubric 文本(v1)。"""
|
||||
"""对话评审 rubric 文本(v1 · 访谈「情绪强化版」100 分)。"""
|
||||
|
||||
TURN_JUDGE_INSTRUCTIONS = """你是「岁月留书」访谈对话质量评审。根据下面维度给本轮 AI 回复打分(0-100 为 total_score,各子分上限已注明,子分之和应与 total_score 大体一致)。
|
||||
_CONV_LEAF_SPEC = """
|
||||
## 一、情绪价值与陪伴感(小计最高 30)
|
||||
- emotion_carry(情绪承接能力,最高 10):是否接住情绪、reflect、避免冷战与模板「我理解你」。
|
||||
- empathy_depth(共情深度,最高 8):情绪类型是否准、语境贴合、非空洞安慰。
|
||||
- emotion_safety(情绪安全感,最高 6):非评判、尊重、敏感话题语气、可跳过。
|
||||
- emotion_guidance(情绪引导能力,最高 6):引导感受、关键节点追问情绪、表达更具体。
|
||||
|
||||
维度(参考):
|
||||
- 情绪承接与共情(emotion_score,最高 30)
|
||||
- 信息获取与追问(information_score,最高 20)
|
||||
- 结构化访谈推进(structure_score,最高 10)
|
||||
- 提问质量(question_score,最高 10)
|
||||
- 人物理解与一致性(persona_score,最高 10)
|
||||
- 重复抑制(repetition_score,最高 10):是否重复了上 1~2 轮已问过的问题或同一资料槽;高度重复则低分
|
||||
- 自然流畅(naturalness_score,最高 10):是否像朋友聊天;有无不必要采访腔、总结腔、流程感
|
||||
## 二、信息获取能力(小计最高 25)
|
||||
- fact_mining(关键事实挖掘,最高 8)
|
||||
- info_completeness_guide(信息完整性引导,最高 8)
|
||||
- info_depth_mining(信息深度挖掘,最高 9):为何、动机与影响。
|
||||
|
||||
输出 JSON:**json** 字段名如下:
|
||||
total_score, emotion_score, information_score, structure_score, question_score, persona_score, repetition_score, naturalness_score, rationale
|
||||
## 三、人物建模能力(小计最高 15)
|
||||
- persona_understanding(人物理解,最高 7)
|
||||
- persona_consistency_verify(人物一致性验证,最高 4):矛盾澄清。
|
||||
- persona_expression_guide(人物表达引导,最高 4):「你是谁」层面。
|
||||
|
||||
只输出 JSON。"""
|
||||
## 四、结构化引导(小计最高 15)
|
||||
- interview_structure(访谈结构,最高 6):阶段与逻辑。
|
||||
- context_memory(上下文记忆,最高 5):关联前文;**重复盘问、同一槽位反复**在此项扣分。
|
||||
- rhythm_control(节奏控制,最高 4):自然;**采访腔、总结腔、流程感**在此项与情绪项综合体现。
|
||||
|
||||
## 五、提问质量(小计最高 15)
|
||||
- question_quality(问题质量,最高 7):开放、具体。
|
||||
- follow_up_depth(追问能力,最高 5)
|
||||
- non_leading(非引导性,最高 3)
|
||||
|
||||
输出 JSON 字段(仅这些键;务必含 rationale):
|
||||
emotion_carry, empathy_depth, emotion_safety, emotion_guidance,
|
||||
fact_mining, info_completeness_guide, info_depth_mining,
|
||||
persona_understanding, persona_consistency_verify, persona_expression_guide,
|
||||
interview_structure, context_memory, rhythm_control,
|
||||
question_quality, follow_up_depth, non_leading,
|
||||
total_score, rationale
|
||||
|
||||
`total_score` 必须等于上述 15 个细项之和(满分 100)。
|
||||
聚合分 emotion_score、information_score、persona_score、structure_score、question_score 可不填(服务端会重算)。
|
||||
只输出 JSON。
|
||||
"""
|
||||
|
||||
|
||||
CONV_JUDGE_INSTRUCTIONS = """你是访谈整段对话评审。给定完整 transcript(用户与 AI 多轮),打一个综合 total_score(0-100)。
|
||||
TURN_JUDGE_INSTRUCTIONS = (
|
||||
"你是「岁月留书」访谈对话质量评审,按下列 **情绪强化版** rubric 为本轮 AI 回复打分。\n"
|
||||
+ _CONV_LEAF_SPEC
|
||||
)
|
||||
|
||||
dimension_scores 建议至少包含:emotion, information, structure, repetition, naturalness(各 0-100 相对分量即可),用于反映整段是否重复盘问、是否自然;另可有 rationale。
|
||||
|
||||
只输出 JSON:total_score, dimension_scores, rationale。"""
|
||||
CONV_JUDGE_INSTRUCTIONS = (
|
||||
"你是访谈整段对话评审。给定完整 transcript(用户与 AI 多轮),按与单轮**相同**的 15 项细项与满分上限,"
|
||||
"对**整段对话表现**打一次分;`total_score` 为细项之和(100)。\n" + _CONV_LEAF_SPEC
|
||||
)
|
||||
|
||||
|
||||
COMPARE_CONV_STREAM_HINT = """你是访谈对话评测专家。下面给出一份「回放/新测」完整对话 transcript 及其整体评分(JSON)。请用中文直接写正文(不要用 JSON):
|
||||
1) 对这段对话的整体评价与风险点;
|
||||
1) 对这段对话的整体评价与风险点(对照情绪承接、信息挖掘、人物、结构、提问质量等);
|
||||
2) 可操作的改进建议(提示词、流程、模型参数等)。
|
||||
|
||||
笔调简洁、可执行。"""
|
||||
|
||||
@@ -1,11 +1,73 @@
|
||||
"""回忆录成稿评审 rubric 文本(v1)。"""
|
||||
"""回忆录成稿评审 rubric 文本(v1 · 子项上限合计 100 分制)。
|
||||
|
||||
MEMOIR_JUDGE_INSTRUCTIONS = """你是「岁月留书」回忆录成稿评审。根据真实性与覆盖、信息质量、叙事结构、语言文笔、情感、人物、连贯性、表达丰富度、出版就绪等,给出分项分(上限与 total_score 满分 100 一致)。
|
||||
说明:原产品表九个大类上限之和为 110;本 rubric 将各细项上限整档收紧,使九类小计之和为 100,
|
||||
便于与 `total_score` 直接一致,无需再折算。
|
||||
"""
|
||||
|
||||
输出 JSON 字段:
|
||||
total_score,
|
||||
authenticity_score, information_score, narrative_score, language_score,
|
||||
emotion_score, character_score, coherence_score, richness_score, publish_ready_score,
|
||||
rationale
|
||||
_MEMOIR_RUBRIC_BODY = """
|
||||
你必须按下列一级维度与子项及其**满分上限**打分;**全部细项得分之和须等于 `total_score`,且满分合计为 100**。
|
||||
|
||||
## 一、真实性与覆盖(小计最高 23)
|
||||
1. mem_fidelity(记忆忠实度,最高 9):hallucination、夸大/弱化/改写、因果关系、未证实推测、AI 补全编造。
|
||||
2. mem_factual_accuracy(事实准确性,最高 5):时间、人物关系、顺序、内部矛盾、数值细节。
|
||||
3. mem_factual_coverage(事实覆盖率,最高 5):关键/高情感事件、关键人物与细节是否遗漏。
|
||||
4. mem_traceability(记忆可追溯性,最高 4):与原始对话映射、来源模糊、证据与语义保持。
|
||||
|
||||
## 二、信息质量(小计最高 14)
|
||||
5. info_slot_coverage(槽位覆盖度,最高 6)
|
||||
6. info_sufficiency(信息充分性,最高 4)
|
||||
7. info_density(信息密度,最高 4)
|
||||
|
||||
## 三、叙事结构(小计最高 14)
|
||||
8. narr_structure(故事结构,最高 6)
|
||||
9. narr_paragraphs(段落组织,最高 5)
|
||||
10. narr_pacing(节奏控制,最高 3)
|
||||
|
||||
## 四、语言与文笔(小计最高 18)
|
||||
11. lang_fluency(语言流畅度,最高 3)
|
||||
12. lang_conciseness(表达精炼度,最高 3)
|
||||
13. lang_literary(文笔质量,最高 4)
|
||||
14. lang_controlled_expansion(控制性扩写,最高 4)
|
||||
15. lang_detail(细节还原与强化,最高 2)
|
||||
16. lang_style(风格一致性,最高 2)
|
||||
|
||||
## 五、情感表达(小计最高 9)
|
||||
17. emo_authenticity(情感真实度,最高 5)
|
||||
18. emo_depth(情感深度,最高 4)
|
||||
|
||||
## 六、人物建模(小计最高 9)
|
||||
19. char_understanding(人物理解,最高 4)
|
||||
20. char_consistency(人物一致性,最高 3)
|
||||
21. char_integration(人物融入度,最高 2)
|
||||
|
||||
## 七、连贯性(小计最高 4)
|
||||
22. coh_timeline(时间线一致性,最高 2)
|
||||
23. coh_cross_chapter(跨章节关联,最高 2)
|
||||
|
||||
## 八、表达丰富度(小计最高 5)
|
||||
24. rich_analogy(类比与引用,最高 3)
|
||||
25. rich_diversity(表达多样性,最高 2)
|
||||
|
||||
## 九、出版就绪度(小计最高 4)
|
||||
26. pub_editorial_cost(编辑成本,最高 2)
|
||||
27. pub_completeness(完整度,最高 2)
|
||||
|
||||
输出 JSON 字段(仅这些键;分值浮点;务必含 rationale 中文简述):
|
||||
mem_fidelity, mem_factual_accuracy, mem_factual_coverage, mem_traceability,
|
||||
info_slot_coverage, info_sufficiency, info_density,
|
||||
narr_structure, narr_paragraphs, narr_pacing,
|
||||
lang_fluency, lang_conciseness, lang_literary, lang_controlled_expansion, lang_detail, lang_style,
|
||||
emo_authenticity, emo_depth,
|
||||
char_understanding, char_consistency, char_integration,
|
||||
coh_timeline, coh_cross_chapter,
|
||||
rich_analogy, rich_diversity,
|
||||
pub_editorial_cost, pub_completeness,
|
||||
total_score, rationale
|
||||
|
||||
一级聚合分 authenticity_score、information_score、narrative_score、language_score、emotion_score、character_score、coherence_score、richness_score、publish_ready_score 可不填(服务端会按细项重算)。
|
||||
只输出 JSON。"""
|
||||
|
||||
MEMOIR_JUDGE_INSTRUCTIONS = (
|
||||
"你是「岁月留书」回忆录成稿评审,必须严格按照下列 rubric 打分。\n"
|
||||
+ _MEMOIR_RUBRIC_BODY
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user