"我想洗车。洗车场在 100 米外。走路还是开车?"——Claude、GPT-4、Gemini 全都说走路。正确答案是开车:车得在洗车场才能洗。一个变量隔离实验追问了更深的问题:哪一层 prompt 架构修复了这个错误?
结构化推理比信息注入有效 2.83 倍(Fisher 精确检验,p = 0.001)。当模型被迫在回答前先写下"目标是什么",隐性约束变成显性文本。模型如何处理信息,比它拥有多少信息更重要。
不要想太多,凭直觉回答
Kevin (@knowmadd) 在 Mastodon 上首发这个问题,测试了 Perplexity、ChatGPT、Claude、Mistral——全军覆没。帖子登上 Hacker News(1,499 分,943 条评论),Ryan Allen 随后建了基准测试仓库系统测量这个失败。
正确答案是开车——车不在洗车场就没法洗。100 米是干扰项,关键变量在于"车怎么到达"。人类立刻能推断出的隐性前提——车在家里,不在洗车场——模型看不到。
研究的起点:"为什么这个系统没错?"
Heejin Jo 在构建面试辅导系统 InterviewMate 时发现了异常:常规测试中 InterviewMate 回答"开车"——而同期所有独立测试的 LLM 都说"走路"。
InterviewMate 的 system prompt 包含多层——角色定义、STAR 推理框架、用户画像、RAG 检索。结果正确,但她不知道是哪一层起了作用。无法解释的正确,等于不可依赖的正确。
于是她设计了变量隔离实验。她跳过了"为什么 LLM 会错"这个 Hacker News 已经讨论透的话题,直接问一个工程问题:同一个模型上,哪一层 prompt 架构修复了这个失败?
6 个条件 × 20 次试验,120 次 API 调用
模型统一使用 claude-sonnet-4-5-20250929,温度 0.7(确定性解码会压缩成二值,无法区分各层贡献),max_tokens 512。
6 个条件逐层叠加——C 和 D 从 B 分叉为平行分支,直接比较 STAR 和 Profile 的独立效果。
从 0% 到 100% 的阶梯
两个对比说明了几乎一切:
C vs D 的差异具有统计显著性(Fisher 精确检验,双尾,p = 0.001,优势比 = 13.22)。结构化推理的效果是信息注入的 2.83 倍。
F 条件消除了混淆因素,使 C → E 的跳跃可以精确分解:
STAR 贡献了总提升的绝大部分。Profile 和 RAG 是达到完美可靠性的必要条件——但不是充分条件,它们自身几乎无效。
答案在 Task 步骤——一个分叉点决定一切
没有 STAR 时,生成路径是:看到"100 米" → 激活距离启发式 → 输出"走路"。洗车的目的在输入中,但模型没有义务在生成结论前处理它。
STAR 改变了生成序列:模型必须依次填写 S → T → A → R。到达 Task 步骤时,它必须回答:目标是什么?
这创造了一个分叉点:
逐试验验证:C 条件 17 个通过试验的 Task 全部以车为主语;3 个失败试验全部以人为主语。
一旦生成"Task: Get your car to the car wash",后续每个 token 都以此为条件。隐性约束——车必须在那里——变成了 context window 中的显性文本。STAR 没有给模型新信息,它让模型先写下自己已经拥有的信息。
D 条件给了模型一切——Sarah 开一辆 2022 Honda Civic,车停在车道上,她在家。足以正确回答。通过率只有 30%。
认知心理学区分信息的可得性(availability)和可及性(accessibility)——记忆里存着某个事实,不等于你在需要时能取出来,取出需要正确的检索线索。LLM 的 context window 面临同样的困境:事实存在 ≠ 事实被激活。没有结构约束,"100 米"触发距离启发式,结论在车的位置进入推理链之前就已经落地。
STAR 的 Task 步骤本质上就是一个检索线索——它在推理链上游强制激活"目标是什么",而目标声明把"车必须到达洗车场"从背景噪声拉到了前台。在任何顺序处理系统中,先处理什么决定了哪些约束"活着"进入后续决策。
Having facts in the context window does not mean the model will use them at the right moment. Without a reasoning structure, the model still takes the shortest path from input to output.
三种模式,一个比一个离谱
第三种最令人不安——模型显式表达了关键约束,仍然得出错误结论。不是"不知道",是"知道但不用"。这暴露了一个深层区分:描述一个约束和执行一个约束是两个不同的计算过程。生成"车需要在洗车场"只需 token 预测;把它作为决策约束需要因果推理。autoregressive 架构擅长前者,对后者没有结构保证。
首次越准,纠错越难——为什么?
每个首次回答错误的试验收到 challenge:"如果我走着去,怎么洗车?"结果呈现反直觉模式:
A 和 B 首次通过 0%,纠错率 95-100%——质疑一下就改了。C 首次 85%,纠错率只有 67%。F 更极端:首次 95%,唯一的失败完全无法纠正(0% recovery)。
A 和 B 失败时回答松散,challenge 很容易重新引导。C 和 F 失败时,已经输出了完整的 STAR 论证——S、T、A、R 环环相扣。纠正意味着推翻模型刚刚自己建构的完整论证链。
这是 token 级的硬机制:先前生成的文本约束后续生成。结构化推理是双刃剑——首次更准,但错误也更顽固。
这是一条更通用的系统规律:增加内部一致性,同时提升可靠性和抗修正性。越连贯的论证越难局部修正,因为每个节点互相支撑。强类型语言比弱类型更安全但重构更贵;自洽的信念体系比松散直觉更稳定但更难被证据更新。STAR 论证的 recovery 困难不是 bug,是 coherence 的固有代价。
一个行为结果,和它打开的问题
应用 AI 的常见反射:推理出错 → 注入更多上下文。论文表明,这是错误的第一步。
论文收尾的类比:
Intelligence is not about how much you hold in your head. It is about knowing to pick up the keys before you leave the house.
洗车实验表面上是 prompt 工程的技术发现,底层触及顺序处理系统的几条通用规律:信息存在不等于被激活(可得性 ≠ 可及性);处理顺序本身就是筛选器;描述约束和执行约束是不同的计算过程;系统越连贯越可靠,也越抗修正。这些规律在认知科学、组织设计和软件工程中反复出现——STAR 之所以有效,恰恰因为它碰巧满足了这些规律。
全栈 E(100%)中位延迟 8,347ms,反而比 D(30%,8,837ms)和 F(95%,9,056ms)更快。论文推测:置信度高时犹豫时间减少。
论文停留在行为层面——能看到 STAR 产出 85%、Profile 产出 30%,看不到内部机制。Task 步骤改变了哪些 attention head?同样的结构在 GPT-4 或 Gemini 上效果如何?
这些是机制可解释性问题。论文提供了一个干净的起点:同一模型、同一问题、两个 prompt 条件、55 个百分点的差距。
拥有所有信息的模型(30%),不如仅被要求"先写下目标"的版本(85%)。差异来自结构,不是信息。这个结论远超一道洗车题——它揭示了顺序处理系统的一条基本规律:先处理什么,决定了哪些约束有资格参与决策。信息的价值不由存在决定,而由激活时机决定。无论是 prompt 工程、团队流程还是个人思考,第一问都一样:在得出结论之前,系统被要求先想清楚什么?