长文摘要不是"调一次模型"
把一份 80 页的报告总结成一页,单次调用通常做不到(超上下文、丢中段、格式不稳)。要做成流水线:
切分 → 分段摘要 → 归并 → 校验 → 成稿
一、切分与分段摘要
- 按章节结构切(有标题就按标题,别按固定字数硬切);
- 每段摘要要带定位(第几节/第几页),否则后续无法回溯;
- 摘要保留关键数字与原话(金额、条款、结论),不要只留形容词;
- 段落摘要长度设上限(否则归并阶段又超长)。
二、归并(分层的)
- 摘要数量 > 8 条时二次归并(把摘要再分组,组内归并,再总归并);
- 归并要求:去重(同一事实在多段出现只留一次)、保序(按原文顺序)、标注来源;
- 归并阶段最容易"越写越抽象",所以要求"每条结论后附来源段落编号"。
三、校验(比生成更重要)
- 数字校验:成稿里出现的每个数字,必须能在原文中找到(程序自动比对);
- 覆盖校验:原文的关键章节是否都有体现(允许有"本章无重要结论"的显式说明);
- 长度与格式:符合约定(一页 = 多少字、几级标题);
- 禁止推断:成稿里不允许出现原文没有的判断(宁可写"未提及")。
四、成稿与引用
- 结论在前、细节在后(用户先要结论);
- 每条结论尽量附来源编号,便于人回查;
- 明确写出局限(哪些部分材料缺失、哪些结论不充分)。
流水线的工程细节
- 幂等:同输入必出同输出(缓存与重跑依赖它);
- 断点续跑:分段摘要是最贵的一步,结果要落盘,失败从断点继续;
- 可观测:每段用了多少 token、花了多少时间、失败了几次;
- 可回滚:摘要与成稿都留版本,出问题能退回上一版。
怎么验收
抽 10 份真实长文,人工核对三件事:
- 关键数字是否全部在成稿里且正确;
- 有没有编造(原文没有的判断);
- 一页成稿读完,没有读过原文的人能否抓住要点。
第 1、2 条可以程序化抽检(数字比对 + 人工看推断句),第 3 条必须人看。