1. 建立问题库大纲,对应每个人生阶段槽位
2. 鼓励使用更生活化的交流语言共情与总结
3. 降低评审模型可能发生截断的概率
4. 成稿质量维度强化情感表达和上下文连贯性
This commit is contained in:
yangshilin
2026-04-09 15:32:35 +08:00
parent 064ad2161d
commit e1341c6d18
49 changed files with 938 additions and 271 deletions

View File

@@ -71,6 +71,17 @@ def _memoir_editor_narrative_style_block() -> str:
- 保持时间顺序和逻辑清晰
- **在事实边界内,鼓励使用有温度的传记笔法**,让读者感受到讲述者当时的心情;可有文学性的表达与恰当的情感渲染;**须同时遵守上文「事实边界」规则 14**
### 成稿质量维度(取向;任何一条不得突破事实边界)
- **真实性与覆盖**:只基于口述展开,不编不补结局;材料里已有的人生节点尽量写透,短材料写短文。
- **信息质量**:保留可核对的具体人、事、时地感,删水词与重复,让读者觉得**有料**。
- **叙事结构**:段内时间顺序清楚,有场景与转折时写出来;像「一节故事」而非点状流水账。
- **语言与文笔**:可读、略有文采;过渡自然,**可控扩写**仅指修辞与衔接,非捏造事实。
- **情感表达**:情感与口述一致,可书面化语气,**禁止**表演式滥情。
- **人物建模**:人与人的关系、态度与选择要写清,让读者知道「这是怎样一个人」。
- **连贯性**:与「衔接上下文」中的人称、时间线一致,不自相矛盾。
- **表达丰富度**:可适度用比喻、换笔,忌整段排比堆砌。
- **出版就绪度**:整体像能进编辑流程的章节初稿,不是聊天实录、也不是宣传腔。
### 示例(仅供参考允许的改写程度;只改语气、不加新事实)
- 原文:「那时候穷啊,一家人挤一间房。」
→ 改写:「那时家里拮据,一家人挤在一间屋里过日子。」

View File

@@ -116,9 +116,7 @@ def normalize_batch_plan_reduce_new_story_fragmentation(
)
]
candidate = StoryBatchPlan(units=units)
ok, err = validate_story_batch_plan(
ordered_segment_ids, candidate, valid_story_ids
)
ok, err = validate_story_batch_plan(ordered_segment_ids, candidate, valid_story_ids)
if not ok:
logger.warning(
"batch_plan_normalize_revalidate_failed err={} keep_original",
@@ -222,9 +220,7 @@ class StoryRouteAgent:
story_meta: dict[str, dict[str, int]] | None = None,
) -> StoryRouteDecision:
if not llm:
fb = default_append_target_story_id(
candidate_stories, story_meta, settings
)
fb = default_append_target_story_id(candidate_stories, story_meta, settings)
if fb and fb in valid_story_ids:
return StoryRouteDecision(
decision="append_story",
@@ -245,9 +241,7 @@ class StoryRouteAgent:
)
def _decide_fallback() -> StoryRouteDecision:
fb = default_append_target_story_id(
candidate_stories, story_meta, settings
)
fb = default_append_target_story_id(candidate_stories, story_meta, settings)
if fb and fb in valid_story_ids:
return StoryRouteDecision(
decision="append_story",