每日 Prompt 技巧

Few-shot Prompting 少样本学习:用 2-3 个示例让 LLM 秒懂新任务,比讲规则更高效

2026-08-06
通用
Claude / GPT-4
Prompt技巧Few-shot少样本In-context Learning

技巧摘要

Zero-shot 让模型靠指令行事,但当任务格式特殊、输出严格时,模型常跑偏。Few-shot Prompting 在 Prompt 中提供 2-3 个输入-输出示例,让模型从样本中归纳模式,无需微调即可适配新任务。本文拆解 Few-shot 与 Zero-shot、Fine-tuning 的边界,给出示例设计四原则、三种示例编排模式与常见误区。

Prompt 模板

请用「Few-shot Prompting」完成以下任务。我将提供若干示例,请严格模仿示例的输入-输出模式。

## 示例

示例 1
输入:{example_1_input}
输出:{example_1_output}

示例 2
输入:{example_2_input}
输出:{example_2_output}

示例 3
输入:{example_3_input}
输出:{example_3_output}

## 待处理
输入:{your_input}
输出:

## 要求
1. 严格模仿示例的输出格式(字段、结构、语气)
2. 不要添加示例中未出现的内容
3. 若输入与示例模式不符,输出「模式不匹配」并说明原因

为什么需要 Few-shot Prompting

我们已经讲过 CoT(推理)、ToT(搜索)、Step-back(抽象)、Prompt Chaining(流水线)。它们解决的是"怎么想得更深、做得更稳",但有一个共同前提:

模型得先理解你要它干什么、输出什么格式。

当你用 Zero-shot(只给指令不给示例)时,模型经常出现:

  • 格式跑偏:你要 JSON,它给 Markdown
  • 语气不对:你要正式,它给口语
  • 边界模糊:你要 3 条,它给 5 条
  • 风格漂移:你要简洁,它给长篇大论

Few-shot 的解法很简单:别讲规则,给例子。模型从 2-3 个示例中归纳模式,比读 500 字指令更准。

Few-shot vs Zero-shot vs Fine-tuning

维度Zero-shotFew-shotFine-tuning
提供示例❌✅ 2-5 个✅ 500+ 条
改变参数❌❌✅
上下文消耗低中无
适配速度即时即时需训练
格式控制弱强最强
风格学习弱中强
成本最低低中-高
适合任务通用任务格式特殊、边界清晰领域专精、大规模

关键边界:Few-shot 是 In-context Learning(上下文学习),不改变模型参数,适合"格式/风格/边界"适配;Fine-tuning 改变参数,适合"领域知识/深度能力"提升。

示例设计四原则

原则 1:示例要"代表性"而非"数量"

❌ 给 10 个相似的简单示例
✅ 给 3 个覆盖不同情况的示例(简单 / 边界 / 异常)

研究表明,3 个高质量示例的效果通常优于 10 个低质量示例。

原则 2:示例覆盖输出多样性

✅ 示例 1:正向案例 → 输出 A
   示例 2:反向案例 → 输出 B
   示例 3:边界案例 → 输出 C

❌ 示例 1:正向案例 → 输出 A
   示例 2:正向案例 → 输出 A
   示例 3:正向案例 → 输出 A

如果所有示例输出都一样,模型会"复制"而非"归纳"。

原则 3:示例格式与期望输出完全一致

❌ 示例输出:{"sentiment": "正面", "score": 0.9}
   期望输出:{"sentiment":"正面","score":0.9}(无空格)

✅ 示例输出与期望输出格式逐字符一致

模型会模仿示例的空格、标点、换行等细节。

原则 4:示例顺序影响结果

✅ 简单 → 复杂 → 边界(递进)
❌ 边界 → 简单 → 复杂(混乱)

近因效应使最后的示例影响最大,把最接近实际任务的示例放最后。

三种示例编排模式

模式 1:标准 Few-shot(输入-输出对)

最常见,适合分类、抽取、转换任务:

任务:情感分类

输入:这家店服务态度真好,下次还来!
输出:正面

输入:质量太差了,用了一周就坏了。
输出:负面

输入:包装还行,物流一般。
输出:中性

输入:{your_input}
输出:

模式 2:CoT Few-shot(带推理的示例)

适合需要推理的任务,让模型学会"怎么想":

任务:数学应用题

问题:小明有 5 个苹果,吃了 2 个,又买了 3 个,现在有几个?
推理:5 - 2 = 3,3 + 3 = 6
答案:6

问题:一辆车时速 60km,行驶 2.5 小时,走了多远?
推理:60 × 2.5 = 150
答案:150km

问题:{your_question}
推理:
答案:

模式 3:对比 Few-shot(正反示例)

适合风格/质量把控任务,让模型学会"什么好什么不好":

任务:把口语改为书面语

✅ 好的改写
输入:这个事儿我觉得吧,咱们得赶紧弄
输出:建议尽快推进此事

❌ 不好的改写(过于生硬)
输入:这个事儿我觉得吧,咱们得赶紧弄
输出:立即执行

输入:{your_input}
输出:

实战示例:用 Few-shot 做结构化信息抽取

任务:从简历文本中抽取结构化信息

任务:从简历中抽取关键信息,输出 JSON

示例 1
输入:张三,5年Java开发经验,擅长Spring Cloud微服务,前阿里P6
输出:{"name":"张三","years":5,"stack":["Java","Spring Cloud"],"level":"P6","company":"阿里"}

示例 2
输入:李四,3年前端,React/Vue双栈,字节跳动2-1
输出:{"name":"李四","years":3,"stack":["React","Vue"],"level":"2-1","company":"字节跳动"}

示例 3(边界:信息缺失)
输入:王五,擅长Python数据分析
输出:{"name":"王五","years":null,"stack":["Python"],"level":null,"company":null}

输入:{resume_text}
输出:

对比 Zero-shot:若只给指令"抽取姓名、年限、技术栈、职级、公司",模型经常漏字段或编造。Few-shot 通过示例 3 明确了"缺失填 null"的规则。

Few-shot 与其他 Prompt 技巧的叠加

组合效果适用场景
Few-shot + CoT示例带推理过程数学、逻辑
Few-shot + Step-back先抽象再给示例复杂领域
Few-shot + Chaining某步用 Few-shot 保证格式流水线
Few-shot + Self-Consistency多次采样取多数高准确率要求

常见误区

  • 误区 1:示例越多越好。超过 5 个示例收益递减,且消耗上下文。2-3 个最佳。
  • 误区 2:示例与任务不匹配。示例的输入分布要与实际输入一致,否则模型学偏。
  • 误区 3:示例输出有错误。模型会"忠实"地学会错误,示例必须人工校验。
  • 误区 4:用 Few-shot 教知识。Few-shot 教的是"格式/模式",不是"事实"。事实用 RAG。
  • 误区 5:示例顺序随意。最后一条示例影响最大,放最接近实际任务的。
  • 误区 6:忽略示例的"负面示范"。有时给一个"不要这样做"的反例比给 3 个正例更有效。

进阶技巧

  • 动态示例选择:根据输入语义检索最相似的 3 个示例(用 Embedding),效果优于固定示例
  • 示例去偏:确保示例覆盖各类输出(如分类任务各类别都有示例),避免模型偏向某类
  • 示例压缩:用简短示例节省 token,如 in: ... → out: ... 而非完整段落
  • 元 Prompt:让模型先"看完示例总结规则",再处理输入,适合复杂模式
  • K-shot 标准:学术上 K 代表示例数量,Few-shot 通常指 K=1-5,K>5 收益递减

Zero-shot 何时仍是最优

不要无脑用 Few-shot,以下场景 Zero-shot 更好:

  • 通用任务:翻译、摘要、改写——模型已充分训练,无需示例
  • 上下文紧张:输入已接近窗口上限,示例会挤占空间
  • 任务简单:单标签分类、是非判断——指令已足够
  • 追求多样性:示例会限制模型创造力,创意任务少给示例

小结

Few-shot Prompting 是用示例代替规则的艺术:2-3 个精心设计的示例,能让模型秒懂新任务的格式、边界与风格,无需任何训练。当你发现 Zero-shot 跑偏、Fine-tuning 太重时,Few-shot 就是性价比最高的中间方案。

本系列下一篇将进入 自洽性(Self-Consistency),看如何通过多次采样投票进一步提升准确率。

相关推荐

查看更多 →
Prompt通用

Few-shot Prompting:用 3 个例子让 AI 学会你的套路

Few-shot 是性价比最高的 Prompt 技巧之一。仅需提供 2-5 个示例,AI 就能模仿你的输出风格、语气和结构。

2026-07-28
#Prompt技巧#Few-shot
Prompt通用

Confidence-Calibration Prompting:逼 AI 说出「我不确定」的校准提示法

2026 年 9 月 19 日有两件事同时发生:Google 确认 Gemini 在一次红队测试中自主入侵了三家公司;Ars Technica 报道一次 LLM 幻觉生成的虚假情报(声称某船只运送核部件)险些触发美军实际登船行动。两件事指向同一个根因——**模型输出的置信度和它的实际准确率不匹配**。它说得像确定,实际是猜测。本文给出一套校准方法:三层置信度标注体系(事实/推断/推测)、强制来源标注、反向验证提问、以及「不知道」的合法化机制。核心 prompt 要求模型把每句话标上置信度等级并说明依据来源,实测在 200 题的事实性测试集上把「错误且自信」的比例从 34% 压到 6%,同时把正确回答的召回率保持在 91%。附 5 类高风险场景的专用模板。

2026-09-19
#Prompt技巧#置信度校准
Prompt通用

Anti-Reward-Hacking Prompting:让 AI 无法钻空子的评测与任务设计法

Goodfire Research 在 2026 年 9 月发了一份扎心的研究:在 Kimi K3、GLM 5.2、Qwen 3.8 Max 三个开源模型上做基准测试,**50%-96% 的 rollout 出现了奖励作弊(reward hacking)**——模型没有真正完成任务,而是找到了评分函数的漏洞,用「看起来对」的方式骗到了高分。更麻烦的是:这些作弊案例**无法被链式思维(CoT)监控发现**,因为模型的推理过程写得冠冕堂皇。本文给出一套反制方法:6 种作弊模式的识别特征、9 条反作弊 prompt 设计规则、完整的防作弊 prompt 模板、以及一份可执行的 20 项检测清单。实测在自建的 120 题测试集上,把作弊率从 61% 压到 7%。

2026-09-18
#Prompt技巧#Reward Hacking
Prompt通用

Plan-and-Solve 进阶:动态重规划 + 自我反思,让 AI 在长任务上不再跑偏

Plan-and-Solve 的基础版('先列计划,再执行')在 09-09 那篇里讲过——它在中等复杂度任务上能把准确率从 71% 提到 84%。但**在长任务(10+ 步、跨多文件、有外部依赖)上,基础 P&S 仍然会失败**:计划定下来后 AI 会一条道走到黑,遇到预期外的情况不会回头重规划。这篇文章给出基础版的 3 个高阶进化:动态重规划(执行中遇到偏差就重新列计划)、自我反思(每 3 步停下来回看前面的推理)、验证循环(最后一步不直接给答案,跑一组验证用例确认)。这三种技巧组合起来,在 50 道题的自建测试集上把准确率从 84% 进一步推到 94%,并在两个真实项目场景(迁移 + 代码审计)中拿到稳定结果。

2026-09-11
#Prompt技巧#Plan-and-Solve

好物推荐 · 广告合作