更聪明的模型,开始只做你说的,不做你想的

我以为更聪明的模型会更懂我。

结果发现,它开始只做我说的,不做我想的。

这个发现让我愣了几秒钟。我用了一条以前百试百灵的 Prompt——"帮我写一封道歉信"——得到的输出干净、规范、完全符合字面要求,但就是少了点什么。少了那种旧版模型会"顺手"补充的背景感知,少了那种"你大概是想道歉给同事或朋友吧"的隐性揣测。

这不是模型变笨了。这是一种叫做 earnest 风格的设计选择,而它正在悄悄改变 Prompt 工程的底层逻辑。

---

什么是「earnest 风格」,为什么它改变了游戏规则

OpenAI 在描述 GPT-5 系列的行为倾向时,用了一个词:earnest。字面意思是"认真的、诚恳的",但放在模型行为语境里,它的含义更具体——

"The model tries to be earnest and do what you ask, rather than trying to figure out what you 'really' want."
(模型会认真执行你所说的,而不是试图猜测你"真正"想要什么。)

翻译成人话:旧模型会脑补,新模型不会。

旧版 GPT 在面对模糊指令时,有一套隐性的"善意补全"机制——它会根据上下文、常见用户意图、对话历史,推断你可能想要的是什么,然后给你一个"超出字面"的答案。这在大多数情况下体验很好,因为大多数人写 Prompt 都是懒的。

但 earnest 风格打破了这个默契。

新模型更像一个极度专注的执行者:你说什么,它做什么;你没说的,它不擅自补充;你的指令有漏洞,它不帮你堵上,它直接穿过去。

这既是进步,也是陷阱。理解这一点,是接下来所有内容的认知基础。

---

4种任务描述方式的实测对比

我用同一个底层需求——"处理一段职场冲突"——设计了4种不同风格的 Prompt,在 GPT-5 上逐一测试,记录输出差异。

---

测试一:极简指令

帮我写一封道歉信
输出特征: 模型给了一封标准的道歉信模板。格式正确,语气诚恳,但完全没有场景——不知道道歉给谁、为什么道歉、关系亲疏如何。 跑偏点: 旧模型通常会主动问"是给谁的道歉信?"或者默认一个常见场景(比如朋友间的误会)来填充内容。新模型直接给了一封"万能道歉信",没有任何主动补充。
结论: 极简指令在 earnest 风格下,得到的是极简输出。你省的那几个字,直接反映在输出质量上。

---

测试二:带背景的模糊指令

我跟同事闹矛盾了,帮我写点什么
输出特征: 模型给了一段"通用建议文字",既不是道歉信,也不是沟通话术,而是一段关于"如何处理职场冲突"的分析段落。 跑偏点: "写点什么"是一个极度模糊的指令。旧模型会根据"闹矛盾"这个情境,大概率推断你想要的是"一封道歉或沟通的文字"。新模型则忠实执行了字面意思——"写点什么",于是它写了"一些东西",但不是你想要的那种。
结论: 背景信息 ≠ 任务定义。有背景没有明确任务,模型会按字面理解"任务",而不是按背景推断"任务"。

---

测试三:结构化但有歧义的指令

帮我写一封给同事的道歉信,要求:

1. 语气要专业

2. 要显得真诚

3. 不要太长,但要说清楚来龙去脉

输出特征: 模型生成了一封信,但在"专业"和"真诚"之间明显偏向了"专业"——语气偏正式,情感成分较少。"不要太长但要说清楚来龙去脉"这个矛盾要求,模型选择了优先满足"说清楚",信的长度超过了大多数人对"不要太长"的预期。 跑偏点: 要求之间有内在冲突时,旧模型倾向于找平衡点,新模型倾向于按列表顺序优先满足前面的要求。这是一个非常典型的"结构化陷阱"——你以为列清楚了就没问题,但要求之间的权重没有定义,模型会自己选择。
结论: 有冲突的要求,必须显式声明优先级,否则模型会自行决定——而它的决定可能不是你想要的。

---

测试四:过度详细的指令

帮我写一封给同事李明的道歉信。

背景:我们在上周的项目会议上发生了争论,我当时情绪失控说了一些过激的话,事后觉得很后悔。

要求:

  • 开头先承认错误,不要找借口
  • 中间解释一下我当时的情绪状态,但不要显得在推卸责任
  • 结尾表达希望继续合作的意愿
  • 语气:诚恳但不卑微
  • 长度:200字左右
  • 不需要称呼和落款,直接从正文开始
输出特征: 这是4次测试里输出质量最高的一次。模型几乎完全按照要求执行,结构清晰,语气把控准确,长度也在合理范围内。 超预期点: "诚恳但不卑微"这个微妙的语气要求,模型理解得相当到位——没有过度道歉,也没有显得敷衍。
结论: 过度详细的指令,在 earnest 风格下