11 Prompt 工程進階:Few-shot 與 Chain-of-Thought
前10節總結 & 后10節展望
在前 10 節,我們已經完成了 AI 產品經理的入門階段:
- 1–3:理解了大模型的基本概念、Token、Prompt 基礎;
- 4–5:體驗了本地部署與 API 調用;
- 6–8:掌握了 RAG 技術鏈路(Embedding + 向量數據庫),讓模型學會查資料;
- 9:學會了評估 AI 產品的效果;
- 10:寫出了第一份 AI 產品 PRD。
可以說,這 10 節我們已經完成了從 “知道 AI 是什么” → “能跑起來一個 Demo” → “能寫出產品文檔” 的過程。
接下來的 第 11–20 節,我們進入 進階階段:
- 深入 Prompt 工程(Few-shot、Chain-of-Thought、模板化);
- 構建完整的 RAG 系統,并做優化(檢索、向量庫、評估平臺);
- 體驗多輪對話、流式輸出、Web Demo;
- 學習如何把技術和 具體行業場景(教育、電商、金融) 結合。
👉 今天(第 11 節)是第二階段的開篇,我們要學習的內容是 Prompt 工程進階技巧。
為什么要學習 Prompt 工程?
在第一階段的實驗中,你可能發現:
- 有時候模型回答很棒,但有時候答得完全跑偏;
- 問題稍微復雜一點,答案就不靠譜;
- 同一個問題,不同次回答可能差別很大。
這說明,大模型的表現 高度依賴 Prompt(提示詞)。
就像和人交流,如果你說得含糊,對方可能亂猜;但如果你舉例說明、逐步解釋,對方往往理解得更準確。
👉 Prompt 工程就是學習“如何和模型對話”,讓它表現得更穩定、更符合需求。
今天我們重點看兩種方法:
- Few-shot(少樣本提示):通過給模型一些“示范”,讓它模仿;
- Chain-of-Thought(思維鏈提示):要求模型“逐步推理”,而不是只給最終答案。
一、核心概念(零基礎友好解釋)
1. Zero-shot vs Few-shot
- Zero-shot(零樣本):不給示例,直接問問題。
- Few-shot(少樣本):先給幾個示例,讓模型模仿示例風格或推理方式。
2. Chain-of-Thought(思維鏈)
- 直譯:讓模型“展示推理過程”。
- 作用:尤其適合邏輯推理、數學題、復雜業務流程,可以顯著提升準確率。
二、實踐:對比實驗
Python 示例
from openai import OpenAIclient = OpenAI(base_url="http://127.0.0.1:11434/v1", api_key="ollama")def ask(prompt):resp = client.chat.completions.create(model="deepseek-r1",messages=[{"role": "user", "content": prompt}],temperature=0.2)return resp.choices[0].message.content# Zero-shot
q1 = "小明有12個蘋果,給了朋友3個,然后又買了5個,現在有多少個蘋果?"
print("Zero-shot 回答:")
print(ask(q1))# Few-shot
q2 = """示例:
Q: 小紅有10個橙子,吃了2個,還剩多少?
A: 她還剩 8 個橙子。Q: 小王有7支筆,送人2支,還剩多少?
A: 他還剩 5 支筆。現在請回答:
Q: 小明有12個蘋果,給了朋友3個,然后又買了5個,現在有多少個蘋果?
A:"""
print("\nFew-shot 回答:")
print(ask(q2))# Chain-of-Thought
q3 = """請逐步推理:
小明有12個蘋果,給了朋友3個,然后又買了5個,現在有多少個蘋果?"""
print("\nChain-of-Thought 回答:")
print(ask(q3))
預期結果
在學術定義中,三種方式本應區別如下:
- Zero-shot:只給結果
- Few-shot:模仿示例,風格更統一
- CoT:逐步推理,展示步驟
特別說明:為什么 DeepSeek R1 三種方式都輸出了推理過程?
如果你用 DeepSeek R1 跑實驗,可能會發現:
- Zero-shot / Few-shot / CoT 的回答里都有
<think>
部分; - 模型總是自動展示推理過程。
這是因為:
- DeepSeek R1 是“推理增強模型”,被設計成默認生成思維鏈,即使用戶沒有要求。
- 這是它的特性,不代表 Zero-shot / Few-shot / CoT 的概念無效。
- 在代碼里,你可以通過正則去掉
<think>
部分,得到更接近“標準差異”的對比結果。
👉 換句話說:概念依然正確,但模型行為會因實現不同而有所差異。
三、產品經理思考
1. 為什么 PM 要懂 Few-shot 和 CoT?
- 交互設計:決定用戶是“一問一答”,還是用模版(Few-shot)。
- 控制風格:通過 Few-shot 可以固定回答口吻(禮貌、專業、簡潔)。
- 保證準確率:涉及邏輯推理的任務,必須要求模型展示思維鏈。
2. 模型行為差異要注意
-
有些模型簡潔(GPT-3.5),Zero-shot 只給答案。
-
有些模型“話多”(DeepSeek R1),會自動展示推理過程。
-
在 PRD 中要寫清楚:
- 是否要展示推理過程給用戶?
- 是否只在后臺保留(便于調試)?
- 是否需要清理
<think>
標簽,讓用戶只看到最終答案?
3. 案例
- 教育產品:學生問數學題 → 用 CoT 提示,強制展示步驟。
- 客服機器人:用 Few-shot 保證禮貌統一。
- 企業助手:可以保留
<think>
作為調試日志,但前端只展示結果。
四、小結
- Few-shot:通過示例提升模型模仿能力。
- Chain-of-Thought:通過逐步推理提升邏輯準確性。
- DeepSeek R1 默認輸出思維鏈,這是它的特性,不影響我們理解概念。
- PM 角度:Prompt 工程是“產品體驗的調節閥”,不同模型行為差異本身也是產品設計的考量點。