Spoiler Alert: Narrative Forecasting as a Metric for Tension in LLM Storytelling
- arXiv/venue: 2604.09854(2026-04)
- 作者: Peiqi Sui(McGill), Yutong Zhu, Tianyi Cheng, Hoyt Long, Ari Holtzman(University of Chicago), Peter West(UBC), Richard Jean So(Duke)
- 类型: 叙事张力的自动度量 + 结构化生成流水线
- 一句话: 提出 100-Endings 指标——逐句让模型"预测结局 100 次",用预测失败率度量叙事张力;发现 LLM 故事在 EQ-Bench 上分最高、但张力最低(甚至不如业余人类),并给出把张力显式拉高的生成流水线。
1. 要解决的问题
两个互相矛盾的现象:(1) LLM 生成的故事"叙事扁平"、缺乏持续张力;(2) 现有 rubric 评测(如 EQ-Bench)却把 LLM 输出排在《纽约客》专业小说之上。作者认为主流评测漏掉了优秀人类故事的关键维度——叙事张力(narrative tension):作者对"读者不确定性"和"信息释放节奏"的刻意管理。需要一个能捕捉这一维度的自动、可解释指标。
2. 方法 / 核心思路
(1)100-Endings 指标(核心) - 在每个句子边界(故事完成度 10%–99%),生成模型(Qwen3-32B, T=1.2)仅凭已揭示文本独立生成 100 个结局预测;裁判模型(Qwen3-8B, T=0)逐一二值判定"是否与真实结局吻合"。 - No-rate(i) = 该位置 100 次预测中"未吻合"的比例;Mean no-rate = 全部位置平均。no-rate 越高 = 越难预测 = 张力越强。
(2)互补统计量(刻画张力的"形状") - Late-stage no-rate(后段不可预测度):只统计"已揭示 ≥80%"处的均值——衡量张力是否撑到终章。 - Inflection rate(拐点率):把 no-rate 曲线缩放到单位正方形,算各顶点角度,在 30° / 60° / 120° 三个阈值上报告曲线"急转向"的比例——追踪反转与揭示(twists)。例:《Poor Girl》均值高(0.925)但拐点率低(0.048);《The Fellow》相反(均值 0.403、拐点率 0.339)。 - Post-spike retention(峰后保持率):每个局部峰值后 10 个位置内张力"保住了多少"——区分"高潮持续"还是"立刻泄气"。
(3)结构化生成流水线(把张力显式拉高) - Step 0 预热分析:模型读一篇参考故事(《纽约客》原文或凭参数记忆的经典),抽取 7 个场景级 beats,每个标注:具体动作 / 叙事技巧 / 记忆点。 - Step 1 Beat 改编:把 beat 模板套到目标故事创意上,产出"厚中间计划"——每个 beat 写明:叙事功能、披露/保留哪些信息、张力机制、赌注升级。 - Step 2 生成:基于创意 + 厚计划生成成稿,强调持续维持张力。流水线各步用 Claude Sonnet(T=0.7)。
叙事张力被操作化为"每个位置上结局的可预测性":理论上锚定 narratology(Propp / Genette / Sternberg / Carroll)中 fabula(事件真实顺序)与 syuzhet(对读者的披露顺序)之间的信息落差。
3. 数据与实验
- 语料(括号为 100-Ending 规模):《纽约客》(专业,261,1945–2019,500–5000 词)、Tell Me a Story(业余精选,100)、WritingPrompts(Reddit 业余,100)、StoryStar(无筛选爬取,100)、EQ-Bench LLMs(Top-10 模型 × 32 prompt,319)。
- 模型:Qwen3-32B(生成预测)、Qwen3-8B(裁判)、Claude Sonnet 4.6 / Opus 4.6 / GPT-5.2(生成流水线)。
4. 主要结果(带数值)
(A)EQ-Bench 与张力的矛盾(越靠后越"人类/高张力"):
| 来源 | EQ-Bench | Mean No-Rate | Late No-Rate | 峰后保持 | 拐点率(60°) |
|---|---|---|---|---|---|
| 《纽约客》(专业) | 78.71 | 0.765 | 0.607 | 51.7% | 0.200 |
| Tell Me a Story | 60.89 | 0.693 | 0.311 | 39.3% | 0.128 |
| StoryStar | 45.81 | 0.656 | 0.375 | 34.7% | 0.166 |
| Top-10 LLMs (0-shot) | 81.88 | 0.630 | 0.215 | 23.3% | 0.106 |
| Claude Opus 4.6 | 82.88 | 0.611 | 0.185 | 15.9% | 0.090 |
| Claude Sonnet 4.6 | 82.04 | 0.606 | 0.139 | 16.7% | 0.077 |
- 关键反转:LLM 在 EQ-Bench 最高(81–84),但 100-Endings 最低(0.630),低于所有人类语料(含业余);《纽约客》EQ-Bench 最低却张力全项最高。后段张力差距尤甚:《纽约客》0.607 vs LLM 0.215(近 3 倍)。
(B)流水线提升(Claude Sonnet 4.6):Mean NR 0.606→0.747(+0.141)、Late NR 0.139→0.339(+0.200,翻倍多)、峰后保持 16.7%→35.5%(+18.8pp)、EQ-Bench 82.04→85.03(登顶榜首)。约补上到《纽约客》一半的差距(0.577→0.702)。Opus/GPT-5.2 后段 NR 亦 +0.11 左右。
(C)稳定性:4 次独立重复(n=32),Mean/Late NR 标准差 ±0.001;流水线效应 +0.141±0.001 / +0.201±0.002。
5. 局限
- 不可预测 ≠ 好故事:只测情节层可预测性,语无伦次的乱写也可能高分,须与质量基准并用。
- 裁判循环偏置:靠"生成器 Qwen3 与裁判 Qwen3 严格分离 + 已知质量人类语料排序正确"来缓解。
- 差距未补满:最好流水线 0.702 仍 < 《纽约客》0.765,剩余差距来自默会文化知识、类型颠覆功力、独特作者声音。
- 停留在情节层:不评估情节以下的风格/主题张力。
6. 对做产品 / 工程的启发
- 100-Endings 是可直接落地的"张力仪表盘":对任意草稿逐句采样多次结局预测,画出 no-rate 曲线,肉眼即可看出"张力何时崩塌/是否撑到结尾"。可做写作产品的张力可视化与自动质检。
- 后段张力(late no-rate) 是 LLM 最大短板,产品可专门针对"结尾泄气"给出提示与重写建议。
- "厚中间计划 + 披露/保留信息" 的生成流水线是可复制的工程配方:显式写清"每一 beat 揭示/保留什么"能量化地拉高张力。
- 提醒:别只信单一 rubric 分(EQ-Bench 会误导),多指标面板更可靠——张力配上连贯度量([[16_skeleton_coherence]])与一致性诊断([[01_lost_in_stories]])。
关联
- [[04_codified_foreshadowing_payoff]]:天然搭配——04 在生成侧"先埋后收"制造信息落差,本篇正好用"结局可预测性"度量这种落差是否产生了张力;可把 100-Endings 当作 04 的验收指标。
- [[18_suspenseful_iterative_planning]]:悬念的生成(对抗性降低主角成功率)与本篇的张力度量互为一对。
- [[16_skeleton_coherence]]:两个自动度量(连贯 vs 张力)组合成评测面板。
- [[15_storyline_trees]]:结构化 beats/大纲可为张力流水线提供骨架。
- [[01_lost_in_stories]]、[[02_from_personas_to_plot_magnet]]、[[03_dome]]:长篇质量的相关工作。