在 Prompt Engineering(提示词工程)中,少样本提示、思维链提示、回退提示是三类针对不同场景的核心提示策略,分别解决 "样本不足"、"复杂推理"、"模型失效" 的问题:
少样本提示(Few-Shot Prompting)
核心定义
少样本提示是指在提示词中提供少量(通常 2-5 个)示例,让模型通过学习示例的逻辑和模式,完成同类任务的提示方法,无需大规模微调模型,适配样本稀缺的场景。
核心原理
利用大模型的 ** 上下文学习(In-Context Learning)** 能力,让模型从示例中归纳任务规则(如分类标准、生成格式、映射关系),进而输出符合要求的结果。
典型场景与示例
文本分类任务
判断用户评论的情感倾向(正面 / 负面)提示词示例:
plaintext
请判断以下用户评论的情感倾向,仅输出"正面"或"负面"。
示例1:这款手机续航超强,用了一天还有50%电 → 正面
示例2:快递太慢了,一周才到,包装还破损了 → 负面
待判断:新出的耳机音质很清晰,降噪效果超出预期
模型会基于两个示例的逻辑,输出 "正面"。
格式转换任务
将自然语言转为 SQL 语句提示词示例:
plaintext
请将自然语言查询转为SQL语句,数据库表名为user,包含字段id、name、age、city。
示例1:查询所有北京的用户 → SELECT * FROM user WHERE city='北京'
示例2:查询年龄大于25的用户姓名 → SELECT name FROM user WHERE age>25
待转换:查询id为100的用户的城市
关键要点
示例需典型且统一:避免示例逻辑矛盾,格式保持一致
数量适中:通常 2-8 个示例即可,过多会占用上下文窗口,且可能降低效率
思维链提示(Chain-of-Thought, CoT)
核心定义
思维链提示是通过在提示词中引导模型分步推理,先输出中间思考过程,再得到最终答案的提示方法,专门解决复杂逻辑问题(如数学计算、多步推理、因果分析)。
核心原理
模拟人类的思考路径,让模型 "先拆解问题→逐步推导→验证逻辑→得出结论",避免直接跳跃式回答导致的错误,提升复杂任务的准确率。
典型场景与示例
数学应用题任务
计算实际问题提示词示例:
plaintext
请解决以下数学题,先写出解题步骤,再给出最终答案。
示例:小明有10个苹果,给了小红3个,又买了5个,现在有多少个?
步骤1:小明原本有10个,给小红3个后,剩余10-3=7个
步骤2:又买了5个,现在有7+5=12个
答案:12个
题目:一个车间每天生产200个零件,生产了5天后,因设备升级每天多生产50个,又生产了3天,总共生产多少个零件?
模型会先分步计算,再输出最终结果
多条件推理任务:
根据多个条件判断结论提示词示例:
plaintext
请根据以下条件判断人物身份,先梳理条件关系,再得出结论。
条件1:A是30岁,在医院工作
条件2:在医院工作且年龄大于25岁的人,要么是医生,要么是护士
条件3:A会做手术,只有医生会做手术
请分步推理并给出A的身份。
关键要点
明确要求 "分步思考" :在提示词中加入 "先写步骤""分步推理" 等指令
复杂任务可结合少样本:提供带思维链的示例,让模型更易掌握推理逻辑
回退提示(Fallback Prompting)
核心定义
回退提示是一种容错型提示策略,当模型无法直接回答问题(如知识盲区、格式不匹配、输入异常)时,引导模型触发预设的 "回退逻辑",避免输出无效或错误内容。
还有一种情况是面对复杂问题时,先回退抽象一个通用框架,然后基于框架对原问题进行推理和求解
比如回答xx酒驾案例,模型先抽象化问题(比如通用做法:责任人怎么判定?需要考虑哪些因素),再基于抽象的框架解答问题(xx做了什么事,违反了yy法等)
核心原理
通过在提示词中定义 "异常场景" 和 "应对方案",让模型在检测到自身能力不足时,执行回退操作(如拒绝回答、调用工具、转向基础回答),保证输出的可靠性。
典型场景与示例
知识盲区回退任务
回答专业问题,若不了解则说明提示词示例:
plaintext
请回答以下物理问题,若你不确定答案或不了解相关知识,直接回复"我暂未掌握该领域知识,无法准确回答",不要编造答案。
问题:量子纠缠的具体实验验证方法有哪些?
若模型对该知识不熟悉,会触发回退语句,避免错误输出。
格式异常回退任务
处理结构化输入,若格式错误则提示修正提示词示例:
plaintext
请解析以下用户输入的"姓名-年龄-城市"信息,输出JSON格式。若输入格式不符合"姓名-年龄-城市",回复"输入格式错误,请按'姓名-年龄-城市'的格式重新提供信息"。
输入:张三,25,上海
模型检测到输入用逗号分隔而非横线,会触发格式错误的回退提示。
工具调用回退任务
需要实时数据时调用工具,工具不可用时回退提示词示例:
plaintext
请回答当前某股票的价格,优先调用股票查询工具获取实时数据;若工具调用失败,回复"无法获取实时数据,建议通过正规金融平台查询"。
关键要点
明确回退触发条件:在提示词中清晰定义 "哪些情况需要回退"
回退逻辑需简洁明确:避免模型对回退指令产生歧义,确保执行一致性