news 2026/7/1 3:01:13

掌握提示工程:CoT思维链技术详解,零样本学习替代数据标注

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
掌握提示工程:CoT思维链技术详解,零样本学习替代数据标注

提示工程是设计与大模型交互的核心技能,特别是Chain-of-Thought(CoT)技术通过引导模型展示推理过程,能显著降低对标注数据的依赖。无需微调,即可通过零样本/少样本提示让基座模型表现出接近微调模型的性能。文章系统介绍了提示工程流程:任务分析、提示设计模式选择、迭代评估和工具集成,以及角色扮演、格式约束等高级技巧,帮助开发者将人类思维模式"翻译"成模型可执行的指令,实现经济高效、透明可解释的大模型应用。

前排提示,文末有大模型AGI-CSDN独家资料包哦!

开展提示工程(Prompt Engineering)是一项核心技能,其本质是设计与模型的交互方式,以最有效地激发出模型在预训练阶段获得的知识和推理能力

以下我将系统性地阐述如何开展提示工程,并重点讲解如何通过类似Chain-of-Thought (CoT) 的设计来降低对标注数据的依赖。

一、核心思想:从“下达指令”到“引导思维”

  • CoT 通过显式要求模型生成中间推理步骤,激活了模型中与逻辑推理相关的潜在表示
  • 这本质上是一种引导式搜索,让模型从“直接生成答案”转变为“生成推导路径”,从而绕过表面样式匹配,进入更深层的语义空间。

传统的提示是给模型一个指令(如“翻译这句话”),而高级的提示工程是为模型搭建一个思维框架,引导它模仿人类解决问题时的内在认知过程。

为什么这能降低对标注数据的依赖?

  • 无需微调:你不需要用成千上万个(问题,推理链,答案)的标注数据对模型进行微调(SFT)。
  • 零样本/少样本学习:通过巧妙的提示,可以直接让拥有千亿参数的基座模型(Base Model)在“零样本”(Zero-Shot)或“少样本”(Few-Shot)的情况下,表现出接近甚至经过微调模型的性能。

二、开展提示工程的系统化流程

这是一个可循环迭代的流程,而非一次性的步骤。

1.任务分析与分解(Task Analysis & Decomposition)
  • 目标:彻底理解你要模型解决的任务的本质。
  • 方法
  • 将复杂任务分解为更小的子任务(Sub-tasks)。例如,“解答数学应用题”可以分解为“理解问题”、“提取变量”、“列出公式”、“分步计算”、“整合答案”。
  • 识别任务中的潜在陷阱和歧义点(如视频中的“首字母” vs “未字母”陷阱)。
2.提示设计模式选择(Prompt Design Pattern Selection)

根据任务复杂度,从初级到高级选择合适的设计模式:

  • a. 零样本提示(Zero-Shot Prompting)
  • 形式:直接给出指令。“请问中国的首都是哪里?”
  • 适用:简单、常见、定义明确的任务。
  • b. 少样本提示(Few-Shot Prompting)
  • 形式:提供几个输入-输出的示例(Examples),让模型从中学习模式。

输入:“天空的颜色是?” 输出:“蓝色。”

输入:“草地的颜色是?” 输出:“绿色。”

输入:“云的颜色是?” 输出:“

适用:任务有特定格式或风格要求(如情感分类、实体识别)。

  • c. 思维链提示(Chain-of-Thought Prompting)
  • 形式:在少样本示例中,不仅给出答案,更展示得出答案的推理步骤。这是激发推理潜能的关键。

问题:小明有5个苹果,他吃了2个,又买了3个,现在有几个?

推理:小明一开始有5个。吃了2个,所以剩下5-2=3个。又买了3个,所以现在有3+3=6个。

答案:6

问题:我有3个苹果,爸爸比我多2个,我们一共有多少个?

推理:

零样本CoT:甚至可以不提供示例,直接使用魔法指令(如视频中所提):
“请逐步推理以下问题:我有3个苹果,爸爸比我多2个,我们一共有多少个?”
“Let's think step by step.”

  • d. 自我一致性提示(Self-Consistency Prompting)
  • 形式高级技巧。结合CoT,让模型生成多条不同的推理路径和答案,然后从中选择最一致的答案(多数投票)。
  • 实现:通过调整生成参数(如num_return_sequencestemperature > 0)来采样多个输出。
  • 适用:复杂、开放或多解的问题,能显著提升准确率。
3.迭代与评估(Iteration & Evaluation)
  • 构建测试集:准备一个包含标准答案的多样化测试集(20-50个典型例子)。
  • 评估指标:不仅评估最终答案的正确率,也评估推理过程的逻辑性
  • 迭代优化
  • 如果模型直接跳向错误答案 → 在提示中加强“逐步思考”的指令。
  • 如果推理步骤混乱 → 在少样本示例中提供更清晰、更规范的推理范例。
  • 如果结果不一致 → 引入自我一致性(Self-Consistency)方法。
4.工具集成与自动化(Tool Integration & Automation)
  • 将最终验证有效的提示模板化、参数化。
  • 利用LangChain、LlamaIndex等框架构建可重复使用的提示工作流。
  • 建立提示版本管理系统,追踪不同提示的效果。

三、高级技巧与最佳实践

  1. 角色扮演(Role Playing)
  • 让模型扮演某个领域的专家(如“你是一位杰出的数学家”),能有效激活模型内部相关的知识库。
  1. 格式约束(Formatting Constraints)
  • 要求模型以特定格式(如JSON、XML、Markdown表格)输出,便于后续程序解析,提升输出稳定性。
  • 示例:“请以JSON格式输出,包含'reasoning'和'answer'两个字段。”
  1. 分步交互(Multi-Turn Interaction)
  • 对于极其复杂的任务,不要期望一次提示就得到完美答案。设计多轮对话,让用户或系统可以逐步提供反馈和约束,引导模型深入思考。
  1. 负面提示(Negative Prompting)
  • 明确告诉模型“不要做什么”,可以有效避免常见错误。
  • 示例:“请确保你的推理是基于逻辑的,而不是凭记忆中的样式匹配。”

四、一个完整的CoT提示工程示例

任务:解决数学应用题

初始失败提示(零样本)

“问题:我有3个苹果,爸爸比我多2个,我们一共有多少个?请直接给出答案。”

(模型可能因样式匹配直接回答5)

优化后的CoT提示(少样本)

请解决以下数学问题,并遵循以下格式:

  1. 逐步推理。

  2. 最后给出最终答案。

示例:

问题:小明有5个苹果,他吃了2个,又买了3个,现在有几个?

推理:小明一开始有5个。吃了2个,所以剩下5-2=3个。又买了3个,所以现在有3+3=6个。

答案:6

现在请解决:

问题:我有3个苹果,爸爸比我多2个,我们一共有多少个?

推理:

*(模型现在更可能生成:首先,我的苹果数是3个。爸爸比我多2个,所以爸爸有3+2=5个。我们一共有3+5=8个。答案:8)*

进一步优化(加入自我一致性)

  1. temperature=0.7num_return_sequences=5的参数,让上述提示生成5个推理过程和答案。
  2. 统计发现4个答案输出是8,1个是5。
  3. 选择最终答案8

总结

开展提示工程,尤其是CoT类提示的设计,是一个将人类的问题解决思维模式“翻译”成模型能理解和执行的指令的过程。其强大之处在于:

  • 经济高效:极大降低了对昂贵标注数据和计算密集型微调的依赖。
  • 透明可解释:模型的推理过程得以展现,便于调试和信任。
  • 激发潜能:它不是“教”模型新知识,而是“引导”模型更好地运用其已有知识。

要掌握它,必须深入理解你的模型(它的优势和弱点)和你的任务,并秉持实验和迭代的精神。

基于Self-Consistency推理的、可直接使用的提示词样本案例

这些案例覆盖了数学、逻辑、常识和创意等多个领域,并展示了如何设计提示词来最大化激发模型的推理潜能。

核心提示词设计原则

在阅读案例前,请先理解两个核心设计原则:

  1. 强制逐步推理 (Force Step-by-Step Reasoning):使用类似“让我们一步步思考”“首先...其次...最后...”“推导过程:”等指令,明确要求模型展示其思维过程,而不是直接给出答案。
  2. 分离推理与答案 (Separate Reasoning from Answer):要求模型在最后以明确的格式(如“### 最终答案:”)给出答案,这便于程序自动从大量文本中提取和统计答案。

样本案例集

案例一:数学应用题(经典)

问题:

一个房间里有一些长凳。如果每条长凳坐4个学生,就有3个学生没地方坐。如果每条长凳坐5个学生,就会空出2条长凳。请问一共有多少个学生?

提示词 (Prompt):

请解决以下数学问题。请确保逐步展示你的推理过程,并在最后以“### 最终答案:”的格式框出最终答案。
问题:一个房间里有一些长凳。如果每条长凳坐4个学生,就有3个学生没地方坐。如果每条长凳坐5个学生,就会空出2条长凳。请问一共有多少个学生?
推理过程:让我们一步步思考。

*(模型会开始生成推理路径,如:“设长凳数量为b,学生数量为s。第一种情况:4b + 3 = s。第二种情况:5(b-2) = s…”)*

案例二:逻辑推理(谁说了谎?)

问题:

甲、乙、丙三人中有一个说了谎。
甲说:“乙在说谎。”
乙说:“丙在说谎。”
丙说:“甲和乙都在说谎。”
请问谁说了谎?

提示词 (Prompt):

你是一个逻辑推理专家。请分析以下问题,一步步地列出所有可能性,并找出唯一符合逻辑的结论。你的最终答案应该是一个名字。
问题: 甲、乙、丙三人中有一个说了谎。 甲说:“乙在说谎。” 乙说:“丙在说谎。” 丙说:“甲和乙都在说谎。”
逐步推理:

(模型可能会生成:“假设甲说谎…那么乙就说真话…丙也说真话,但丙的陈述与乙的陈述矛盾…因此假设不成立。再假设乙说谎…”)

案例三:常识与物理推理

问题:

如果把一个冰块放进一杯刚烧开的热水里,冰是融化得更快还是更慢?为什么?

提示词 (Prompt):

请用物理学原理逐步解释以下现象。你的推理应基于热传导和对流等概念。在最后,请总结你的答案。
问题:如果把一个冰块放进一杯刚烧开的热水里,冰是融化得更快还是更慢?为什么?
分步解释: 1.

(模型可能会生成:“1. 热水的温度远高于冰的熔点。2. 高温差会导致剧烈的热对流… 3. 这种对流加速了热量传递到冰表面的过程… 4. 因此,冰会融化得更快。”)

案例四:创意生成与评估(产品设计)

问题:

为经常出差的人设计一个创新的行李箱功能。

提示词 (Prompt):

请扮演一个产品设计师。你的任务是为新行李箱构思功能。请遵循以下步骤:
1. 分析目标用户(经常出差者)的核心痛点。
2. 基于每个痛点, brainstorm 1-2个解决方案。
3. 从这些方案中选择一个你认为最创新、最可行的。
4. 简要描述这个功能及其如何解决问题。
请开始你的构思过程:

(这个提示词引导模型进行“结构化”的创意推理,而不是天马行空。通过生成多个方案并选择,模拟了Self-Consistency中的“多路径生成与选择”过程)

案例五:复杂规划(项目计划)

问题:

我要组织一个为期一天的线上会议,有来自北美、欧洲和亚洲的5位演讲者。我应该考虑哪些关键因素来安排会议时间?

提示词 (Prompt):

你是一个经验丰富的项目经理。请为上述问题提供一个全面的计划。请按优先级列出关键考虑因素,并为每个因素提供你的推理和解决方案建议。

请按以下结构组织你的回答:

  • **关键因素 1:** [因素名称]

    • *推理:* [为什么这个因素重要?]

    • *建议:* [如何处理?]

  • **关键因素 2:** [因素名称]

    • *推理:* [为什么这个因素重要?]

    • *建议:* [如何处理?]

  • … (以此类推)

最终,请给出一个你认为最合理的会议时间窗口建议。

(这个提示词通过强制要求一个清晰的结构,引导模型进行多维度、深度的思考,每一条都是一个独立的“推理路径”,最终的综合建议就是“一致性答案”)

如何将这些提示词用于Self-Consistency技术?

  1. 批量生成:将上述任何一个提示词,输入到模型(如GPT-4)中多次(例如5-10次)。每次通过调整temperature(温度参数)或使用不同的随机种子,让模型生成多样化的推理路径和初步答案。
  • 例如:在API调用中设置n=5, temperature=0.7
  1. 提取答案:使用简单的规则(如正则表达式匹配### 最终答案:(.*))或关键字,从每一次的生成结果中提取出最终的答案(如“95个学生”、“乙在说谎”、“融化得更快”)。
  2. 多数投票:统计所有被提取出的答案,选择出现次数最多的那个作为最终答案。
  • 例如:5次生成中,有4次得出“95个学生”,1次得出“35个学生”,则最终答案确定为“95个学生”。

总结:一个万能提示词模板

你可以用这个模板来构建几乎所有问题的提示词:

请解决以下问题。请确保逐步推理,清晰地展示你的思考过程。在最后,请以“### 最终答案:”的格式单独一行给出你的最终答案。
问题:[在这里插入你的问题]
让我们一步步思考:

这个模板简单却极其强大,它明确指令模型分离“推理”和“答案”,是实施Self-Consistency技术的完美起点。

先进产业+物理人工智能


产业智能官AI-CPS

加入知识星球“产业智能研究院”:产业OT技术(自动化+机器人+工艺+精益)和
新一代IT技术
(云计算+物联网+区块链+大数据+人工智能)深度融合,在场景中构建“状态感知-实时认知-自主决策-精准执行-学习提升”的
物理人工智能(Physical AI)
;实现产业转型升级、DT驱动业务、价值创新创造的产业互联生态链。

物理人工智能(Physical AI)
作为第四次工业革命的核心驱动力,将进一步释放历次科技革命和产业变革积蓄的巨大能量,并创造新的强大引擎;重构设计、生产、物流、服务等经济活动各环节,形成从宏观到微观各领域的智能化新需求,催生新技术、新产品、新产业、新业态和新模式;引发经济结构重大变革,深刻改变人类生产生活方式和思维模式,实现社会生产力的整体跃升。

产业智能化技术分支用来的今天,从业者必须了解如何将**物理人工智能(Physical AI)**全面渗入整个公司、产品、业务等商业场景中,利用
物理人工智能(Physical AI)
形成数字化、网络化和智能化力量,实现行业的重新布局、企业的重新构建和焕然新生。

CSDN独家福利

最后,感谢每一个认真阅读我文章的人,礼尚往来总是要有的,下面资料虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/1 20:01:32

SGMICRO圣邦微 SGM2017-3.3XN5/TR SOT23-5 线性稳压器(LDO)

特性 工作输入电压范围:2.5V至5.5V 固定输出电压为2.8V和3.3V 输出电流:300mA 电流:77微A(TYR) 低压差:在300mA时为300mV(典型值)低噪声:30uVrms(典型值)(10Hz至100kHz)高PSRR:在1kHz时典型值为73dB 电流限制与热保护 使用小型封装陶瓷电容实现稳定运行关断供电电流:0.01uA(典型…

作者头像 李华
网站建设 2026/7/1 20:02:02

SGMICRO圣邦微 SGM2019-1.3YN5G/TR SOT-153 线性稳压器(LDO)

特性 工作输入电压范围:2.5V至5.5V 固定输出电压: 1.2V,1.5V,1.8V,2.5V,2.6V,2.8V,2.85V,3.0V,3.3V可调输出电压范围:1.2V至5.0V输出电压精度:25C时士2.5% 低输出噪声:30pVRMS(典型值) 低压差电压:在300mA时为270mV(典型值) 高PSRR:在1kHz时典型值为74dB 关断电流:0.01uA(典型值…

作者头像 李华
网站建设 2026/6/26 6:24:25

SGMICRO圣邦微 SGM2019-1.5YC5G/TR SC70-5 线性稳压器(LDO)

特性工作输入电压范围:2.5V至5.5V固定输出电压:1.2V、1.5V、1.8V、2.5V、2.6V、2.8V、2.85V、3.0V、3.3V可调输出电压范围:1.2V至5.0V输出电压精度:25C时为2.5%低输出噪声:30μV_RMS(典型值)低压…

作者头像 李华
网站建设 2026/7/1 20:33:23

Python 爬虫实战:User-Agent 随机切换防封禁

前言 在网络爬虫的开发与应用过程中,反爬机制是绕不开的核心问题。其中,基于请求头中 User-Agent 字段的校验是网站最基础也是最常用的反爬手段之一。固定的 User-Agent 会被服务器快速识别为爬虫程序,进而触发 IP 封禁、请求限制等反爬措施…

作者头像 李华
网站建设 2026/7/1 10:27:11

一、地理探测器:是什么?

Geo Detector是 用Excel编制的地理探测器软件, 可从以下网址免费下载:http://www.geodetector.org/。地理探测器方法简介地理探测器(Geographical Detector)是一种用于识别空间分异特征及其驱动因素的统计分析方法,最早由王劲峰等学者提出&am…

作者头像 李华