少样本提示(Few-shot)怎么写:给几个例子、怎么挑、怎么排版(官方建议汇总)

少样本提示(few-shot)是什么、例子该给几个?本文汇总 Anthropic、Google、OpenAI 官方文档:示例为什么管用、3–5 个的建议从哪来、怎么挑怎么排版,以及推理模型什么时候可以不给例子。

NNathaniel bigo··原创首发·AI 辅助撰写
7 分钟读完
资料核对于 2026-10-11 · 依据官方文档与公开资料整理 免费账号 账号

适用于谁

  • 搜「少样本提示」「few shot 提示词」「few-shot prompt 例子」的人;
  • 用文字怎么描述都得不到想要的格式和语气,想知道「给例子」到底该怎么给的人。

本文根据 Anthropic、Google、OpenAI 的官方提示词文档整理,资料核对于 2026-10-11。

结论先说

  1. 少样本提示就是在提示词里放几组「输入 → 期望输出」的例子,让模型照着这个模式做;一个例子都不给叫零样本(zero-shot)。
  2. 例子主要用来管格式、措辞、范围和风格,这些东西用文字很难描述清楚,用例子一看就懂。
  3. 给几个:Anthropic 的建议是 3–5 个。Google 说需要自己试,并提醒例子太多模型可能「过拟合」到例子上。
  4. 怎么挑:贴近真实场景、彼此有差异、覆盖边界情况。
  5. 怎么排:所有例子的结构和格式必须一致,并且和指令明确分隔开。
  6. 推理模型可以先不给例子试试,这是 OpenAI 对推理模型的建议。

三家官方怎么说

态度关键建议
Anthropic示例是引导输出格式、语气和结构最可靠的方法之一3–5 个;相关、多样、有结构;用 <example> 标签包起来
Google建议始终在提示词里包含少样本示例,没有示例的提示词效果可能更差例子足够清楚时甚至可以去掉指令;注意数量和格式一致
OpenAI通过少量输入输出示例把模型引向新任务,不用微调示例要覆盖多样的输入;推理模型先试零样本

三家的共同点是:例子有用,而且比多数人以为的更有用。分歧只在「是不是每次都要给」。

步骤

1. 判断需不需要例子

适合给例子的情况:

  • 输出有固定格式(表格列、JSON 字段、固定句式);
  • 有特定的语气和文风(品牌口吻、某种报告体例);
  • 分类、打标签、信息抽取这类「同一种操作重复做」的任务;
  • 你发现自己写了一大段话在描述「我想要的样子」。

可以先不给的情况:用的是推理模型(开启思考的模型),任务本身说得清楚。OpenAI 的原话是:推理模型往往不需要少样本示例就能给出好结果,先写不带例子的提示词;输出要求比较复杂时再加几个,并且确保例子和指令高度一致,两者有出入会导致结果变差。

2. 挑例子:相关、多样

Anthropic 给的三个标准:

  • 相关(Relevant):贴近你的真实使用场景;
  • 多样(Diverse):覆盖边界情况,彼此差别足够大,免得模型学到你没打算教的规律;
  • 有结构(Structured):见下一步。

「多样」最容易被忽略。常见的翻车方式:

  • 三个例子的答案都是「正面」,模型就倾向于什么都判正面;
  • 三个例子的输出都是恰好三句话,模型就认为必须三句话;
  • 例子的输入都很短,遇到长输入时表现失常。

所以挑的时候刻意放进:不同类别的各一个、长短不一的、至少一个「难判断」的或者「应该拒绝 / 应该说不知道」的。

Anthropic 还提到一个省事的办法:让模型帮你评估这组例子够不够相关和多样,或者基于你已有的几个再生成一些。

3. 排版:格式一致,和指令分开

Google 的提醒:加例子的主要目的之一就是向模型展示回答的格式,所以所有例子的结构和格式必须相同,尤其要注意 XML 标签、空格、换行和例子之间的分隔符。

Anthropic 的做法是用标签把例子包起来,让模型能分清哪些是例子、哪些是指令:单个用 <example>,多个再套一层 <examples>。OpenAI 官方示例的排法类似,把例子放在开发者消息的「Examples」一节,每组用成对的标签标出输入和输出。

一个完整的例子(给用户评论打标签):

把下面的用户评论归为「好评」「中评」「差评」之一,只输出这两个字,不要解释。

<examples>
<example>
<review>音质很好,降噪也不错,就是充电盒有点大。</review>
<label>好评</label>
</example>
<example>
<review>续航还行,耳垫感觉比较廉价。</review>
<label>中评</label>
</example>
<example>
<review>客服态度太差,再也不买了。</review>
<label>差评</label>
</example>
<example>
<review>东西还没到,先来占个位。</review>
<label>中评</label>
</example>
</examples>

<review>[待分类的评论]</review>

第四个例子是特意放的边界情况:没有实际评价内容时该怎么归。

4. 控制数量

  • Anthropic:3–5 个效果最好;
  • Google:模型通常用几个例子就能抓住规律,但需要你自己试出合适的数量;例子太多时,模型可能过拟合,回答变得过于贴近例子本身。

实际做法是从 3 个开始,输出不稳定就针对出错的类型补例子,而不是盲目加量。

5. 让例子「压过」默认倾向

Google 文档里有个很有启发的演示:同一个选择题,零样本时模型选了较长的解释;在提示词里放两个「都偏向简短答案」的例子之后,模型改选了较短的那个。也就是说,例子不只是示范格式,还能改变模型的偏好。想让回答更短、更口语、更谨慎,就让例子体现出来。

配合思考模式

Anthropic 文档说明,少样本示例在思考模式下同样有效:提示词里的完整解题范例会影响模型在思考过程中处理类似问题的方式。官方建议把每个例子写成「问题 + 应该用的方法 + 期望的答案」。

常见问题

Q:例子和指令冲突时听谁的?

没有可靠的规则,结果会变得不稳定。OpenAI 专门提醒了例子与指令不一致会导致结果变差。写完后检查一遍:例子里的每个输出,是否都严格符合你写的指令?

Q:模型总是照抄例子里的内容怎么办?

这是例子太少或太相似的信号。增加差异;在指令里说明「例子只用于展示格式,不要复用其中的具体内容」。

Q:聊天界面里怎么用少样本?

直接在消息里写「参考下面几个例子的格式」再贴例子即可。要长期使用,就放进自定义指令、项目说明或智能体的系统提示词里,见《系统提示词怎么写》。

Q:例子很长,占了太多上下文怎么办?

固定不变的例子放在提示词的开头部分,配合各家的提示词缓存可以降低重复调用的成本,见站内《Claude 提示词缓存入门》。

Q:去哪里找现成的例子?

站内提示词库(/prompts)的文本类提示词都附有「示例输出」,可以直接拿来当少样本示例改写。

参考资料

  • Anthropic 文档:Prompting best practices(Use examples effectively)— https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/claude-prompting-best-practices
  • Google 文档:Prompt design strategies(Zero-shot vs few-shot prompts)— https://ai.google.dev/gemini-api/docs/prompting-strategies
  • OpenAI 文档:Prompt engineering(Few-shot learning)— https://developers.openai.com/api/docs/guides/prompt-engineering
  • OpenAI 文档:Reasoning best practices — https://developers.openai.com/api/docs/guides/reasoning-best-practices
需要开通或续费?Claude Pro 充值 →

Nathaniel 的更多内容

  1. 01

    promptfoo 使用教程:对比提示词和模型、写断言自动评测(安装与配置)

    promptfoo 是什么、怎么使用?按官方 README 和入门文档讲清它的用途、三种安装方式、用示例项目起步、promptfooconfig.yaml 里提示词、模型和测试用例三部分怎么写、常用断言类型的含义、eval 与 view 两条命令,以及把它放进日常改提示词流程的方法。

    ChatGPT其他 AI 工具0
  2. 02

    Kimi API怎么用:API Key获取、Python调用、K3价格与429报错处理

    Kimi API Key 在哪里获取、怎么用 Python 调用 K3、价格怎么算、429 和 401 报错怎么办?本文按 Kimi API 开放平台官方文档讲清注册认证、创建 Key、base_url 与模型名、计费规则和常见错误排查。

    Kimi0
  3. 03

    Cursor Agent 模式怎么用:Agent、Plan、Ask 三种模式,检查点回滚与消息排队

    Cursor Agent 模式是什么、和 Plan / Ask 模式怎么选?按官方文档讲清 Agent 能调用哪些工具、Shift+Tab 切换模式、Plan 模式先出方案再动手、用检查点撤销改动、任务进行中排队或插话,以及 /goal 长目标。

    Cursor0
  4. 04

    Gemini 聊天记录怎么导出:导出到文档 / 表格、生成 PDF 与用 Takeout 批量导出完整对话

    Gemini 没有「一键导出全部对话」的按钮,但有三条官方路径:单条回答导出到 Google 文档、Gmail、表格;让 Gemini 直接生成 PDF、Word、Markdown 文件;用 Google Takeout 批量下载全部活动记录。本文给出每种方法的步骤和限制。

    Gemini0
  5. 05

    ChatGPT 生成图片中文乱码、文字错误怎么办:7 个按顺序试的办法

    让 ChatGPT 做海报、封面、信息图,中文总是缺笔画、错字、乱码?本文按 OpenAI 官方图像提示指南,给出从写法、字数、局部修改、质量档位到后期排版的 7 个办法,以及什么时候干脆别让 AI 写字。

    ChatGPT0
  6. 06

    OpenCode Skills 使用指南:技能目录、命名规则、权限配置与不加载排查

    OpenCode 的 Skills 放在哪个目录、怎么控制哪些技能能用?按 OpenCode 官方文档讲清六个扫描位置、name 的正则规则、skill 工具的工作方式、在 opencode.json 里用 allow / deny / ask 配置权限、按智能体覆盖,以及技能不出现时的五项检查。

    其他 AI 工具0

同产品的其他教程

  1. 01

    Cursor、Claude Code、Codex、GitHub Copilot 有什么区别:按形态、账号、计费和规则文件对比

    Cursor 和 Claude Code 的区别是什么、和 Codex、GitHub Copilot 怎么选?只用各家官方文档的事实对比:产品形态、用什么账号、怎么计费、能选哪些模型、规则文件与 MCP、权限模式、代码审查;不做「谁更强」的排名,给出按场景选择的思路。

    ClaudeCursor0
  2. 02

    如何让大模型稳定输出 JSON:结构化输出、JSON 模式与提示词写法(OpenAI / Claude)

    怎么让大模型稳定输出 JSON?本文按 OpenAI 和 Anthropic 官方文档讲清只靠提示词、JSON 模式、结构化输出三种做法的可靠程度,两家的写法与 Schema 限制,以及拒答和截断两种例外。

    ChatGPTClaude0
  3. 03

    Gemini API Node.js / JavaScript 调用教程:@google/genai 安装、流式输出与函数调用

    用官方 @google/genai SDK 在 Node.js 里调 Gemini API:安装配置、第一个请求、流式输出、多轮对话、传图片和函数调用的完整循环,并说明为什么密钥不能写进浏览器前端。

    Gemini0
  4. 04

    npx skills add 怎么用:从 GitHub 安装 Skill、skills.sh 是什么与常用命令

    网上的 Skill 安装命令大多是 npx skills add 开头,它是什么、装到哪去了?按官方 README 讲清 skills 命令行工具支持的来源写法、项目与全局两种范围、-a 指定工具、list / find / update / remove 等命令、软链接与复制的区别,以及怎么关掉遥测。

    Claude其他 AI 工具0
  5. 05

    提示词里的角色设定有用吗:「你是一位专家」该怎么写才有效(官方文档怎么说)

    提示词开头写「你是一位资深专家」到底有没有用?本文按 Anthropic、OpenAI、Google 官方文档讲清角色设定管什么、不管什么,一句话角色和详细人设各自适合什么场景,角色应该放在哪里,以及比「你是专家」更有效的四个写法。

    ChatGPTClaude0
  6. 06

    提示词链(Prompt Chaining)怎么用:把复杂任务拆成几步,前一步的输出交给后一步

    提示词链是什么、什么时候该把大提示词拆开?本文按 Anthropic 和 Google 官方文档讲清拆指令、串成链、分块聚合三种拆法,最常用的「起草 → 审查 → 修改」链,以及哪些情况不必拆。

    ClaudeGemini0

0 条评论

登录 后参与评论

还没有评论,来抢沙发~