问题: 什么是zero-shot(零样本),什么是few-shot(少样本)?

👇 点击展开/折叠 面试背诵模板(建议先背这个) 零样本提示是指直接给出任务指令,不提供任何示例,完全依赖模型预训练阶段习得的通用知识和指令理解能力来执行任务。少样本提示是在指令后附加少量(通常2-5个)输入输出示例,通过上下文学习让模型快速理解任务模式并生成符合预期的输出。两者的核心区别在于是否在提示中提供示例——零样本依靠模型内在能力,少样本通过示例“教学”引导模型行为。零样本更简洁、成本更低,但复杂任务准确率有限;少样本更精确、可控,但需要精心设计示例且消耗更多Token。通常遵循“先试零样本,不行加少样本”的实践策略。
---

一、核心概念详解

零样本提示(Zero-shot Prompting):用户直接给出任务描述,模型凭借预训练阶段积累的知识和指令理解能力直接作答。不提供任何输入输出示例,相当于“告诉模型你要什么,让它自己想办法完成”。

少样本提示(Few-shot Prompting):在指令后附加2-5个完整的输入输出示例,让模型通过上下文学习(In-context Learning)识别任务模式和输出格式,然后对新的输入生成对应输出。相当于“先给模型看几个例子,让它照着做”。

二、核心区别速览

维度 零样本提示 少样本提示
示例数量 0个 2-5个
模型学习方式 依靠预训练知识 通过示例进行上下文学习
适用场景 简单、通用任务(翻译、摘要、常识问答) 格式严格、风格特定、复杂逻辑任务
Token消耗 低 较高(示例占用额外Token)
输出可控性 较低(可能偏离预期格式) 较高(示例约束输出模式)
示例设计成本 无 需要精心挑选代表性示例

三、典型应用示例对比

零样本(Zero-shot)

1
请将以下句子翻译成英文:“今天天气很好。”

少样本(Few-shot)

1
2
3
4
5
6
7
8
请将以下句子翻译成英文。

示例:
“你好” → “Hello”
“谢谢” → “Thank you”
“再见” → “Goodbye”

现在翻译:“今天天气很好。” →

四、Zero-shot vs Few-shot vs CoT 对比补充

对比维度 Zero-shot Few-shot CoT(思维链)
是否提供示例 不提供 提供2-5个 可提供可不提供
是否要求推理 不要求 不要求 要求逐步推理
最佳适用场景 简单指令任务 格式/风格控制任务 复杂逻辑/数学推理

五、选择建议与实践原则

  • 优先尝试零样本:简单任务直接通过清晰指令完成,节省Token和延迟。
  • 零样本效果不佳时引入少样本:当模型输出格式不稳定、风格偏差或任务较复杂时,添加示例约束。
  • 少样本失效时考虑思维链:若少样本仍无法满足复杂推理需求,在示例中加入推理步骤(CoT)引导模型分步思考。
  • 示例设计要点:示例应覆盖典型场景,格式统一,数量控制在2-5个,避免过度引导或偏差。