Claude Prompt Engineering 完整指南:從基礎技巧到 Extended Thinking Tips 的全面解析
Prompt Engineering 是從 Claude 獲得最佳輸出的核心技能。Anthropic 的文件將技巧從最廣泛有效到最專門化排列,讓開發者能夠系統性地改善 prompt 品質。本文將逐一解析八大核心技巧,以及 Extended Thinking 模型的專屬提示策略。
前置條件
在開始 Prompt Engineering 之前,你應該已經具備:
- 對使用案例成功標準的明確定義
- 一些能夠基於這些標準進行經驗性測試的方法
- 一個想要改進的初稿 prompt
如果還沒有,建議先建立評估框架。並非所有問題都適合用 Prompt Engineering 解決,有時候選擇不同的模型對延遲和成本的改善更有效。
Prompting vs Fine-tuning
Prompt Engineering 在大多數情況下優於 Fine-tuning:
- 資源效率高,只需要文字輸入
- 成本效益更好
- 模型更新時不需要重新訓練
- 可以快速迭代和實驗
- 不需要大量標記資料
- 保持模型的通用知識
- 透明可讀,便於理解和除錯
一、Be Clear and Direct:清晰直接
這是最基礎也最重要的技巧。把 Claude 想像成一個聰明但完全沒有背景知識的新員工。
核心原則:
- 提供背景資訊:任務用途、目標受眾、工作流程中的位置、成功的樣貌
- 明確說明你要 Claude 做什麼
- 以有序的步驟提供指令(編號列表或要點)
黃金法則:把你的 prompt 給一個對任務幾乎沒有背景知識的同事看。如果他們感到困惑,Claude 可能也會。
範例對比
模糊 prompt:"請從這些客戶回饋中移除所有個人識別資訊。"
清晰 prompt:
你的任務是為季度審查匿名化客戶回饋。
指令:
1. 將所有客戶姓名替換為 "CUSTOMER_[ID]"
2. 將電子郵件地址替換為 "EMAIL_[ID]@example.com"
3. 將電話號碼遮蔽為 "PHONE_[ID]"
4. 如果訊息提到特定產品名稱,保留不動
5. 如果沒有找到 PII,逐字複製
6. 僅輸出處理後的訊息,以 "---" 分隔
二、Use Examples (Multishot Prompting):使用範例
提供 3-5 個精心設計的範例可以大幅提升 Claude 輸出的準確度、一致性和品質。
有效範例的要素
- 相關性:範例要反映實際使用案例
- 多樣性:涵蓋邊緣案例和挑戰,足夠多樣化避免 Claude 拾取非預期的模式
- 清晰度:使用
<example>標籤(多個範例嵌套在<examples>中)
沒有範例時,Claude 可能不會為每個類別列出多個選項,並包含冗長的解釋。有了範例,Claude 會精確匹配你期望的輸出格式。
三、Let Claude Think (Chain of Thought):讓 Claude 思考
對於複雜任務(研究、分析、問題解決),給 Claude 思考空間可以大幅提升表現。
三種 CoT 等級
| 等級 | 方法 | Context 消耗 | 效果 |
|---|---|---|---|
| Basic | "Think step-by-step" | 低 | 缺乏如何思考的指引 |
| Guided | 列出具體思考步驟 | 中 | 缺乏結構化分離 |
| Structured | 用 <thinking> 和 <answer> 分離推理和答案 | 高 | 最佳效果 |
何時使用 CoT
適合人類也需要思考的任務:複雜數學、多步驟分析、複雜文件撰寫、多因素決策。
不適合所有任務,增加的輸出長度會影響延遲。
核心提示:永遠讓 Claude 輸出其思考過程。不輸出思考過程就不會發生思考。
四、Use XML Tags:使用 XML 標籤
當 prompt 包含多個組件(context、指令、範例)時,XML 標籤能讓 Claude 更準確地解析。
優勢
- 清晰度:明確分離 prompt 的不同部分
- 準確度:減少 Claude 誤解 prompt 部分的錯誤
- 靈活性:輕鬆找到、添加、移除或修改 prompt 部分
- 可解析性:讓 Claude 在輸出中使用 XML 標籤,便於後處理提取
最佳實踐
- 保持一致:在 prompt 中使用相同的標籤名稱,並在指令中引用這些標籤
- 巢狀標籤:用
<outer><inner></inner></outer>表示層級關係 - 進階技巧:結合 XML 標籤和其他技巧(
<examples>用於 multishot、<thinking>和<answer>用於 CoT)
沒有「最佳」的 XML 標籤名稱,但建議標籤名稱要與包含的資訊語義相關。
五、Give Claude a Role (System Prompts):賦予角色
透過 system prompt 為 Claude 設定角色和背景,引導其回應風格和深度。
核心概念:
- System prompt 在對話開始前設定 Claude 的行為基線
- 可以定義角色、專業知識、語氣、回應格式等
- 比在每次 user message 中重複指定更高效
六、Chain Complex Prompts:鏈接複雜提示
將複雜任務分解為多個步驟,每一步的輸出作為下一步的輸入。
適用場景:
- 需要多個不同類型的處理步驟
- 前一步的品質影響後一步
- 需要在中間步驟進行品質檢查
七、Long Context Tips:長 Context 技巧
處理大量 context 時的最佳化策略:
- 將最重要的資訊放在 prompt 的開頭或結尾
- 使用 XML 標籤明確標記不同的資訊區塊
- 給 Claude 明確指令指出要從 context 中提取什麼
- 對於非常長的文件,考慮分段處理
八、Extended Thinking Tips:延伸思考專屬技巧
Extended Thinking 模式讓 Claude 在回應前進行深度推理,適合複雜問題。以下是專屬的最佳化策略。
優先使用通用指令,再逐步細化
Claude 在 Extended Thinking 模式下,通常對高層級指令的反應比逐步規定性指引更好。模型的創造性可能超過人類規定最佳思考過程的能力。
不要:
Think through this math problem step by step:
1. First, identify the variables
2. Then, set up the equation
3. Next, solve for x
要:
Please think about this math problem thoroughly and in great detail.
Consider multiple approaches and show your complete reasoning.
Try different methods if your first approach doesn't work.
先從通用指令開始,閱讀 Claude 的 thinking 輸出,再迭代提供更具體的指令來引導其思考。
Multishot Prompting 與 Extended Thinking
在 Extended Thinking 場景中,可以使用 <thinking> 或 <scratchpad> 標籤在 few-shot 範例中展示規範的思考模式。Claude 會將這些模式泛化到正式的 Extended Thinking 過程。
最大化指令遵循
Extended Thinking 模式顯著提升了指令遵循能力。模型通常:
- 在 thinking block 中推理指令
- 在回應中執行這些指令
要最大化效果:明確具體、複雜指令分為編號步驟、給予足夠的 thinking budget。
利用 Thinking 輸出進行除錯
可以用 Claude 的 thinking 輸出來除錯其邏輯。注意事項:
- 不要將 Claude 的 thinking 輸出回傳到 user text block 中(不會改善效能,可能劣化結果)
- 不允許預填 Extended Thinking
- 手動修改模型 thinking block 後的輸出文字可能導致模型混亂
長輸出和深度思考
- 同時增加 thinking 長度上限和明確要求更長的輸出
- 對於超長輸出(20,000+ 字),先要求附帶字數的詳細大綱,再讓 Claude 按大綱索引段落
讓 Claude 驗證自己的工作
使用簡單的自然語言提示來改善一致性和減少錯誤:
- 要求 Claude 在宣布任務完成前用簡單測試驗證
- 指示模型分析前一步是否達到預期結果
- 對於程式碼任務,要求 Claude 在 thinking 中執行測試案例
Write a function to calculate the factorial of a number.
Before you finish, please verify your solution with test cases for:
- n=0, n=1, n=5, n=10
And fix any issues you find.
技術考量
- Thinking tokens 最低預算為 1024 tokens,從最低開始逐步增加
- 超過 32K thinking budget 的工作負載建議使用 Batch Processing
- Extended Thinking 在英文表現最佳,最終輸出可以是任何語言
- 如果需要低於最低預算的思考,使用標準模式搭配傳統 CoT 提示
Prompt Generator
Claude Console 內建由 Claude Opus 4.1 驅動的 prompt 生成器。描述你想要的任務,它會自動生成高品質的 prompt,包含適當的變數語法。
總結
Prompt Engineering 的八大技巧從最基礎到最進階,形成了一個完整的最佳化工具箱。清晰直接是基礎中的基礎,Multishot Prompting 和 Chain of Thought 適合大多數場景,XML Tags 在複雜 prompt 中不可或缺,而 Extended Thinking Tips 則為深度推理任務提供了專屬策略。重要的是,這些技巧可以組合使用:用 XML 標籤結構化 prompt、用範例展示期望輸出、用 CoT 引導思考,就能建構出效能卓越的 prompt。