# 為什麼對 AI 說「加油」，答案會變好？

> 一句「我們一步一步想」為什麼能讓 AI 算對數學？用交大第 2 章看懂零樣本、少樣本、思維鏈與自我一致性。

- 作者：Michael Kuo（https://mk-ai-notes.pages.dev/about/）
- 發布日期：2026-11-02（2026-11-02T20:01:00+08:00）
- 原文網址：https://mk-ai-notes.pages.dev/posts/ep01-prompting/
- 分類：一人公司工作流＋學習系列（https://mk-ai-notes.pages.dev/category/workflow/）
- 系列：動手學大模型 12 問 第 2 篇／共 12 篇（https://mk-ai-notes.pages.dev/series/dive-into-llms/）
- 標籤：提示詞、思維鏈、LLM
- 閱讀時間：約 9 分鐘（約 1451 字）
- 參考來源：https://github.com/Lordog/dive-into-llms/tree/main/documents/chapter2

![為什麼對 AI 說「加油」，答案會變好？](https://mk-ai-notes.pages.dev/og/ep01-prompting.png)

---

## 一句話回答

讓答案變好的不是「加油」這兩個字的情緒，而是你的話改變了模型**接下來要寫什麼**。像「Let's think step by step（我們一步一步想）」這種句子，會引導模型先寫出中間推理步驟再給答案，多步驟的題目因此比較容易算對。這種技巧叫做思維鏈（Chain-of-Thought, CoT）。

## 為什麼值得知道

每天用 ChatGPT、Claude、Gemini 的人，其實都在做「提示工程（Prompt Engineering）」，只是不一定知道原理。懂了之後：

- 你會知道什麼時候該**給範例**、什麼時候該**要它先列步驟**。
- 遇到算錯、漏條件的回答，你有方法調整，而不是一直重問。
- 開發者把大模型接進產品時，提示寫法直接影響正確率和成本。

交大這章的導讀標題就叫「AI 在線求鼓勵？」，意思是：模型有些答案錯得離譜，但換個問法，它可能就答對了。

## 白話原理

大模型的本質是「根據前面的文字，預測下一段文字」。所以你給它的開頭，等於替它鋪好了路。

### 零樣本 vs. 少樣本

| 方式 | 你給什麼 | 比喻 |
| --- | --- | --- |
| 零樣本提示（Zero-shot） | 只有指令，例如「把英文翻成法文」 | 直接交代新同事做事 |
| 少樣本提示（Few-shot） | 指令＋幾組「題目→答案」範例 | 先給新同事看三份做好的範本 |

少樣本的好處是模型能從範例學到**格式**和**任務邊界**。例如教程裡的情感分析例子，範例示範了「挑出評論中的面向詞，再標正面或負面」，模型就會照同樣格式輸出。

### 思維鏈：把一大步拆成很多小步

人解應用題時會先寫算式，而不是直接報數字。思維鏈就是讓模型也這樣做：

- **少樣本思維鏈**：範例裡不只放答案，還放「先算什麼、再算什麼」的過程，模型就會模仿著寫出步驟。
- **零樣本思維鏈**：連範例都不給，只在題目後面加一句「Let's think step by step」。這句話之所以有效，是因為它讓模型的下一段文字變成「推理過程」，而不是急著給一個數字。

所以，「加油」本身沒有魔法；真正起作用的，是讓模型「先想再答」的那句引導。

### 程式思維鏈（PoT）

另一種做法叫程式思維鏈（Program-of-Thought, PoT）：請模型把解題過程寫成 Python 程式，最後由電腦執行算出答案。模型負責「列式」，計算交給程式，就比較不會在乘除上粗心出錯。

### 自我一致性：多想幾次，投票決定

自我一致性（Self-Consistency）是把溫度（temperature）設成大於 0，例如 0.7，讓同一題跑好幾次、得到好幾條不同的推理路徑，最後選**出現最多次的答案**。像考試時把一題用三種方法算，三次都得到 24，你就比較放心。

## 教程裡實際做了什麼

這章用的是**雲端 API**，不需要自己的 GPU。步驟大致如下：

1. **申請 API 權限**：原文列了通義千問、智譜 AI、OpenAI 等，任選一家開通，拿到 API Key。
2. **兩種呼叫方式**：先在網頁的模型體驗介面試，再用 Python 呼叫；示範了一般呼叫和串流（streaming）輸出，範例模型是 `qwen-turbo`。
3. **提示學習**：用機器翻譯（英翻法）和面向情感分析兩個任務，對照零樣本和少樣本的寫法。
4. **思維鏈**：用小學數學應用題資料集 GSM8K 的題目，對照自然語言思維鏈（CoT）和程式思維鏈（PoT），各有零樣本、少樣本版本。
5. **觀察與思考**：
   - 把少樣本範例改成**錯的答案**，結果會怎樣？（引用 ACL 2023 的 Understanding-CoT 研究）
   - 用自我一致性多次採樣、投票，看正確率能不能提升（ICLR 2023 論文）。
6. **進階（選做）**：Auto-CoT 自動產生範例、ReAct 結合推理與行動等；另有用 R-Judge 判斷代理操作是否有風險的安全應用。

硬體：能上網、能跑 Python 即可。API 費用依各家方案，原文提到開通後會獲贈試用額度。

## 動手試試

不寫程式也能試，打開你常用的聊天 AI，用同一題比較三種問法：

```text
題目：10 個朋友一起玩線上遊戲，7 個人下線了。
留下來的每個人有 8 條命，他們總共有幾條命？

A. 直接問題目
B. 題目後面加：「請一步一步推理，最後再給答案。」
C. 同一個 B 問法，開三個新對話各問一次，看答案是否一致
```

（改寫自教程的 GSM8K 範例，答案是 3 × 8 = 24。）

要寫程式的話：下載原 repo，打開第 2 章的筆記本，把 API Key 換成你自己的。改用其他家的官方 SDK 也行，邏輯相同。

## 常見誤解

- **「AI 有情緒，所以要鼓勵它」**：模型沒有情緒需求。有效的是提示改變了輸出的結構，例如先寫推理。
- **「每題都加一步一步想就對了」**：簡單的查詢、翻譯不一定需要，反而變長、變慢、多花 token。思維鏈對多步驟推理比較有幫助。
- **「推理寫出來了，答案就一定對」**：步驟看起來合理，數字仍可能算錯，重要結果還是要自己驗算，或用程式思維鏈交給電腦算。
- **「範例一定要完美」**：Understanding-CoT 研究發現，範例裡的推理就算有錯，效果也未必大幅下降，範例跟問題是否相關、步驟是否連貫，影響更大。但這不代表可以亂給範例。

## 延伸閱讀

- 第 2 章原文：https://github.com/Lordog/dive-into-llms/tree/main/documents/chapter2
- GSM8K 資料集：https://github.com/openai/grade-school-math
- Auto-CoT：https://github.com/amazon-science/auto-cot
- 提示技術整理：https://www.promptingguide.ai/

> 本文整理自上海交通大學《動手學大模型》第 2 章，原教程：https://github.com/Lordog/dive-into-llms/tree/main/documents/chapter2 。內容由 MK 以自己的話解說，如有錯誤歡迎留言指正。

---

本系列整理自上海交通大學《動手學大模型》公益教程（https://github.com/Lordog/dive-into-llms），以自己的話解說，非官方內容。

引用本文請附原文網址：https://mk-ai-notes.pages.dev/posts/ep01-prompting/（作者：Michael Kuo）
