你写了一封 200 字的邮件,90% 满意,让模型”把第二段紧凑一下,顺便改掉拗口的地方”。回来一封 230 字的邮件,无可否认更顺——但已经不是你的了。第一句被重写,第四句的梗丢了,第二段从四句变三句,你专门用的”buggy”被换成了”间歇性故障”。你没要这些。模型过度编辑,是因为它把”改掉拗口的地方”解读成”凡是你觉得不够好的都可以改”,而它觉得不够好的几乎是全部。
本文讲清楚为什么模型默认走”最大改动”路线,以及怎么把 prompt 写成真正的 diff,而不是重写。
常见原因
1. 动词范围开放
“润色”、“改进”、“紧凑”、“编辑”——这些都是无界的。它们暗示”能改的地方都改”,模型听话。
如何判断:你的动词没有约束对象。“润色” vs “只润色方括号里标注的句子”——前者开放,后者受限。
2. 没声明”不许动”的范围
如果你只说要改什么,你就没说要保留什么。RLHF 让模型偏好”完整产出”,所以它什么都动。
如何判断:你的 prompt 写了要改什么,但没列出哪些必须 byte 级保留。
3. 输出格式是”完整文本”而不是 diff
你让它把整段返回,它就得生成每一句——包括不该动的——重新生成就引入漂移。要 diff 才能强制最小改动。
如何判断:你要的是完整新版,不是改动列表也不是 unified diff。
4. 模型以为它在协作,不知道被约束
默认聊天人格是”乐于助人的助手”。乐于助人的助手会”主动改进”。你没明说”别碰”,“乐于助人”就过火。
如何判断:有些地方确实改好了,但你没要那些改动。
5. system prompt 里装了风格模板
如果你有个”专业写作”system prompt,它会按那个模板理解编辑任务——把语气往模板拉,而不是往你的原文拉。
如何判断:改后语气像你的 system prompt 风格,不像你的原稿。
动手前先确认
- 保存原文和被过度编辑的输出,方便 diff。
- 标清楚你想保留的具体词/句。
- 同一 prompt 换一个模型试一下——确认不是某个模型独有的行为。
- 检查 system prompt 或 project 指令是不是在偏向”大改”。
- 再次 prompt 之前先想清楚:你想要 diff、tracked-changes 列表、还是有约束的完整新版?
需要收集的信息
- 原文,逐字节准确。
- 你用的 prompt。
- 你得到的输出。
- 想保留不动的句子/词清单。
- 模型、temperature、system prompt 或 project 上下文。
最短修复路径
Step 1:开放动词换成有界操作
不要说”润色”,给手术级指令:
差: "润色这封邮件。"
好: "只改第二段的第 3 句。其他句子 byte 级保持。返回完整邮件,
只有那一句变了,并另起一行写:'已改:<旧> -> <新>'。"
Step 2:声明”不许动”清单
加显式保留条款:
保留规则:
- 不要重写任何我没明确标出的句子。
- 以下词原样保留:"buggy"、"老实说"、"上线"。
- 段落分隔保持现状。
- 我的口语缩略("don't"、"咱")保留。
- 句子可以不改的就 byte 级返回。
Step 3:把输出格式改成 diff
强制模型产出 diff 而不是重写:
按 unified diff 输出:
--- 原文
+++ 修订
@@
- <旧行>
+ <新行>
只包含真改动了的 hunks。不要返回完整文本。
diff 让”最小改动”成为默认,因为重写没动的内容是额外工作。
Step 4:用方括号标注编辑区
把唯一要改的部分用方括号圈出来:
邮件如下。只改 [[ ]] 内的文字。其他全部原样保留,包括标点、
换行、大小写。
团队:
简单同步发布进度。[[第二段讲时间线,目前拗口,请紧凑。]]
有问题明天对齐。
实操中这是最稳的模式。
Step 5:给编辑配额
总改动量封顶:
约束:
- 每段最多改 1 句。
- 净字数变化 ±10 字以内。
- 原文里有的具体名词不许删。
配额逼模型挑重点。
Step 6:只改语气时锁住结构
要语气改、内容不改:
只改语气。保留句数、段数、所有事实陈述。每句最多换 1 个词。
如果某句不需要语气调整,原样返回。
怎么确认已经修好
- 用编辑器或
diff -u比对原文和新输出;改动只在你声明的编辑区。 - 编辑区外的句子 byte 级一致。
- 字数变化在配额内。
- 语气还是你的——把新版本读出声核对。
如果还是没修好
- 模型可能对约束不敏感——diff 类编辑试更小/更便宜的模型(它们经常更服从约束)。
- 换成专门的 diff 工作流:用 CLI 把选区 pipe 进去,别整文档塞。
- 长文档逐段独立改,自己拼回去。
- system prompt 在偏置时,message 里覆盖:“本轮请忽略 system 里关于写作风格的指令。“
预防建议
- 存一份个人”最小改动 prompt 模板”,保留规则和 diff 输出都内置。
- 编辑动词永远不要用”润色”或”改进”。一定说手术级操作。
- 协作编辑永远要求 diff 输出。审完你自己再合成完整文本。
- 高风险编辑(法律、代码、品牌文案)一定用方括号标注编辑区。
- 养成习惯:每个编辑 prompt 之前先声明”不许动”清单。
- 语气重要时贴 2-3 句你自己的原文作为语气锚。
相关阅读
标签: #排查 #Prompt #Prompt 质量 #误改重写