🧠 小样本提示学习全指南:从 Zero-shot 到 Few-shot-LtM 的核心策略解析
------大模型时代必备技能,系统梳理 Prompt Engineering 进阶路线
作者 :石去皿|标签 :#PromptEngineering #LLM #ZeroShot #FewShot #CoT #面试宝典
更新时间:2026 年 2 月
🔖 前言:为什么提示学习(Prompt Learning)是 LLM 应用的核心?
在大模型(LLM)时代,数据标注成本高、微调门槛高 成为落地主要障碍。提示学习(Prompt Learning) 作为一种无需更新模型参数、仅需设计输入文本即可激发模型能力的技术,已成为 NLP 工程师的必备技能。
💡 面试核心认知 :
面试官考察 Prompt 工程,不仅看你会不会写"Let's think step by step",更考察你针对不同任务复杂度选择合适提示策略的能力 ,以及对其背后推理机制的理解。
🔹 一、基础提示策略:Zero-shot 与 Few-shot
1.1 什么是 Zero-shot 提示方法?
定义:不给模型提供任何任务示例,直接通过自然语言指令描述任务,让模型依靠预训练知识生成结果。
-
核心逻辑 :信任模型的涌现能力(Emergent Abilities) 和通用知识库。
-
典型场景 :
- 简单任务(翻译、定义生成、常识问答)
- 模型能力覆盖较好的领域
- 快速验证想法(Prototype)
-
示例 :
text输入:将以下句子翻译成法语:"你好,世界" 输出:Bonjour, le monde
1.2 什么是 Few-shot 提示方法?
定义 :在提问之前,提供少量(通常为 1 到几十个)任务示例(输入 - 输出对),让模型通过上下文学习(In-Context Learning) 模仿任务模式。
-
核心逻辑:通过示例明确任务格式、风格及逻辑边界,降低模型理解偏差。
-
典型场景 :
- 复杂任务(情感分析、代码生成、格式转换)
- 模型容易误解指令的场景
- 需要特定输出格式(如 JSON、特定模板)
-
示例格式 :
text问题:这部电影太棒了! 答案:正面 问题:服务很差,不会再来了。 答案:负面 问题:剧情一般,但特效不错。 答案:
1.3 One-shot vs Few-shot:如何选择?
| 策略 | 示例数量 | 适用场景 | 优势 | 局限 |
|---|---|---|---|---|
| One-shot | 1 个示例 | 简单任务、模型已有强涌现能力 | Token 消耗少、速度快 | 泛化能力弱,复杂任务易出错 |
| Few-shot | 多个示例 (2-10+) | 复杂任务、特殊领域、需强引导 | 显著提升准确率、稳定输出格式 | Token 消耗多、可能超出上下文窗口 |
✅ 工程实践 Tip:
示例之间务必换行清晰 ,建议使用
Q/A或问题/答案作为标识符。若示例较多,注意控制总 Token 数,避免截断。
🔹 二、思维链进阶:Zero-shot-CoT 与 Few-shot-CoT
当任务涉及逻辑推理、数学计算、多步决策 时,普通提示往往失效。此时需引入思维链(Chain of Thought, CoT)。
2.1 什么是逐步 Zero-shot (Zero-shot-CoT)?
定义:在 Zero-shot 基础上,通过特定触发词引导模型自动生成中间推理步骤,而非直接输出答案。
- 核心论文 :Large Language Models are Zero-Shot Reasoners
- 关键触发词 :
"Let's think step by step"(让我们一步步思考) - 两阶段流程 :
- Reasoning Extraction:模型对问题进行拆分,生成分步解答过程。
- Answer Extraction:模型根据推理过程,汇总生成最终答案。
📊 Zero-shot-CoT 流程图解
text
+----------------+ +-----------------------+ +------------------+
| 用户输入 | | 模型内部推理 | | 最终输出 |
| (数学应用题) | ---> | (Let's think step...)| ---> | (分步解析 + 答案) |
+----------------+ +-----------------------+ +------------------+
| | |
v v v
"我还剩多少苹果?" 1. 初始 10 个 "首先,你开始有 10 个...
2. 送走 2+2=4 个 所以你还剩下 10 个苹果"
3. 买入 5 个...
- 优势:无需手动编写示例,利用模型通用知识,避免过拟合。
- 适用:数学题、逻辑推理、常识推导。
2.2 什么是 Few-shot-CoT 提示策略?
定义 :在 Few-shot 示例中,不仅提供问题 + 答案 ,还手动编写问题 + 推理过程 + 答案。让模型学习"如何思考",而不仅是"答案是什么"。
- 核心思想:通过高质量的手工思维链样本,教会模型推导路径。
- 应用方法 :
- 明确任务及期望输出格式。
- 编写包含中间推理步骤的示例(这是与普通 Few-shot 的最大区别)。
- 输入模型,观察是否模仿了推理风格。
- 稳定性 :比 Zero-shot-CoT 更稳定,但构造成本高。若示例质量差,可能导致模型 learned wrong reasoning patterns。
📊 Few-shot-CoT 示例结构
text
Q: 罗杰有 5 个网球。他又买了两筒网球。每筒有 3 个网球。他现在有多少个网球?
A: 罗杰开始有 5 个球。
2 筒球,每筒 3 个,即 2 * 3 = 6 个球。
5 + 6 = 11。
答案是 11。
Q: 食堂有 23 个苹果。如果他们用掉 20 个做午餐,又买了 6 个。他们还有多少个苹果?
A: 食堂开始有 23 个苹果。
用掉 20 个,即 23 - 20 = 3 个。
又买了 6 个,即 3 + 6 = 9 个。
答案是 9。
Q: 我去市场买了 10 个苹果... (新问题)
A:
🔹 三、复杂任务拆解:Few-shot-LtM 策略
对于极度复杂、多步骤依赖 的任务,单次 CoT 可能仍不够用。Least-to-Most Prompting (LtM) 应运而生。
3.1 什么是 Few-shot-LtM?
定义:一种"由简入繁"的提示策略,将复杂问题分解为子问题序列,逐个解决,并将前一个子问题的答案作为下一个子问题的上下文。
- 核心优势:降低单步推理难度,避免上下文混乱,适合长程依赖任务。
- 主要阶段及职责:
📊 Few-shot-LtM 双阶段流程图
拆解为
拆解为
拆解为
输入:子问题 1
上下文:答案 1
生成答案 2
上下文:答案 N-1
生成答案 N
原始复杂问题
阶段一:问题分解
子问题 1
子问题 2
子问题 N
阶段二:逐个求解
生成答案 1
输入:子问题 2
...
输入:子问题 N
最终汇总答案
(注:若 Mermaid 无法显示,请参考以下文字描述)
文字版流程:
- 分解阶段:模型接收原始问题,输出一个子问题列表(如:1. 先算 A; 2. 再算 B; 3. 最后算 C)。
- 求解阶段 :
- 输入子问题 1 -> 得到答案 1
- 输入子问题 2 + 答案 1 -> 得到答案 2
- ...
- 输入子问题 N + 答案 N-1 -> 得到最终答案
3.2 应用场景
- 多步数学应用题
- 复杂代码生成(先写函数 A,再写函数 B,最后组装)
- 长文档推理(先提取事实 1,再提取事实 2,最后综合结论)
🔹 四、策略对比与选型指南(面试高频)
| 策略 | 复杂度 | 成本 (Token/人力) | 稳定性 | 推荐场景 |
|---|---|---|---|---|
| Zero-shot | 低 | 低 | 中 | 简单任务、通用知识查询 |
| Few-shot | 中 | 中 (需准备示例) | 高 | 格式固定、风格迁移任务 |
| Zero-shot-CoT | 中 | 低 (自动推理) | 中高 | 逻辑推理、数学题、无示例场景 |
| Few-shot-CoT | 高 | 高 (需手写推理链) | 极高 | 高难度推理、特定领域逻辑 |
| Few-shot-LtM | 极高 | 极高 (多轮交互) | 极高 | 超长程依赖、多步骤复杂任务 |
✅ 面试话术:
"对于简单任务,我首选 Zero-shot 以节省成本;若涉及逻辑推理,我会尝试 Zero-shot-CoT (
Let's think step by step);如果任务非常复杂且对准确率要求极高,我会构建 Few-shot-CoT 或采用 LtM 策略进行问题分解。"
🔹 五、高频面试题精炼
❓ Q1: Zero-shot 和 Few-shot 的本质区别是什么?
答 :本质区别在于是否提供任务示例。Zero-shot 依赖模型预训练知识的泛化;Few-shot 利用上下文学习(In-Context Learning),通过示例隐式更新模型对任务的理解分布。
❓ Q2: 为什么 CoT(思维链)能提升推理能力?
答 :CoT 将黑盒推理过程显性化。大模型是自回归生成的,直接输出答案可能跳过中间逻辑导致错误。CoT 强制模型生成中间步骤,相当于增加了"计算时间"和"推理路径",让模型有机会自我纠正逻辑错误。
❓ Q3: Few-shot-CoT 示例编写有什么注意事项?
答:
- 多样性:示例应覆盖不同类型的子任务。
- 正确性:推理过程必须逻辑严密,错误示范会误导模型。
- 格式一致:推理步骤的格式(如缩进、标记)需保持一致,便于模型模仿。
❓ Q4: LtM 策略相比 CoT 有什么优势?
答 :CoT 是在单个上下文窗口内完成所有推理,若步骤过多容易丢失信息或注意力分散。LtM 将问题显式分解 并串行求解,每一步都以前一步答案为条件,更适合解决需要长程依赖和状态保持的复杂问题。
🔚 结语:提示工程的未来
提示学习正在从人工手写 向自动优化 演进(如 AutoPrompt, Prompt Generation)。但无论工具如何变化,理解模型如何思考(分解、推理、汇总)始终是核心。
🌟 终极心法 :
最好的 Prompt 不是最复杂的,而是最契合模型推理机制 的。
面试时,展现出你对任务复杂度与提示策略匹配度的思考,比背诵公式更重要。