学习记录AI道路的知识
K-shot prompting(K 样本提示)
K-shot 直译是K 个样本提示,核心思路是:
让大模型完成某个任务前,先给它K 个「问题(输入)+ 正确答案(输出)」的完整示例,让模型模仿示例的逻辑、格式、规则,去完成同类的新任务。
简单说,就是教模型 "照猫画虎" ------ 你先给它看几只 "猫"(示例),它就知道怎么画 "虎"(新任务)了,这也是大模型少样本学习的核心方式。
关键名词拆解(新手必看)
K 是一个数字,代表给模型的完整示例数量,衍生出 3 种最常见的形式,其中 K-shot 是统称:
0-shot:K=0,不给任何示例,直接让模型做任务(比如直接说 "把 httpstatus 字母反转"); 1-shot:K=1,给1
个完整示例(输入 + 输出); few-shot(少样本):K=2/3/5 等,给2-5 个完整示例(你的代码里我给了 2 个,就是
2-shot,属于 few-shot); many-shot(多样本):K>5,给更多示例(一般用不到,示例太多模型会遗忘,效果反而变差)。
核心原则:K 的数值不用太大,2-3 个贴合任务的示例就足够,关键是示例格式统一、输入输出对应准确。
cpp
YOUR_SYSTEM_PROMPT = """
你是一个文本处理助手,核心任务是将英文单词的字母顺序完全反转。
执行规则:
1. 严格按照示例的格式执行,仅反转字母顺序,无任何额外处理;
2. 最终输出仅保留反转后的结果,不添加任何解释、标点、换行等其他文字。
示例1:
输入:hello
输出:olleh
示例2:
输入:python
输出:nohtyp"""
USER_PROMPT = """
将以下单词中的字母顺序反转。只输出反转后的单词,不要输出其他文本:
httpstatus
"""
EXPECTED_OUTPUT = "sutatsptth"
Chain-of-thought(思维链,简称 CoT)提示工程
思维链是大模型提示工程中最核心的推理类技术,也是比 K-shot 更进阶的玩法,它解决了 K-shot 无法应对的复杂逻辑 / 数学 / 步骤类任务,简单说就是引导大模型像人一样 "一步步思考、分步推理"。
结合你已经掌握的 K-shot,先给一个最直白的定义:
思维链提示 = 分步推理引导 + (可选)K-shot
示例(带推理过程的示例),核心是让模型把解决复杂问题的中间思考步骤说出来,通过一步步推导得到最终答案,而非直接计算 / 判断出结果。
一、为什么需要思维链?(K-shot 搞不定的场景,就是 CoT 的主场)
你之前做的字母反转是简单单步任务,K-shot 给示例后模型能直接搞定,但遇到多步推理、需要逻辑拆解、有计算过程的任务,直接用 K-shot
会大概率出错,比如: 问题:小明有 5 个苹果,小红给了他 3 个,他又分给小刚 2 个,最后小明有几个苹果? 0-shot/K-shot
直接问:模型可能直接跳步算成5+3=8,忘记减 2,给出错误答案 8; CoT 引导:让模型分步说
"第一步:5+3=8;第二步:8-2=6;答案:6",模型能精准推导。
核心痛点:大模型对多步逻辑 / 计算的 "跳步思考" 容易出错,思维链通过强制拆解中间步骤,让模型的推理过程可视化,大幅提升复杂任务的正确率。