课程目录

第 2 课 · 动手学大模型(上海交大)

Prompt Learning and Chain-of-Thought

提示学习与思维链:从 API 调用到推理分解

上一章在本地调模型参数,这一章换一条路:不动参数,只动输入。教程从拿到 API Key 开始,讲到零样本/少样本提示,再讲思维链,最后落到一个安全场景的应用。

学习目标

  • 熟悉大语言模型的调用方式,能在 GUI 界面和命令行两种形态之间切换。
  • 掌握零样本提示和少样本提示的写法与适用边界。
  • 了解思维链推理技术,能区分自然语言思维链和程序思维链。

核心概念

零样本提示只给指令,比如「Translate English to French: cheese =」。少样本提示在指令后补几个范例,让模型从格式里推断任务。教程用机器翻译和方面级情感分析两个任务做对照:情感分析这类输出格式复杂的任务,少样本带来的收益明显大于翻译。

思维链(CoT) 的基本思路是模拟人的思考过程,把多步推理拆成一系列中间步骤。零样本 CoT 只要在提问后加一句「Let's think step by step」;少样本 CoT 则把带推理过程的范例喂进去。程序思维链(PoT) 更进一步,让模型不要直接算,而是写一个 solver() 函数,把算术交给解释器。评测常用 GSM8K 小学数学题数据集。

自洽性(self-consistency) 是配套技巧:把 temperature 调到 0.7 之类的非零值,同样的输入采样多次,得到多条推理路径,最后取出现次数最多的答案。这条来自 ICLR 2023 的做法,几乎不改提示词就能提升准确率。

实践步骤

  1. 任选一家开通服务拿 API Key:通义千问、智谱 AI、OpenAI 都可以,国内接口不需要额外网络条件。
  2. 先在模型体验中心用 GUI 试提示词,跑通了再转命令行,命令行才适合做规模化实验。
  3. 同一道 GSM8K 题目分别用零样本、零样本 CoT、少样本 CoT、PoT 各跑一遍,记录答案与中间过程。
  4. 打开流式调用,观察长推理的输出节奏。
  5. 做自洽性实验:temperature 设 0.7,同一提示采样 10 次,统计答案分布。

常见误区

  • 以为范例只要格式对就行。 教程留了一道观察题:把少样本里的答案故意改错,结果会怎么变?相关研究(ACL 2023)说明范例的正确性与格式各自贡献多少,值得亲手验一遍。
  • 把 CoT 当万能开关。 短答案任务加了 CoT 反而更啰嗦、更容易跑偏。
  • 只用一次采样下结论。 温度非零时单次结果的方差很大,比较两种提示词至少要各采样多次。

动手练习

选 20 道 GSM8K 题,做一张四列表格:零样本、零样本 CoT、少样本 CoT、PoT,逐题记录对错。然后把少样本 CoT 里的一个范例答案改成错的,重跑同样 20 道题,比较准确率的变化,并写下你对「范例到底在教模型什么」的判断。

要点回顾

提示工程是最便宜的能力放大器:不需要显卡,不需要训练,改几行输入就能看到差别。但它的收益必须靠对照实验证明,而不是靠感觉。CoT 解决的是推理步骤的分解,自洽性解决的是单次采样的不稳定,两者常常一起用。教程还顺手指向了 Auto-CoT、SumCoT、CRITIC、ReAct 等进阶工作,作为下一步的阅读线索。

参考来源

  • 上海交通大学《动手学大模型》系列编程实践教程,第二章「提示学习与思维链」:documents/chapter2,核验日期:2026-09-06。