Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BuildWriterPrompt ¶ added in v0.7.0
BuildWriterPrompt 是 writer 系统提示词的唯一组装入口,生产 / eval / 测试共用, 保证 A/B 两臂走同一路径(先例教训见 WithSimulationGuidance)。 writerPrompt 为含占位符的协议模板(可以已带 simulation guidance 后缀,占位符在 前缀内,替换不受影响);style 为空时不追加。
func WithSimulationGuidance ¶ added in v0.6.0
WithSimulationGuidance 给核心 prompt 追加仿写画像指引。导出供 eval 等外部场景做 variant 覆盖时复用,保证覆盖后的 prompt 与 Load 产出的 baseline 等价(同一包装路径)。
Types ¶
type Bundle ¶
type Bundle struct {
References tools.References
Prompts Prompts
Styles map[string]string
Voice string // 写作标准(文风层),已按三层覆盖组装;见 docs/voice-layer.md
}
Bundle 表示运行所需的静态资源集合。
func Load ¶
func Load(style string, opts LoadOptions) Bundle
Load 返回指定风格对应的资源集合。文风资产(voice / anti-ai-tone / styles / 题材 style-references)按 opts 做三层覆盖:内置 < 全局 < 本书。
func (*Bundle) OverridePrompt ¶ added in v0.6.0
OverridePrompt 用 raw 覆盖 bundle 中指定 prompt 文件对应的角色提示词,并走与 Load 完全相同的 WithSimulationGuidance 包装——eval 做 A/B 时只需调它,不必复制包装逻辑, 否则 baseline 带仿写画像后缀、variant 不带,A/B 不等价。file 为 prompt 文件名。 注意:覆盖 writer.md 时 raw 须自带 {{VOICE}} 占位符(协议模板语义);只想 A/B 文风 用 OverrideVoice。
func (*Bundle) OverrideVoice ¶ added in v0.7.0
OverrideVoice 用 raw 整体替换已组装的文风段(eval 做 voice A/B 用)。 variant 与 baseline 仍经 BuildWriterPrompt 同一路径组装。
type LoadOptions ¶ added in v0.7.0
type LoadOptions struct {
BookStyleDir string // <outputDir>/style
HomeStyleDir string // ~/.ainovel/style
}
LoadOptions 声明文风层的覆盖来源。空目录 = 跳过该层(eval 传零值以获得 纯内置的确定性 baseline,不受使用者本机覆盖污染)。
路径语义:BookStyleDir 绑定书目录(outputDir)而非 cwd——文风随书走,换目录 恢复同一本书加载同一份文风。注意与 rules 层不同(rules 的项目级绑定 cwd)。
func DefaultLoadOptions ¶ added in v0.7.0
func DefaultLoadOptions(outputDir string) LoadOptions
DefaultLoadOptions 根据书目录构造生产环境的覆盖来源。
type Prompts ¶
type Prompts struct {
ArchitectShort string
ArchitectLong string
Writer string // 协议模板,含 {{VOICE}} 占位符;终稿经 BuildWriterPrompt 组装
Editor string
ImportSegment string // 语义切分:识别章节/卷/附属文本边界
ImportAnalyze string // 连续批次逐章事实提取
ImportSynthesize string // 分层综合与卷弧划分(全书 BookSynthesis)
ImportRange string // 长书 Map 阶段连续区间摘要(RangeDigest)
SimulationSource string
SimulationMerge string
// Arbiter 裁定提示词(LLM-as-function,无 simulation guidance 包装)。
ArbiterPlanStart string
ArbiterIntervention string
ArbiterFailure string
}
Prompts 表示嵌入的提示词集合。