叙事空间创作系统·对标分析模块。执行步骤0:对标作品学习与风格解析。 分析对标作品的文风、世界观、情节套路和实体信息,生成风格报告。支持 quick(单段快速)/ standard(12-20章分层采样)/ deep(30章+高精度)三种 sample_scope 模式。
本模块在滚动创作中定位为可选强化模块,不是每个 cycle 的强制步骤。
guihua/xiezuo 提供可执行的风格约束benchmark_group 绑定建议(primary/support)执行本模块前,必须先通过 scripts/assemble_prompt.py 组装步骤0提示词并确认输出已生成。
对标分析为可选强化模块,不随 writing_mode 改变触发时机。 pipeline(xushikj-xiezuo)和 interactive(xushikj-hudong)两种模式都可复用同一份对标结果。
对标分析结束时,除风格报告外必须额外输出:
benchmark_binding.primary_groupbenchmark_binding.support_group(可为空)benchmark_binding.down_weighting(如慢热/克制/反套路)benchmark_binding.reason(简要说明匹配依据)该结构供 xushikj-chuangzuo 写入 state.json.benchmark_state,用于后续 cycle 路由与风格模块加载。
示例 A:首次建书
示例 B:中途偏风格
对标分析除风格报告外,还必须提取 5 个场景化文本切片:
~/.narrativespace/style_library/{author_slug}/;项目内回退路径 .xushikj/benchmark/style_snippets/LLM 产出切片后,使用以下命令写入本地库并自动更新 manifest:
python scripts/slice_library.py write-snippet \
--project-dir .xushikj \
--scene-type combat \
--content-file /path/to/snippet.md
该命令会写入 .xushikj/benchmark/style_snippets/{scene_type}_{timestamp}.md,并更新本地 manifest;若 state.json.benchmark_state.linked_author 已配置,还会同步写入 ~/.narrativespace/style_library/{linked_author}/ 并更新全局 manifest。
当用户希望精准克隆某位作者风格时:
.xushikj/config/style_modules/clone_{name}.yaml执行说明(重要):本章节的微观参数矩阵用于人工分析与归档,不建议直接全量注入模型。 运行期应先蒸馏为精简约束(如 5 条 DO + 5 条 DON'T + 1 段标杆文本)再注入写作提示词。
行文DNA是比逆向工程更深层的风格提取——从宏观统计维度深化至语法微观层,以主谓宾定状补为切入点分析句子骨架,并新增逻辑结构、信息锚定顺序、话语标记隐性化、衔接与指代、标点停顿5个微观维度,将大神级写手的行文模式提炼为可执行的语法级参数。
writing_dna_profile.yaml v2.0),含 8个微观核心基因段 + 4个宏观补充段:① sentence_architecture(句子结构基因)
A. 语法骨架层(主谓宾定状补)
dominant_sentence_pattern:主干句型分布占比(SVO标准型 / SV型无宾语 / 倒装型 / 无主句型 / 连动式 / 兼语式)subject_type_preference:主语类型偏好(人称代词主语 / 名词主语 / 零主语 / 事物主语拟人化频率)predicate_complexity:谓语复杂度分布(单动词谓语 / 连动谓语 / 动补结构 / 动趋结构 / 状-动组合)object_handling:宾语处理方式(直接宾语占比 / 省略宾语占比 / 双宾语频率 / 宾语从句频率)modifier_strategy:修饰语策略(定语平均长度及前置/后置偏好、状语类型偏好及前置频率、补语密度分布、单句最大修饰层数)B. 句式节奏层
avg_sentence_length + length_variance:平均句长及方差short_long_alternation:长短句交替规律(如"三短一长""短-短-长-短")sentence_opening_types:句首启动方式占比(名词/动词/状语/对话/感官/转折词)sentence_closure_pattern:句尾收束偏好(动词收束/名词收束/语气词收束/省略收束)clause_nesting_depth:复句嵌套深度分布(单句/二层复句/三层复句占比)compound_sentence_style:复句关系类型偏好(并列/递进/转折/因果/条件/假设分布)② lexical_structure(词语结构基因)
four_char_idiom_density:四字格密度(成语/类成语,个/千字)verb_nominalization_freq:动词名词化使用频率adjective_stacking_pattern:形容词叠用模式偏好(单叠/双叠/ABB式/AABB式)concrete_vs_abstract_ratio:具象词与抽象词比例colloquial_vs_literary_ratio:口语词与书面词比例signature_word_clusters:标志性词汇簇(高频共现词组)forbidden_words:作者个人禁用词列表③ paragraph_architecture(段落结构基因)
internal_logic_pattern:段内逻辑推进模式(因果链 / 并列铺陈 / 递进升级 / 对比翻转 / 时序流动)opening_sentence_function:段首句功能(承接 / 转折 / 设置场景 / 抛出悬念 / 直接行动)closing_sentence_function:段尾句功能(悬念留白 / 情绪锚定 / 行动延续 / 总结收束)avg_paragraph_length + length_variance:平均段落行数及方差paragraph_rhythm_pattern:段落长度交替节奏(长-短-长 / 渐长 / 渐短 / 不规则)density_modulation:信息密度调控(高密度动作段 vs 低密度留白段的比例及切换规律)④ logic_structure(逻辑结构基因)
causal_chain_style:因果链呈现方式(显式因果词"因此/所以" vs 隐式因果动作结果自现)argument_progression:论证/推理递进方式(层层剥笋 / 先结论后补证 / 类比迁移 / 归谬反证)contrast_deployment:对比手法类型(明对比 / 暗对比 / 时间对比 / 期望与现实对比)information_layering:同一事件多层呈现偏好(单层直叙 / 双层套叠 / 三层递进揭示)⑤ information_anchoring(信息锚定顺序基因)
result_first_vs_process_first:先给结果再补过程 vs 先铺过程再揭结果 的比例sensory_before_cognitive:感官描写前置于认知判断 vs 认知判断前置的偏好known_to_unknown_gradient:信息梯度方向(正向递进 / 反向揭示 / 螺旋式)detail_zoom_direction:细节聚焦方向(宏观→微观下钻 / 微观→宏观上拉 / 交替)exposition_embedding:设定/背景信息嵌入策略(动作中夹叙 / 对话中透露 / 内心独白补充 / 旁白直叙)⑥ discourse_marker_stealth(话语标记隐性化基因)
explicit_marker_density:显性话语标记词密度("但是/然而/因此/不过/况且"等,个/千字)implicit_transition_ratio:无标记转折/转换占全部转折的比例(隐性化程度指标)marker_stealth_techniques:隐性化替代手法(动作切断 / 场景跳切 / 节奏变化代替逻辑词 / 标点停顿代替关联词)paragraph_bridge_style:段间衔接风格(关联词桥接 / 意象呼应 / 动作接力 / 无桥硬切)⑦ cohesion_and_reference(衔接与指代结构基因)
zero_anaphora_frequency:零指代(省略主语/宾语)使用频率pronoun_vs_noun_repetition:代词替代 vs 名词重复 vs 同义替换的比例reference_chain_length:指代链平均长度(同一实体连续几个分句后必须重新具名)synonym_substitution_richness:同义替换丰富度(同一实体使用几种不同称呼)lexical_cohesion_pattern:词汇衔接模式(重复 / 同义 / 上下义 / 搭配衔接的偏好分布)thematic_progression:主位推进模式(主位一致 / 主位递进 / 述位→主位链 / 跳跃式)⑧ punctuation_and_pause(标点与停顿控制基因)
comma_rhythm_function:逗号的节奏控制功能(呼吸切分 / 列举分隔 / 插入语隔断 的比例)dash_usage_pattern:破折号使用模式(解释补充 / 话语中断 / 情绪延伸 / 场景切换 的偏好)ellipsis_function:省略号功能分布(未完之意 / 沉默停顿 / 思维断裂 / 时间流逝)exclamation_density:感叹号密度与使用场景约束(高潮限定 / 日常对话可用 / 严格克制)question_mark_rhetoric:问号修辞用法比例(真疑问 vs 反问 vs 自问自答 vs 内心质疑)sentence_break_vs_comma:断句偏好(短句断开用句号 vs 逗号连接长句 的倾向)paragraph_ending_punctuation:段尾标点偏好统计(句号/省略号/感叹号/引号 占比)emotion_curve_template:情绪曲线模板(段内情绪走向范式、情绪高点位置)dialogue_dna:对话基因(单轮对话平均字数、轮次节奏、台词密度)description_density:描写密度基因(每千字感官词数、动作词比例、非视觉感官占比)transition_patterns:场景转换手法(硬切/柔切/蒙太奇使用频率).xushikj/benchmark/writing_dna_profile.yaml(v2.0).xushikj/config/style_modules/dna_human_{project_name}.yaml(自动转换)LLM 产出 DNA 字段 JSON 后,使用以下命令写入 DNA 模块:
python scripts/slice_library.py write-dna \
--project-dir .xushikj \
--project-name frequency_watcher \
--dna-json /path/to/dna_output.json
该命令会写入 .xushikj/config/style_modules/dna_human_{project_name}.yaml。若文件已存在,仅追加缺失字段,不覆盖已有 key。
scripts/dna_to_constraints.py 的 load_dna_constraints() 先扫描 dna_human_*.yaml,若不存在则自动 fallback 扫描 clone_*.yaml。
clone_*.yaml)dna_human_*.yaml)行文DNA模块在 write_constraints 编译中优先级 supreme(最高),高于 clone_*.yaml 和所有内置风格模块。每章写作前必须扫描加载,不可跳过。
在多项目创作或 Mode A/B 混用场景中,系统有时可以复用已有的基准分析结果,以下规则明确判断标准。
满足以下全部条件时,允许复用上一个项目的基准分析:
命中以下任一条件时,必须重新对新项目独立执行基准分析:
| 一级分类 | 下属二级示例 |
|---|---|
| 都市 | 悬疑、特工、商战、日常、言情 |
| 修仙/奇幻 | 修仙、末世修炼、异能、高武 |
| 科幻 | 末世、星际、机甲、赛博朋克 |
| 历史 | 古代言情、宫廷权谋、架空历史 |
| 现实 | 职场、家庭、校园、农村 |
示例:都市悬疑 → 都市商战 = 同一级分类内,距离=1,可复用 示例:都市悬疑 → 修仙末世 = 跨两个一级分类,距离=2,必须重做
使用 benchmark_shared.md 复用基准结果时,仍需在 benchmark 输出中补充:
benchmark_binding.reason 中注明"复用自 XXX 项目,调整:YYY"