← 返回题目列表

Zero-shot、One-shot 和 Few-shot Prompt 有什么区别?

高频 中等 第 13 / 25 题 更新于 2026/07/25
Zero-shotFew-shotIn-Context Learning

简化版

区别在给不给示例、给几个Zero-shot 只给任务说明、无示例;One-shot 给 1 个示例;Few-shot 给少量输入输出示例,让模型在上下文里归纳任务模式(即 In-Context Learning)。示例通常能改善格式和歧义任务,但会增加 token 成本,还可能引入顺序、标签、样例偏置。三者都不更新模型参数——请求结束示例就消失。

详细版

方式给什么适合
Zero-shot只有任务说明模型熟悉、指令清晰的常见任务
One-shot1 个示例说明特殊格式或边界
Few-shot多个示例展示类别、规则、例外

Few-shot 属于 In-Context Learning:模型根据提示中的演示,在当前请求内表现出任务适配。示例选择要:正确、贴近真实分布、覆盖关键类别与难例、输入输出格式一致;还要测试示例顺序绝不把测试样本或未来信息泄漏进示例

完整版教学

一、In-Context Learning 不等于训练

Few-shot 看起来像模型「学会」了新任务,但这是错觉——模型权重一个字节都没变。示例只存在于本次上下文,请求结束就没了;只有微调才通过梯度更新参数。

Few-shot:示例在 prompt 里 → 本次请求有效 → 请求结束即遗忘(不改权重)
微调:    示例进训练循环 → 梯度更新参数 → 永久改变模型

这种「即时适配」让开发者能快速定义新标签和输出模式,但效果受上下文长度、模型能力、示例质量限制。

二、什么时候 Zero-shot 就够了

摘要、翻译、常见分类等定义清晰的任务,强模型往往 Zero-shot 就能做好。先建 Zero-shot 基线有两个好处:省 token;能判断示例是否真带来收益(别为了加而加)。

关键易错点:如果 Zero-shot 失败是因为缺知识,加格式示例没用——示例教的是「格式和模式」,补不了「事实」,那要靠 RAG/工具。

三、Few-shot 为什么有效(一个例子)

自然语言规则有时难以穷举,示例能一次性传达「输入输出映射 + 标签含义 + 风格格式 + 边界处理」:

判断评论情感(正面/负面/中性):

评论:这手机续航一天一充,还行吧。→ 中性
评论:客服态度太差了,再也不买。→ 负面
评论:拍照惊艳,超出预期!→ 正面
评论:{待判断评论} →

三个例子把「中性怎么算、语气怎么映射」讲清了,比纯文字规则更直观。GPT-3 论文展示了这种「无需梯度更新的 Few-shot 能力」,但也指出不同任务表现不稳定,不能当成必然提升。

四、示例怎么选、顺序为什么重要

选择:优先「贴近线上分布 + 答案经审核」的样例。只给最简单样例 → 评估虚高、覆盖不了真实难题;只给极端样例 → 扭曲模型对常规情况的判断。可静态维护一组通用示例,也可按查询相似度动态选择(更相关,但要防检索到错误/敏感/矛盾的演示)。

顺序和分布偏置(高频坑):

  • 模型可能偏向最近出现的标签(recency bias);
  • 可能模仿示例的类别比例(给 5 正 1 负,模型倾向多答正);
  • 示例排列顺序影响。

所以分类任务要覆盖关键类别、测试不同排列(别只挑一次表现最好的顺序),类别比例要结合业务事实决定(机械配平也可能引偏差)。

五、负例有没有用

对约束复杂的任务,正例 + 反例能说明边界。但反例必须明确标注「错在哪」和「正确做法」

✓ 好的反例:
  输入:... 
  错误输出:{漏了 date 字段} ← 错误:缺必填字段 date
  正确输出:{完整字段}

✗ 危险的反例:只给错误输出、不标注 → 模型可能把错误形式当成要模仿的模式

涉及安全的禁止行为,不能只靠反例控制,还需应用层策略和验证。

六、常见误区与追问

  • 误区:Few-shot 是在训练模型。 不改权重,示例只在本次上下文有效,请求结束即忘。
  • 误区:示例越多越好。 增 token 成本、可能引入偏置;先建 Zero-shot 基线判断收益。
  • 误区:加示例能补知识。 示例教格式/模式,补不了缺失事实(那要 RAG/工具)。
  • 追问:什么是 In-Context Learning? 模型据上下文演示在本次请求内适配任务,不更新参数。
  • 追问:Few-shot 有哪些偏置? 顺序(recency)、标签分布模仿、样例选择偏置,要测排列和覆盖。
  • 追问:动态选示例的风险? 可能检索到错误/敏感/矛盾的演示,要过滤校验。
  • 追问:示例一直加下去怎么办? 若示例持续增长且成本高,说明可能该考虑微调了。

七、加强记忆

三者记「只讲规则 / 做一次示范 / 给几道例题」:Zero-shot(无示例,定义清晰的任务够用)、One-shot(1 个,说明特殊格式)、Few-shot(多个,In-Context Learning 现场归纳)。核心认知钉死:示例能教模式但不改参数、请求结束即忘、补不了知识;三大偏置要防——顺序(recency)、标签分布模仿、样例选择,所以要测排列、覆盖关键类别、贴近真实分布、绝不泄漏测试样本。先建 Zero-shot 基线判断示例是否真有用。