Zero-shot-CoT:一句"Let’s think step by step"如何唤醒沉睡的推理能力——从零样本触发式逐步推理到解码空间的概率导航

阅读导航:这篇文章会从一道让GPT-3栽跟头的小学数学题开始,先让你看到Zero-shot-CoT的全貌(宏观),再逐层剥开触发句如何改变模型的"思维路径"(中观),最后落到token级别的概率流转(微观)。如果你已经熟悉Transformer的自回归解码和Softmax概率分布,我们会不断用它们作为锚点。准备好了吗?我们出发。


0. 从一个让你头疼的问题开始

来看一道题:

Roger有5个网球,又买了2罐网球,每罐3个。他现在有几个网球?

如果你直接把这道题丢给早期的GPT-3(text-davinci-002),它可能会脱口而出"30"(5×2×3,错得离谱),或者"11"(碰运气)。在MultiArith数据集上,这种直接提问(Standard Prompting)的准确率只有17.7%

但别急。你只要在问题后面加一句看起来像废话的指令:

“Let’s think step by step.”

奇迹发生了。模型突然变得像一个认真做题的小学生,开始自言自语:

“Roger starts with 5 balls. He bought 2 cans, each containing 3 balls. So 2×3=6 new balls. 5+6=11. The answer is 11.”

准确率从17.7%飙升到78.7%。在GSM8K上,从10.4%涨到40.7%。在Coin Flip任务上,从12.8%涨到91.4%

问题来了:模型不是本来就"会"做这道题吗?为什么需要被提醒? 这句触发句到底触碰了模型内部的哪个开关?

别急,让我们先站在山顶,看看全貌。


1. 宏观视角:Zero-shot-CoT的全貌——如果画成一张地铁线路图

如果我们把模型回答问题的方式画成一张地铁线路图,会有三条并行的轨道:

差异:
无触发,直接猜
像走迷宫抄近路

差异:
无需手工示例
零样本即生效

🚅 Few-shot-CoT
Wei et al., 2022
示范专车

Q: Roger有5个球...

+ 3个手工示例
含完整推理过程

Rationale

A: 11 ✅

🚂 Zero-shot-CoT
Kojima et al., 2022
观光慢车

Q: Roger有5个球...

+ Trigger:
Let's think step by step.

Rationale:
逐步推理链
5 → 2×3=6 → 5+6=11

A: 11 ✅

🚄 Standard Prompting
直达快车

Q: Roger有5个球...
又买了2罐,每罐3个

A: 30 ❌
(直接跳到错误答案)

如果画成图会是什么样子? Standard Prompting像一辆直达快车,从问题站一脚油门踩到答案站,中间不停靠——所以容易开过站。Zero-shot-CoT像一辆观光慢车,强制在每个推理站点停靠检查。Few-shot-CoT则像一辆有导游讲解的专车,需要提前准备导游词(示例)。

关键认知:Zero-shot-CoT不是"教"模型推理,而是"激活"模型在预训练时就已经内化的推理模式。 它位于Standard和Few-shot之间——比Standard多了一个触发信号,比Few-shot少了手工示例的成本。


2. 中观拆解:触发句内部发生了什么?

现在我们已经了解了Zero-shot-CoT的全貌,接下来看看触发句进入模型后,内部结构如何被一层层剥开。每节只解决一个认知疑点。

2.1 解码空间的"软启动"——触发句如何改变模型的"思维路径"?

我们先问一个直觉问题:LLM不是确定性计算器,它是一个概率生成器。你给它一个问题,它其实是在玩一个超级复杂的"接龙游戏"——根据前面所有token,猜下一个最可能出现的token。那么,加一句"Let’s think step by step"到底改变了什么?

锚定已知概念:如果你熟悉Transformer的自回归解码,你知道每一步生成token xt时,模型计算的是条件概率 P(xt | x1, x2, …, xt-1)。整个解码过程就像在一个巨大的概率迷宫中行走,每一步选择概率最高的岔路。

视觉化描述:把解码空间想象成一个巨大的地下迷宫。不加触发句时,模型手里拿的是"最短路径导航"——它倾向于直接跳到答案token(如"30"或"11")。加了触发句后,就像有人在迷宫入口挂了一个发光的指示牌:“请走详细说明路线,禁止抄近路。” 模型的概率分布被重新加权了。

让我们看一个toy example。假设我们的极简词表只有这几个词:

𝒱 = {Roger, has, 5, balls, bought, 2, cans, First, Then, Therefore, 30, 11}

对于问题"Roger has 5 balls…",在生成第一个回答token时:

  • 无触发句:P(“30”) = 0.35, P(“11”) = 0.25, P(“First”) = 0.02
  • 有触发句:P(“First”) = 0.42, P(“Then”) = 0.18, P(“30”) = 0.08

看到没有?触发句把"First"的概率从0.02硬生生拉到了0.42。模型被迫进入"逐步说明"的生成模式,而不是"直接回答"模式。

这和RNN的隐藏状态初始化有什么关系?就像你给RNN一个特定的初始隐藏状态h0,它就会在特定的动态轨迹上演化。触发句就是LLM的语义初始化向量——它不改变模型权重,但改变了整个自回归链路的起始条件。


2.2 预训练语料中的"幽灵"——触发句激活了什么沉睡的记忆?

现在我们已经了解了触发句改变概率分布,接下来看看一个更深的疑点:模型从来没被"教过"要听这句指令——没有监督信号说"听到’Let’s think step by step’就要分步回答"。为什么它这么听话?

别急,答案藏在预训练语料里。

互联网上充斥着这样的文本模式:

  • 数学论坛里的"Let’s think step by step. First, we need to find…"
  • 教科书里的"Show your work. Step 1: Identify the variables."
  • 技术博客里的"To solve this, let’s break it down…"
  • StackOverflow上的"First, check if… Then, verify that…"

这些文本在模型权重中留下了统计痕迹,就像脚印留在雪地上。触发句不是写新书,而是给图书管理员一个精确的索书号:“请把’逐步推理’那个书架上的书全部递给我。

📚 预训练语料中的推理幽灵

互联网语料
万亿级token

隐式推理模式
First...Then...Therefore...

权重空间
W ∈ ℝd×d
(沉睡的统计痕迹)

触发句
Let's think step by step

概率激活
检索相关权重子空间

生成逐步推理链
C = c1, c2, ..., cn

渐进披露:先理解小词表的情况——模型只是重新排列了8个词的概率。再推广到真实规模:在175B参数的GPT-3中,触发句激活的是一个高维权重空间中的低维流形(low-dimensional manifold)——一个专门编码"逐步说明"语义的子空间。Kojima等人的实验表明,这种激活是跨模型的:在InstructGPT(175B)和PaLM(540B)上都有效,说明这不是某个模型的巧合,而是Transformer架构的普遍特性。


2.3 两阶段流水线:为什么非要分两步走?

现在我们已经了解了触发句激活预训练记忆,接下来看看一个工程层面的疑点:为什么Zero-shot-CoT要设计成"先生成推理链,再提取答案"的两阶段?不能一次性搞定吗?

技术上可以,但分两步更可靠。原因有三:

  1. 解耦(Decoupling):推理链可能很长(50-200 tokens),答案 buried in text。第二阶段可以用更短的prompt专门做提取,减少干扰。
  2. 可观测性(Observability):你可以单独检查推理链C的质量,判断模型是在"真推理"还是"假推理"。
  3. 答案格式化:第二阶段可以用"Therefore, the answer is"这样的锚点文本,强制模型输出结构化答案。

🏭 两阶段流水线

问题 Q

阶段1: Rationale Generation
厨房(Chef)
输入: Q + Trigger
输出: 推理链 C

阶段2: Answer Extraction
服务员(Waiter)
输入: Q + C + 'Therefore...'
输出: 答案 A

💡 如果让厨师直接端菜,
他可能把汤洒了。
分工才专业。

视觉化描述:想象一家餐厅。第一阶段是厨房(Chef),负责把原材料(问题)加工成菜肴(推理链)。第二阶段是服务员(Waiter),负责把菜肴端出来并明确告诉你"这是主菜"(提取最终答案)。如果让厨师直接端菜,他可能把汤洒了,或者把开胃菜和主菜搞混。分工才专业。

在机票预订的类比中(如果你读了OPAR那篇文章),第一阶段就像OPAR的Plan+Act,第二阶段就像Reflect后的答案整理。Zero-shot-CoT把"思考过程"和"最终交付"分开了。


3. 微观视角:Token级别的概率流转

现在我们已经了解了中观层面的机制,接下来看看最微观的层面:单个token是如何在触发句的引导下流动的。别急,这部分我们从一个极简的toy example开始,再推广到真实规模。

3.1 Toy Example:极简数学题的token流

问题:13 - 5 = ?

不加触发句时,模型的解码路径像一条直线:

输入序列: [Q, "A:", ?]
解码步骤1: "8"          (P = 0.70)
解码步骤2: " miles"     (P = 0.10,如果问题来自Roger场景)
结束。

模型直接跳到答案。但如果问题稍微复杂一点,比如"13 - 5 × 2 = ?“,模型可能会直接输出"16”(从左到右算)而不是"3"(先乘后减)。

加了触发句后,解码路径变成一条阶梯:

输入序列: [Q, "A:", "Let's", "think", "step", "by", "step", ?]

步骤1: "First"         (P = 0.40)
步骤2: "subtract"      (P = 0.50 | "First")
步骤3: "5"             (P = 0.60 | "...subtract")
步骤4: "from"          (P = 0.70 | "...5")
步骤5: "13"            (P = 0.80 | "...from")
步骤6: "to"             (P = 0.45 | "...13")
步骤7: "get"            (P = 0.55 | "...to")
步骤8: "8"              (P = 0.90 | "...get")

啊哈时刻:注意步骤8!最终答案"8"的条件概率从0.70提升到了0.90。为什么?因为前面的中间步骤像锁扣一样,把模型锁定在正确的计算路径上。一旦模型说出"subtract 5 from 13",它就很难再说出"30"了——那需要推翻自己已经写下的内容。

这和全连接层有什么关系?想象输出层的Softmax是一个旋钮面板。触发句不是只拧一个旋钮,而是同时调整了一整组旋钮的联动关系——让"First"、“Then”、"Therefore"这些token的权重形成一个共振,互相增强。

3.2 推广到真实规模:注意力头的分工与"推理子网络"

在真实LLM中,上述过程涉及数百亿参数和数百层注意力头。研究表明:

  • 位置头(Positional Heads):跟踪"First, Second, Third"的顺序
  • 复制头(Copying Heads):把问题中的数字(13, 5)复制到推理链中
  • 计算头(Arithmetic Heads):在特定层执行简单的加减运算
  • 语义头(Semantic Heads):理解"subtract…from"的语义方向

触发句可能激活了一个**"顺序执行"的子网络**。这就像全连接层中的特定神经元对特定特征敏感——触发句是特征,激活了推理神经元。

🔬 Token级微观视图

复制头
Copying

位置头
Positional

输入嵌入
xQ + xtrigger

Layer 1-6
语义解析
识别数学实体

Layer 7-18
注意力头分工
复制数字 / 跟踪位置

Layer 19-24
推理链生成
逐步解码
First → Then → Therefore

输出分布
P(xt | x<t)
锁定正确答案

13 → 推理链
5 → 推理链

First/Second/Third

但注意:这不是一个确定性的"开关",而是一个统计性的偏置(bias)。模型仍然可能出错,只是出错的概率降低了。就像给骰子加了配重——不是保证掷出6点,只是让6点的概率从1/6变成1/3。


4. 结构化伪代码:Zero-shot-CoT的精确描述

好了,现在我们已经了解了直觉和token流,接下来看看如果用结构化伪代码描述Zero-shot-CoT,会是什么样子。

4.1 Zero-shot-CoT 主流程(两阶段流水线)

算法 1: Zero-shot-CoT 推理
输入: 问题 Q, 触发句 T, 语言模型 ℳ, 答案提取模板 E
输出: 最终答案 A, 推理链 C

 1: procedure ZERO_SHOT_COT(Q, T, ℳ, E)
 2:     ▷ ====== 阶段1: 推理链生成 ======
 3:     prompt_1 ← Q ⊕ "
A: " ⊕ T
 4:     C ← ℳ.GENERATE(prompt_1, max_tokens=L<sub>max</sub>, temperature=τ)
 5:     ▷ C 为自由文本,包含中间推理步骤 c<sub>1</sub>, c<sub>2</sub>, ..., c<sub>k</sub>
 6:     
 7:     ▷ ====== 阶段2: 答案提取 ======
 8:     prompt_2 ← Q ⊕ "
A: " ⊕ C ⊕ "
Therefore, the answer is"
 9:     A ← ℳ.GENERATE(prompt_2, max_tokens=l<sub>short</sub>, temperature=0.0)
10:     ▷ A 通常为短文本,如数字、选项或布尔值
11:     
12:     return (A, C)
13: end procedure

注意看第8行。第二阶段的prompt故意把第一阶段的输出C拼接回去,再加上"Therefore, the answer is"这个锚点。这就像给模型一个填空题的下半句,让它只能完成最后那个空。

4.2 触发句的"解码偏移"机制(概念模型)

触发句到底如何在数学上改变概率?这是一个概念性伪代码,描述解码分布的偏置效应:

算法 2: 触发句对解码分布的偏置效应
输入: 问题编码 h<sub>Q</sub> ∈ ℝ<sup>d</sup>, 触发句编码 h<sub>T</sub> ∈ ℝ<sup>d</sup>, 输出词表 𝒱
输出: 条件概率分布 P(x | Q, T)

 1: procedure TRIGGER_BIAS(h<sub>Q</sub>, h<sub>T</sub>, 𝒱)
 2:     ▷ 标准解码(无触发句)
 3:     z<sub>std</sub> ← W<sub>out</sub> · h<sub>Q</sub>          ▷ 输出层线性投影
 4:     P<sub>std</sub> ← SOFTMAX(z<sub>std</sub>)   ▷ 标准概率分布
 5:     
 6:     ▷ 触发句增强解码
 7:     h<sub>joint</sub> ← ATTENTION_FUSION(h<sub>Q</sub>, h<sub>T</sub>)  ▷ 交叉注意力融合
 8:     z<sub>cot</sub> ← W<sub>out</sub> · h<sub>joint</sub>
 9:     
10:     ▷ 触发句引入的隐式偏置项
11:     ▷ 使"推理起始词"(First, Step, Let, Then)的概率提升
12:     ▷ 抑制"直接答案词"(is, are, The answer)的过早出现
13:     P<sub>cot</sub> ← SOFTMAX(z<sub>cot</sub>)
14:     
15:     return P<sub>cot</sub>
16: end procedure

锚定已知概念:如果你熟悉神经网络中的注意力机制(Attention),第7行的ATTENTION_FUSION就像让问题向量hQ和触发句向量hT互相"对视"——触发句告诉问题:“请按照我的风格重新编码你自己。” 融合后的hjoint携带了"逐步推理"的语义标记,这个标记通过输出层Wout传播到整个词表的概率分布上。


5. 变体与进化:触发句的"钥匙齿纹"

5.1 从"Let’s think"到"Plan-and-Solve"——触发句不是唯一的

现在我们已经了解了基础触发句的机制,接下来看看一个有趣的疑点:如果"Let’s think step by step"已经很好了,为什么学术界还在不断发明新的触发句?

因为不同任务需要不同的"认知节奏"。触发句不是万能钥匙,而是一组齿纹不同的钥匙。

🔑 触发句进化树(国外文献谱系)

Kojima et al., 2022
NeurIPS
Let's think step by step
基础齿纹

Zhou et al., 2023
Let's work this out in a step-by-step way
to be sure we have the right answer.
(强调正确性)

Wang et al., 2023a
Plan-and-Solve
First understand the problem and devise a plan...
(战略规划型)

Yang et al., 2024
Take a deep breath and work on this
problem step-by-step.
(情感调节型)

Shi et al., 2023
Feel free to ignore irrelevant information...
(信息过滤型)

Xu et al., 2023
RE2 Prompting
Read the question again...
(重读+反思型)

视觉化描述:想象触发句是一把万能钥匙的齿纹变体。基础齿纹(Kojima)能开大多数"标准推理锁"。但面对"信息过载"的锁(数学题里塞了很多无关叙述),需要加一道"忽略无关信息"的齿纹(Shi et al.)。面对"需要战略规划"的锁(多步复杂任务),需要"先理解再计划"的齿纹(Wang et al.)。面对"容易紧张出错"的锁(模型在难题上概率分布混乱),需要"深呼吸"的情感调节齿纹(Yang et al.)。

2025年的论文"Think or Step-by-Step? UnZIPping the Black Box in Zero-Shot Prompts"甚至用ZIP统计方法分析出:在"Let’s think step by step"中,真正起关键作用的是"step-by-step"这个词组,而"think"的重要性反而因任务而异。这进一步证明触发句的每个词都是精密的齿纹,不是装饰。

5.2 任务匹配:为什么数学和逻辑任务受益最大?

问题驱动:Zero-shot-CoT在所有任务上都有效吗?

不是。Kojima等人在论文中系统测试了多个任务类别:

任务类别 代表数据集 Standard → Zero-shot-CoT 提升幅度
算术推理 MultiArith 17.7% → 78.7% +61.0%
算术推理 GSM8K 10.4% → 40.7% +30.3%
符号推理 Coin Flip 12.8% → 91.4% +78.6%
符号推理 Last Letter 0% → 57.6% +57.6%
逻辑推理 Date Understanding 49.3% → 67.5% +18.2%
逻辑推理 Tracking Shuffled Objects 29.4% → 52.4% +23.0%

但在**自然语言推断(NLI)**和简单事实问答上,提升有限,甚至可能变差。为什么?

渐进披露:先理解简单情况——"法国首都是哪里?"不需要逐步推理,直接回答"巴黎"即可。如果强制模型走CoT,它可能生成:“First, I need to identify the country. France is in Europe. The capital of France is Paris. Therefore…” 这反而增加了出错概率(模型可能在中间步骤 hallucinate 错误信息,比如把法国说成在欧洲以外)。

再推广到复杂情况——NLI任务(“前提:所有狗都是动物。假设:所有动物都是狗。这对吗?”)需要一次性的语义判断,而不是多步计算。CoT的"逐步拆解"在这里是认知负担而不是帮助。


6. Zero-shot-CoT的边界与陷阱

6.1 幻觉累积:多米诺骨牌效应

现在我们已经了解了触发句的强大,接下来看看它的致命弱点:如果逐步推理这么好,为什么模型还是会错?

因为每一步都是概率采样,不是确定性计算。第一步如果错了(比如把"每罐3个"看成"每罐2个"),后续步骤会在这个错误基础上"合理"地继续推导,最终得到一个自信但错误的答案。

🀄 幻觉累积的多米诺效应

步骤1:
Roger starts with 5.
✅ 正确

步骤2:
Each can has 2 balls.
❌ 幻觉(应为3)

步骤3:
2 cans give 4 balls.
❌ 基于错误推导

步骤4:
5 + 4 = 9.
❌ 最终错误答案

模型自信度: 95%
(因为内部一致)

💡 第一块骨牌倒错方向,
后面的都会跟着错。
而且模型不会回头检查。

视觉化描述:像一排多米诺骨牌。第一块倒向左边,后面的都会跟着倒向左边。而且模型在生成过程中不会回头检查(这和OPAR循环的Reflect阶段形成鲜明对比!)。在OPAR中,Reflect会打断循环并修正错误。但在Zero-shot-CoT中,模型一旦开始生成,就只能一路向前,没有内置的"刹车片"。

锚定已知概念:这就像RNN中的误差传播。如果早期时间步的隐藏状态引入了偏差,这个偏差会随着序列长度指数级放大。在Zero-shot-CoT中,第一步的幻觉就是那颗混入齿轮组的沙子,最终可能卡住整个机器。

6.2 成本与延迟:推理的代价

另一个隐蔽的约束:CoT不是免费的。生成推理链可能使输出长度增加2-5倍,直接转化为API调用成本的增加。

在继续之前,让我们算一笔账。假设:

  • 标准prompting:输入100 tokens,输出10 tokens,共110 tokens
  • Zero-shot-CoT:输入100 tokens + 触发句10 tokens,输出150 tokens(推理链),第二阶段再输出10 tokens,共270 tokens

成本翻了约2.5倍。对于高并发服务,这意味着要么接受更高的账单,要么对简单查询做路由判断(先尝试标准prompting,失败再fallback到CoT)。


7. 生产环境中的Zero-shot-CoT:这到底意味着什么?

好了,原理和边界都讲完了。但"这在训练/实际使用中意味着什么?"

7.1 在训练时意味着什么

重要认知:Zero-shot-CoT是纯推理时技术(inference-time technique)。它不改变模型权重,不需要微调,不需要标注数据。你拿到一个预训练好的LLM,加一句触发句,立刻生效。

但它为训练创造了新机会:

  1. 过程监督(Process Supervision):OpenAI的论文表明,用CoT轨迹作为中间步骤的标签,训练模型不仅答对,而且每一步都对,比只用最终答案监督更有效。
  2. 蒸馏(Distillation):用大模型(GPT-4)生成的Zero-shot-CoT轨迹微调小模型(Llama-3-8B),让小模型学会逐步推理。
  3. 强化学习(RL):用答案正确性作为奖励信号,优化推理链质量。模型学会生成"既长又对"的推理链。

📊 训练视角的延伸

Zero-shot-CoT
推理时技术
不修改权重

生成推理轨迹
τ = (Q, C, A)

知识蒸馏
大模型 → 小模型

强化学习
奖励 = 答案正确性
+ 步骤一致性

过程监督
每一步都有标签

小模型获得
推理能力

策略优化
生成更优CoT

7.2 在实际使用中的最佳实践

如果你明天就要在生产环境部署Zero-shot-CoT,这里有几个硬核建议:

生产要素 具体含义 最佳实践
两阶段调用 推理和提取分开 第一次API调用生成C,第二次调用提取A。不要混为一谈。
自一致性(Self-Consistency) 采样多条路径投票 对同一问题采样5-10条CoT路径,对最终答案投票。准确率可再提升10-20%。
答案锚点 结构化提取 用"Therefore, the answer is"或"oxed{}"作为提取锚点,配合正则表达式解析。
成本路由 避免过度使用 简单查询先用Standard Prompting,置信度低时fallback到Zero-shot-CoT。
温度控制 多样性与确定性平衡 阶段1用T=0.7(产生多样推理),阶段2用T=0(确定性提取)。
幻觉检测 中间步骤审计 对推理链C做事实一致性检查(如数字是否从问题中正确复制)。

🏭 生产部署检查清单

简单查询
先走Standard

T=0.7
采样5次

Therefore...
\boxed{}

成本层
CoT增加2-5倍token
需预算控制 /
路由策略

可靠性层
自一致性投票
N条路径取多数 /
幻觉检测

提取层
正则表达式 /
结构化输出 /
答案锚点

安全层
推理链审计 /
有害内容过滤 /
人类在环复核

智能路由

多路径生成

锚点文本


8. 闭环总结与延伸阅读

让我们回到开头那个Roger的网球问题。现在你应该能看懂了:

模型不是"变聪明了"——它的权重一点没变。而是走对了路。触发句像GPS导航,把模型从"抄近路"模式(直接跳到答案,容易翻车)切换到"稳扎稳打"模式(强制停靠每个推理站点)。这把钥匙不需要示例(zero-shot),因为它解锁的是预训练时就已经存在的、沉睡的逐步推理模式。

如果画成一张最终的总结图,Zero-shot-CoT就像一台自动点唱机:你投币(输入问题),按一个特定的按钮(触发句),机器就从曲库(预训练权重)中找出那首早就录好的"逐步推理之歌"播放出来。

📌 Zero-shot-CoT 核心要义

触发句 = 解码空间导航仪
像RNN的特定初始化信号
改变自回归路径起点

推理链 = 中间隐藏状态展开
像Transformer自回归轨迹的
强制中间停靠

两阶段 = 厨房+服务员
解耦生成与提取
提升可靠性

边界 = 不是万能药
简单任务可能过度思考
错误会像多米诺骨牌传播

📝 记住: Zero-shot-CoT不是教模型推理,
而是激活它已经在预训练中学到的、
沉睡的逐步推理模式。
它是一把钥匙,不是一堂课。

延伸阅读

如果你想深入这个领域,以下国外文献是极佳的起点:

  1. Kojima et al., 2022, “Large Language Models are Zero-Shot Reasoners” (NeurIPS) —— Zero-shot-CoT的奠基论文。核心发现:一句"Let’s think step by step"在MultiArith上将准确率从17.7%提升到78.7%,在GSM8K上从10.4%提升到40.7%。必读。

  2. Wei et al., 2022, “Chain-of-Thought Prompting Elicits Reasoning in Large Language Models” (NeurIPS) —— Few-shot CoT的源头论文。理解Zero-shot-CoT的最佳背景知识,看清两者的互补关系。

  3. Wang et al., 2023a, “Plan-and-Solve Prompting” —— 从"逐步想"进化到"先计划再解决"。展示了触发句可以从被动推理升级为主动规划。

  4. Zhou et al., 2023, “Large Language Models are Human-Level Prompt Engineers” (ICLR) —— 自动优化触发句的研究,让模型自己给自己写触发句。

  5. Yang et al., 2024, “Take a Deep Breath and Work on This Problem Step-by-Step” —— 探索情感化、拟人化触发句的效果,证明触发句的措辞细节对性能有显著影响。

  6. Shi et al., 2023, “Feel Free to Ignore Irrelevant Information” —— 针对信息过载任务的触发句变体,展示了任务特定触发句的必要性。

  7. “Think or Step-by-Step? UnZIPping the Black Box in Zero-Shot Prompts” (2025) —— 用ZIP统计方法量化触发句中每个词的重要性,揭示"step-by-step"是核心引擎,"think"是辅助轮。


写在最后:Zero-shot-CoT提醒我们一个被低估的事实——大语言模型的能力边界,往往不取决于它"知道多少",而取决于我们"如何提问"。一句精心设计的触发句,就像一把正确的钥匙,能让沉睡在千亿参数中的推理能力苏醒过来。下次当你看到模型直接给出一个离谱的答案时,别急着换模型,先试试对它说:“Let’s think step by step.”


本文架构图使用 Mermaid 绘制,伪代码遵循结构化算法描述规范。数学上下标使用 HTML 标签(sub/sup)以确保跨平台兼容。如有错误,欢迎指出。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐