零样本提示:不喂示例如何驱动大模型
你给大模型布置任务时,最省事的方式是什么都不示范,只说清要它做什么。这种不给任何范例、仅靠一条指令驱动模型的做法,就是零样本提示(Zero-shot Prompting)。本教程讲清它的原理、写好指令的要点、与少样本提示如何取舍,以及在推理模型下的表现与常见失败模式。
什么是零样本提示
零样本提示指的是:在提示中不给任何「输入到输出」的范例,直接描述任务并让模型生成结果。与之相对,少样本提示(Few-shot Prompting)会在提示里塞进若干范例,引导模型模仿格式与风格。
其底层原理是大模型的「指令遵循」与「上下文学习」能力:当模型规模足够大时,仅凭自然语言指令就能理解意图并调用已有知识完成任务,而不必通过范例来「演示」该怎么做。少样本提示的能力最早由 Brown 等人于 2020 年在论文「Language Models are Few-Shot Learners」中系统论证,零样本则是其中最极端的边界情况(范例数为零)。已核验
零样本提示:
把下面这句话翻译成英文:今天天气真好。
少样本提示(给出范例):
中文:你好。 -> 英文:Hello.
中文:再见。 -> 英文:Goodbye.
中文:今天天气真好。 -> (模型续写)
写好零样本指令的要点
零样本没有范例兜底,指令本身的清晰度直接决定结果质量。一条合格的指令通常包含四个要素:
- 明确角色:指定模型扮演的视角,例如「你是一名资深译者」「你是一名严谨的审核员」。
- 明确任务:用动词讲清要做什么,避免「处理一下」这类含糊表述。
- 明确格式:规定输出的结构,例如「用 JSON 返回,字段为 title 与 summary」「分三条要点回答」。
- 明确约束:列出边界条件,例如「不超过 100 字」「只输出代码不要解释」「若信息不足就回答不确定」。
推荐指令模板:
你是一名[角色]。
任务:[具体动作 + 对象]。
输出格式:[结构要求]。
约束:[限制条件]。
把四要素写全,往往比堆砌范例更省 token,也更可控。
与 Few-shot 的取舍
零样本与少样本不是替代关系,而是按任务复杂度分工:
- 优先零样本:任务定义清晰、模型训练数据覆盖充分、格式容易用文字描述。例如分类、改写、翻译、简单抽取。
- 改用少样本:任务有隐蔽的格式约定、需要特定语气风格、或零样本反复出错。例如固定字段的报表生成、特定领域的标签体系、带样板的话术。
- 成本控制:少样本会随范例数线性膨胀 token,且范例若与测试分布不符反而带偏模型。能零样本解决的,不必强行加范例。
实践中常见策略是先零样本跑通,仅在命中失败模式时再补 2 到 3 个范例升级为少样本。
推理模型下的零样本表现
当代推理模型(具备内部长链推理能力的 GPT 系列等)在零样本下表现尤其稳健。OpenAI 的提示指南指出:这类模型在你给出清晰目标、强约束与明确输出约定时效果最好,而不必规定每一步中间过程。已核验
原因在于推理模型已把思维链内化,无需用户手动示范推理步骤或提供范例来「唤醒」推理。因此面向推理模型,零样本常是首选;额外叠加少样本或显式思维链提示,不仅收益有限,还可能挤占上下文、限制模型自主规划。至于「推理模型是否应完全禁用少样本」,不同任务结论不一,建议以实测为准。待核实
失败模式与对策
零样本最常见的几种失效与应对:
- 输出格式漂移:模型没按约定结构返回。对策是在指令里给一份格式骨架或明确分隔符。
- 任务理解偏差:模型答非所问。对策是补一句「先复述你的理解,再执行」,或把动词改得更具体。
- 幻觉与过度发挥:模型编造信息或自作主张加戏。对策是加硬约束「只依据给定材料,不得推断」「不得添加解释」。
- 复杂多步任务崩坏:单条指令覆盖不了长流程。对策是改用提示链(prompt chaining)拆分步骤,或引入少样本示范。
格式约束示例:
用如下 JSON 输出,不要任何额外文字:
{"label": "正面|负面|中性", "reason": "一句话理由"}
小结
零样本提示是不给任何范例、仅靠一条清晰指令驱动模型的方式,适合定义明确、模型已覆盖的任务。写好它的关键是把角色、任务、格式、约束四要素写全。它与少样本是分工而非对立:先零样本跑通,遇失败模式再升级为少样本。在推理模型上,零样本常是首选,不必额外叠加思维链或范例。
参考与延伸阅读
Brown Tom 等人. Language Models are Few-Shot Learners. NeurIPS 2020.
OpenAI. Reasoning models 提示指南(平台文档,给出清晰目标与约束优于规定中间步骤).
本栏目相关:思维链提示(CoT)、少样本提示、系统提示词设计。