GitHub 原文

知识与 RAG 召回链

知识库、拆书、写法引擎、世界样本和角色资料不是孤立模块。它们会在不同阶段进入自动导演和章节执行上下文,帮助系统保持设定、风格和长篇连续性。

哪些资产会被使用

资产主要用途常见进入阶段
知识库文档事实资料、设定、参考文本、用户上传资料章节执行、拆书复用、创作中枢问答
拆书结果作品结构、人物、卖点、节奏、写法经验开书方向、写法参考、章节上下文
写法引擎叙述风格、语言规则、反模板表达正文生成、审核、修复
世界样本世界规则、势力、地点、边界世界搭建、章节上下文
角色库角色基础信息、形象资产、关系角色生成、章节上下文、漫画工坊
伏笔/事实账本已发生事实、读者承诺、未兑现伏笔章节执行、审核、状态回灌

资料来源分层

RAG 不是一个单独资料池。不同资料的可信度和用途不同:

层级示例使用原则
本书事实已写章节、事实账本、角色状态、世界状态最高优先级,不能被外部资料覆盖。
本书规划书契约、宏观故事、卷战略、章节任务指导下一步写作目标。
用户资料上传知识库、世界样本、专门设定文档用于补充事实和设定。
拆书结论参考作品结构、卖点、人物和写法分析迁移方法,不复制情节。
写法资产风格规则、反 AI 规则、样本文本特征控制表达方式。
临时对话创作中枢当前轮输入只能影响当前任务,长期生效需落库。

[!CHECKPOINT] 本书事实优先

如果外部知识库资料和本书已发生事实冲突,章节执行应优先遵守本书事实。参考资料用于补充,不用于推翻已经写入小说状态的内容。

RAG 在哪些阶段使用

阶段是否使用 RAG说明
候选方向可能使用拆书/资料摘要用于理解题材、读者期待和参考方向。
书契约主要使用候选和宏观故事关键目标来自用户选择,不应被外部资料覆盖。
世界搭建可能参考世界样本和知识库帮助生成规则、势力和地点。
角色生成可能参考世界、题材和角色资产角色必须服从本书方向。
卷战略使用书契约、宏观故事、角色阵容RAG 只作辅助,不替代主线规划。
节奏板/章节清单使用卷战略和章节任务资料重点是结构一致性。
章节执行明确使用任务驱动 RAGGenerationContextAssembler 会根据章节目标构造查询并召回资料。
审核/修复使用章节 runtime package修复器读取写作上下文、审核问题和 RAG 片段。

阶段召回重点

阶段更应该召回什么不应该让什么主导
候选方向题材趋势、读者期待、拆书卖点、用户明确参考不应让参考作品直接决定新书主线。
世界搭建世界样本、设定文档、地点/势力资料不应把世界样本原样复制成新书设定。
角色生成本书方向、世界边界、角色库经验不应只按参考作品角色模板套壳。
卷规划书契约、宏观故事、已定角色关系RAG 只能辅助,不应覆盖卷级承诺。
章节细化卷窗口、节奏节点、章节范围不应用外部资料跳过节奏板。
正文生成当前章节任务、本书事实、必要外部资料、写法规则不应召回大量无关资料塞满上下文。
审核修复正文、任务单、审核问题、本书约束不应因为参考资料不同就改掉本书事实。

章节 RAG 查询如何构造

章节执行不是用章节标题直接搜资料。系统会根据章节任务组装查询:

  • 小说标题。
  • 章节标题。
  • 章节目标。
  • 章节期待。
  • 本章必须推进内容。
  • 目标冲突。
  • 出场角色。
  • 结构化大纲。

这些信息来自章节任务单和上下文包。查询越贴近本章目标,召回越容易命中真正有用的资料。

向量检索与文本检索

检索方式适合内容常见问题
向量检索语义相近但用词不同的资料、长文档、拆书结论文档未索引或向量库不可用时无法命中。
文本检索人名、地名、专有名词、固定术语用户没有写清关键词时可能漏掉。
混合召回同时需要语义和关键词需要合理的文档标题、分块和元数据。

分块和元数据为什么重要

知识库不是上传文件就一定能召回。分块、标题、摘要和元数据会影响命中:

信息影响
文档标题帮助识别资料主题和来源。
chunk 文本决定向量语义和文本检索命中。
facets让题材、卖点、角色名、章节锚点等过滤更精确。
source type区分上传文档、拆书发布、世界样本等来源。
document version避免同名资料混在一起。

资料越长,越需要清晰标题和稳定分块。百万字原文如果没有可靠索引,章节执行只会看到有限片段。

知识库不命中时怎么查

  1. 确认文档上传成功。
  2. 确认索引任务完成。
  3. 确认 Qdrant 可连接。
  4. 查看单文档召回测试。
  5. 检查文档标题、摘要和关键段落是否包含角色名、地点名、设定名。
  6. 检查当前章节任务是否真的需要这份资料。

[!WARN] 召回不是越多越好

把无关资料塞进上下文会增加模型噪音。对长篇小说来说,准确命中当前章节任务,比一次召回大量资料更重要。

召回过多时怎么处理

现象可能原因推荐处理
章节写偏到参考作品参考资料权重过高或任务单过弱强化章节任务和本书事实,减少参考召回。
模型复述资料摘要召回片段太长或缺写作目标收窄查询,保留与本章冲突相关的片段。
角色行为像参考角色拆书角色信息未转成可迁移规则使用写法/结构结论,避免直接召回人物细节。
专名混入正文文本检索命中源作品专名审核和反 AI 规则应拦截专名泄露。
当前设定被外部资料覆盖本书事实优先级不清检查上下文包中本书状态是否完整。

写法资产如何进入正文

写法引擎通过 style binding 进入章节上下文。章节执行会把绑定的写法档案、可迁移风格规则和反 AI 约束放进 context package。生成后还会检查是否泄露源作品专名、地点、标题或标志性桥段。

写法资产适合解决:

  • 叙述口吻不稳定。
  • AI 味太重。
  • 章节语言和目标类型不匹配。
  • 参考作品的写法经验需要迁移。

写法资产不适合直接复制参考作品内容。它应提取可迁移规则,而不是复刻专名和桥段。

拆书结果如何复用

拆书结果发布到知识库后,可以作为后续创作召回资料。适合复用的内容包括:

  • 题材卖点。
  • 人物弧线。
  • 章节节奏。
  • 读者期待。
  • 世界规则。
  • 写法特征。

拆书结论进入后续章节时,应服务当前小说,不应强行把参考作品情节搬进新书。

调试路径

当用户说“知识库没生效”时,按这个顺序查:

步骤看什么判断
1文档是否存在不存在说明没有上传或被归档。
2索引状态未完成索引时不应期待向量召回。
3单文档召回测试能否用明确关键词命中。
4当前章节任务任务是否真的需要这份资料。
5上下文包RAG 片段是否进入生成上下文。
6审核报告是否因为冲突被后续审核/修复压掉。

如果单文档召回能命中,但章节执行没有使用,问题通常在章节任务查询或上下文组装;如果单文档召回也不命中,问题通常在索引、分块、标题或关键词。

与章节执行的优先级

冲突场景优先级
RAG 资料和已写章节冲突已写章节和事实账本优先。
写法规则和章节任务冲突章节任务优先,写法规则调整表达方式。
拆书结论和本书角色冲突本书角色状态优先。
世界样本和本书世界冲突本书世界优先。
用户当前明确指令和旧资料冲突当前指令可触发修订,但需要落库后才长期生效。

RAG 的目标是让系统知道更多,而不是让外部资料拥有最高决策权。

维护规则

新增会进入章节上下文的资料来源时,要说明它属于本书事实、规划资产、用户资料、拆书结论、写法资产还是临时对话。没有优先级说明的资料来源,容易在生成时覆盖本书事实。

如果资料来源会影响审核或修复,也要说明它在质量判断中的权重。 这样后续排查召回问题时,才能判断资料是缺失、过量还是优先级错误。

资产闭环

章节执行完成后,系统会把新事实、角色变化、伏笔状态和质量问题回灌。后续章节再组装上下文时,会读取这些状态。

闭环路径是:

  1. 自动导演准备书级、世界、角色和章节任务。
  2. 章节执行读取这些资产和 RAG 资料。
  3. 正文生成后提取事实、角色资源和伏笔变化。
  4. 状态提交和账本同步写回项目。
  5. 下一章读取新的状态继续生成。

这就是长篇生产链和一次性文本生成的核心区别。