DOME: Generating Long-form Story Using Dynamic Hierarchical Outlining with Memory-Enhancement
- arXiv: 2412.13575(2024-12)
- 作者: Qianyue Wang, Jinwu Hu, Zhengping Li, Yufeng Wang, Daiyuan Li, Yu Hu, Mingkui Tan(华南理工大学、琶洲实验室、鹏城实验室、香港理工大学)
- 类型: 大纲 + 记忆增强方法("plan-and-write"主流路线的代表作)
- 一句话: 用"动态分层大纲"平衡宏观规划与灵活性,用"时序知识图谱记忆"降低前后冲突,是长篇生成方法侧最常被引用的基线之一。
1. 要解决的问题
现有长篇生成两种做法各有短板: - 固定大纲:不能适应生成过程中的不确定性 → 情节不连贯。 - 无大纲逐步生成:缺宏观规划 → 情节不完整。
DOME 同时兼顾情节完整性与上下文一致性。
2. 方法架构
2.1 动态分层大纲 DHO(Dynamic Hierarchical Outline)
两层结构,且边写边扩展(而非一次性预生成):
- 粗纲(Rough Outline):基于 Joseph Campbell 的写作理论生成五阶段粗纲,保证情节完整。
R = LLM(WT, I, P_rough_outline)(WT=写作理论,I=用户输入) - 细纲(Detailed Outline):对每个粗纲小节,根据已生成内容动态展开 M=3 个细纲。
d_i = LLM(r_i, RInfo.i, P_detailed_outline) - 故事生成:从细纲顺序生成局部故事。
s_i^t = LLM(do_i^t, DInfo.i^t, P_gen_story)
关键点:规划与写作交融进行,既保留结构又能随生成情况自适应。
2.2 记忆增强模块 MEM(Memory-Enhancement)
用时序知识图谱(TKG)存取故事信息:
- 存储:从每句抽取
<主语, 动作, 宾语>三元组,加章节索引形成四元组<subject, action, object, chapter_index>。 - 检索:先按实体检索四元组,再用 LLM 做语义过滤(5 条相关性标准:主语匹配、宾语匹配、动作匹配、事件相似、写作有用性),选 top-k。
- 作用:提供简洁且语义相关的历史上下文,减少前后冲突。
2.3 时序冲突分析器(Temporal Conflict Analyzer)
一个自动评估指标:把四元组按 5 条规则分组 → 生成自然语言摘要 → LLM 依时间顺序判断是否合理。
冲突率 CR = (冲突四元组 / 总四元组) × 100%
2.4 流水线(Algorithm 1)
- 初始化知识图谱;2. 由输入+写作理论生成粗纲;3. 对每个粗纲小节:检索历史 → 生成细纲 → 对每个细纲:查询相关内容 → 生成局部故事 → 存入 TKG。
3. 数据与评估
- 数据:来自 DOC(Yang et al., 2023)的 20 个故事前提(含设定、人物、要求的情节线)。
- 自动指标:Ent-2(词汇多样性)、Conflict Rate(冲突率)。
- 人工评估(3 人盲排):情节完整性 PCo、情节连贯 PCoh、相关性 Rel、趣味性 Int、表达连贯 ECoh。
4. 主要结果
对比 Qwen1.5-72B-Chat 基线: - Ent-2 +35.7%(9.06 → 12.29);冲突率 −15.2%(0.66 → 0.56);生成长度近乎翻倍(495.70 → 7113.75 词)。
对比当时 SOTA(DOC): - Ent-2 +6.3%(11.55 → 12.29);冲突率 −27.3%(1.21 → 0.56);5 项人工指标全部排第一。
消融: - 去掉 MEM:冲突率暴涨 0.56 → 4.52,Ent-2 降到 10.00。 - 去掉 DHO:长度掉到 1471.90 词,人工指标全面下降。
可扩展性: 换不同 LLM 都有提升(Llama3-70B 冲突降 18%+,Yi1.5-34B 熵升 29%+)。
5. 结论
DHO(结构 vs 灵活的平衡)+ MEM(记忆降冲突)协同,使长篇生成在自动与人工评估上超越当时 SOTA。论文称 MEM 使冲突降低约 87.61%。
6. 局限
- 重度依赖人工评估与自定义 prompt。
- 成本高:约 200 次 API 调用/篇,一篇 ~7000 词约需 ~4 小时。
- 基线数据集偏少(20 个前提)。
7. 对做产品 / 工程的启发
- "两层动态大纲" 是可控性与灵活性的好折中:先定五段式骨架,细纲随写随扩。
- 把叙事抽成带章节索引的四元组存 KG,是低成本长程记忆的实用做法。
- 冲突率(CR)可作为一个便宜的自动质量指标接入 CI,无需全靠人评。
- 注意成本:动态大纲 + 检索会显著放大 API 调用,产品化需做缓存/裁剪。
关联
- 记忆图谱 + 冲突检测思路与 [[02_from_personas_to_plot_magnet]] 的世界状态图、[[01_lost_in_stories]] 的一致性检测同源。
- 写作理论驱动大纲的思路,可与 [[04_codified_foreshadowing_payoff]] 的叙事结构编码结合。