文风偏好测评
用对比样例法绕过抽象描述触达真实偏好——配眼镜换镜片式比较,不问「你喜欢什么风格」。
触发条件
- 用户要测评/确认文风、不确定自己喜欢什么
- novel-init 中自动调用,或用户手动
/novel-taste
前置读取
CLAUDE.md:已有偏好和目标读者(频道定位和阅读经验影响样例题材)- 最近 2-3 章
正文.md(如存在):对比当前实际文风和偏好是否偏离
测评方法论
核心原则
- 不问抽象问题:不问「你喜欢快节奏还是慢节奏」,只给对比样例
- 控制变量:每个维度的对比样例用同一个场景、同一组人物,只改变目标维度
- 从两端往中间收:先给极端对比,确定用户落在哪一端,再在该端内精细对比
- 允许「都不喜欢」:如果用户两端都不选,说明该维度对他不重要,跳过
测评流程
分两个阶段。第一阶段粗筛,覆盖全部维度,每个维度给一组极端对比快速定位偏好方向。第二阶段精调,根据第一阶段结果,在用户偏好的方向上进一步精细化。
任何时候用户说「差不多」「都可以」,就跳过该维度——说明这不是他真正的敏感点。
第一阶段:粗筛
逐维度进行。每轮:
- 用当前小说的题材和背景,即兴写两段极短文(每段 100-150 字),同一场景,不同风格
- 样例题材匹配目标读者的频道定位(男频→战斗/升级场景,女频→关系/情感场景)
- 用
AskUserQuestion展示,让用户选 A / B / 差不多,记录偏好
如果小说背景未确定,用通用都市/日常场景。
测评维度(7 个)
维度设计基于 SWAS (Kuijpers et al., 2014)、NCPM (Jacobs, 2015)、平行与偏离理论 (Menninghaus et al., 2024)、Biber MD 分析 (1988)、聚焦理论 (Genette, 1980)。详见 references/style-dimensions.md。
| # | 维度 | A 端 | B 端 |
|---|---|---|---|
| 1 | 处理模式 | 沉浸式:叙事推进,不关注写法 | 审美式:放缓品读,关注语言质感 |
| 2 | 心理意象 | 高意象:感官丰富,画面感强 | 低意象:白描事实,不渲染感官 |
| 3 | 情感投入 | 高投入:直接写情绪和心理 | 低投入:情绪用动作/环境折射 |
| 4 | 语言可预测性 | 高平行:口语化,句式随意,流畅 | 高偏离:用词考究,句式有设计感 |
| 5 | 信息密度 | 高密度:每句推新信息,跳跃 | 低密度:信息逐步释放,有过渡 |
| 6 | 叙事距离 | 内聚焦:贴着 POV 角色呼吸 | 外聚焦:镜头拉远,冷静观察 |
| 7 | 对话对抗性 | 高对抗:交锋感强,互相挤压 | 低对抗:潜台词多,含蓄回避 |
每个维度的对比样例写法见 references/style-dimensions.md。
第二阶段:精调
第一阶段结束后,汇总结果。在用户有明确偏好的维度上,进一步细化。
精调方式:在用户偏好的方向上,写 2 段样例,只在该维度的程度上有差异。比如用户在「语言可预测性」维度选了「高平行」端,精调时给 A=极口语碎片感、B=中等口语有节奏。
不需要对所有 7 个维度精调。只对用户有强偏好的 3-4 个维度做精调即可,其余维度按粗筛结果直接用。
收束:写入小说宪法
测评完成后,更新 CLAUDE.md 中「小说宪法」的以下段落(直接替换原文,不创建新 section):
叙事纹理:按 7 维度填入用户偏好位置。
处理模式:[落点] 心理意象:[落点] 情感投入:[落点]
语言可预测性:[落点] 信息密度:[落点]
叙事距离:[落点] 对话对抗性:[落点]
作者人格:从叙事纹理推导以下三个字段,其余字段保持不变:
- 叙事姿态 → 由「叙事距离」推导(内聚焦=贴着主角,外聚焦=冷眼旁观)
- 情感温度 → 由「情感投入」推导(高投入=热,低投入=冷,中性=温)
- 信息习惯 → 由「信息密度」推导(高密度=藏一半说一半,低密度=明牌全摊)
如果用户在测评中提到了喜欢的作品,追加到「风格锚点」。
向用户展示最终结果确认后再写入。
禁止
- 用抽象问题替代对比样例(「你喜欢快还是慢」)
- 对比样例脱离用户小说题材
- 跳过用户表示「差不多」的维度继续追问
- 所有维度都用同一组固定样例——必须根据用户题材即兴生成
- 测评结论不落盘