让 AI 写小说,Demo 十分钟,长篇要人命。三类病最常见:设定漂移——第三十章主角的眼睛颜色变了、死掉的人复活了;字数失控——说好每章三千字,写着写着五千或者一千八;越改越差——让模型自己润色,改到最后把风格也改没了。

我给小说写作搭的一条产线,核心思路只有一句话:写内容的和管纪律的必须分开。负责编排的技能叫”李白”,它自己一个字都不写——这篇文章讲它的架构和踩出来的设计决策。

核心决策:编排器零领域数据

李白覆盖”8 问开书 → 大纲 → 正文 → 改稿 → 归档”的全流程,但它本地没有任何领域数据:题材卡、文风定义、字数标准、项目状态,全部在运行时实时调用一个独立的写作服务(liyu)获取;大纲和正文的生成也由 liyu 执行。

李白自己只做三件事:问询编排(按流程把问题一个个抛给作者)、委派与验收(把生成任务派给服务、把评审任务派给独立的评审角色)、纪律把关(校验不过就打回)。

配套一条铁律:liyu 服务不可达,李白直接停。宁可罢工,不降级——编排器一旦自带的兜底生成逻辑被激活,它就会慢慢长成一个劣质的写作引擎,边界从此模糊。

这条决策的来源很实际:之前另有一个包办一切的写作技能,最后胖到没法维护。新设计文档里甚至专门写了一节”治理原则与叙事机制的切割边界”,并且经过了另一个 AI(Kimi)的复审——多一轮不同的眼睛挑边界漏洞,比多一轮自我审阅有效得多。

流程:8 问开书

开书不是”给我写个玄幻文”,而是八问问卷:

  1. 故事火花——一句话的核心吸引力,先问”哪里让人想读”,再谈题材;
  2. 平台 × 长度——发到哪个平台、写多长,这决定后面的筛选空间;
  3. 题材——按平台和长度的组合过滤题材池(题材卡数据在服务侧维护),再和火花做匹配度打分;
  4. 后面五问依次是情感内核、主角性别、文风、一句话概要、卖点方向——文风和概要可以调服务端的选项、或让 AI 出候选,情感内核这类则是固定选项。

八问答完,书的”宪法”就立起来了,后面每一步生成都有据可依。流程里还藏着一条纪律:每一问都必须标注数据来源——凡是从服务端取的才算领域数据,禁止在编排器本地写死一份副本。这个顺序也是刻意设计的:先问吸引力再问分类——多数失败的开书是先选了个热门分类,再往里塞一个没劲的故事。

主线四步:大纲、正文、改稿、归档

开书之后是四步主线,每一步谁干活都钉死了。

大纲:8 问确认后触发建书,大纲生成在服务端完成,李白取回后只做完整性校验和题材匹配核对。正文:逐章推进,李白只传章节 ID 和作者当场指令——约束包(8 问结果、题材卡、平台字数标准)由服务端组装,不拉回本地再拼一遍,避免两份组装逻辑各自漂移。改稿:评审给出评分,低于阈值进入定向修改循环,上限三轮;每轮保留候选版本,最终择优回滚;三轮仍不达标的,取最优版本、标记未达标、交作者裁决——不强行通过,也不无限重试。归档:李白逐项核对一致性清单(字数达标、章节完整、候选版本清理、无挂起改稿),这是它全程唯一一次实质把关,核对完触发导出和备份。

两个细节值得单独说。生成和评审用了不同模型(生成一个、评审另一个)——同一个模型自评自己的产出没有意义,异构才成立。生成走流式接口,中途断流就整章作废重生成、不搞断点续传,因为半截残章混进库存的代价远高于重生成一次;连续断流两次封顶,之后报错转人工。

纪律层:三个硬约束的实现

这是整条产线最值钱的部分,全部落在独立脚本里,生成完必过、不过就打回:

事实层校验(fact_layer.py / character_facts.py)。 人物的关键事实——外貌、能力、生死状态、人际关系——存成结构化档案。每章生成后抽事实断言核对:死掉的人不能再说话,断过的臂不能再握剑。设定漂移在入库前被拦截,而不是被读者在评论区抓到。

字数与节奏约束(rules_engine.py / word_standards.py)。 平台不同,章节字数的合理区间不同;开书时定下的标准是硬约束,超了砍、不足补,节奏参数(对话密度、场景切换频率)一并校验。

成书导出(export_book.py)。 全书完成后按平台格式导出,归档时附合规自查——归档不是”存个文件”,是把这本书的最终状态连同通过过的校验记录一起封存。

评审:换一颗大脑冷读

改稿环节最容易自欺:同一个模型既当运动员又当裁判,它会觉得自己写得挺好。李白的解法是把评审派给一个独立的评审角色(review-glm),用不同的模型对成稿做”冷读”——不带写作过程的心智、只看文本本身给反馈;评分量表在文学性四维之外,还按网文标准加权了爽点密度、章末钩子、信息增量。

这个思路和我在代码审查上的实践完全一致:审查者的价值来自新鲜视角,生成者对自己输出的确认偏误,换一颗大脑才能打破。

顺带回答一个架构问题:纪律层为什么长在编排器,而不是服务端? 因为服务端的能力清单里没有这些——评审量表的网文加权、黄金三章的高阈值加人审锚点流程、长篇每卷的卷纲刷新,都是服务端的缺口,只能编排层自建。”什么该委派、什么该自建”的判断依据,就是服务端能力档案和编排需求的对照表:服务端有的绝不重造,服务端缺的才留在本地。

诚实边界

三点如实说。其一,liyu 服务是私有依赖,这条产线目前在个人环境里运行,服务端的能力档案和李白的设计文档一一对应,外人复刻需要自己实现服务端。其二,端到端链路做过回归验证(生成、校验、导出全流程实测),但”产线通了”不等于”产线通向畅销”——纪律层解决的是一致性,不是文学性。其三,八问里的题材过滤池设计还留有”兜底”分支:筛不出合适题材时怎么办,仍在迭代。

写在最后

这条产线想证明的事情是:AI 长篇写作的瓶颈不在”写得不够像人”,而在长程一致性没有工程化的兜底。设定档案、字数纪律、冷读评审,这些都不性感,但它们把”写作 10 万字不崩”从运气变成了流程。

写内容的和管纪律的分开,AI 如此,人也一样。


本系列:(一)本文 · 编排器设计 | (二)领域数据需要一个家的服务端