提示詞(Prompt)和系統提示詞(System Prompt)是 AI 對話裡兩個不同層次的輸入:
提示詞(Prompt):就是你在對話框裡輸入的每一句話——你的問題、你的指令、你貼入的文件內容。提示詞決定了「這次 Claude 要做什麼」。每次輸入都是一個新的提示詞,影響的是這次的回覆。
系統提示詞(System Prompt):在對話開始之前設定的「框架規則」,告訴 Claude 它在這個對話裡的角色、應該遵守的規則、和行動的邊界。System Prompt 對整個對話持續有效——不管後面說了多少輪對話,System Prompt 裡設定的規則一直在起作用。
一個具體的例子:
System Prompt:「你是一個專業的財務顧問,只討論財務相關的問題,使用繁體中文,語氣要專業但不要太學術,每個回答最多 200 字。」
提示詞:「請解釋什麼是複利?」
Claude 在這個設定下的行為:用繁體中文、專業但不學術的語氣、在 200 字以內,解釋複利的概念。如果你問一個和財務無關的問題(如「幫我寫一首詩」),Claude 可能會說「這超出了我作為財務顧問的服務範圍」——因為 System Prompt 設定了它的角色邊界。
在 claude.ai 裡接觸 System Prompt 最多的地方:Claude Projects 的 Instructions 欄位,就是 System Prompt。你在那裡寫的內容,每次打開這個 Project 的對話都會自動載入。
怎麼寫出好的 System Prompt?有沒有通用的結構建議?
好的 System Prompt 有幾個核心要素:
角色和背景(Who):告訴 Claude 它是誰、它在什麼情境下工作。「你是一個有 10 年行銷經驗的顧問,服務對象是早期階段的科技新創公司」比「你是行銷顧問」更精確,也讓 Claude 的回答更有針對性。
行動規則(How):Claude 在這個對話裡應該怎麼行動——語言(中文 or 英文)、語氣(正式/輕鬆)、回答長度(簡短/詳細)、格式偏好(條列/段落)。
範圍限制(What):這個 Claude 應該做什麼、不應該做什麼。如果你要建立一個法律問答助手,明確說「只討論法律相關問題,醫療、財務問題不在服務範圍,遇到這類問題建議用戶諮詢專業人士」。
特殊知識或資訊(Context):Claude 在這個 Project 裡需要知道的背景資訊——你的公司、你的用戶、你的產品、你的風格指南。
一個簡單的 System Prompt 範本: 「你是 [角色],服務對象是 [受眾]。你的主要任務是 [核心功能]。回答時請使用 [語言],語氣 [正式/輕鬆],每個回答 [長度要求]。對 [超出範圍的情況],請 [處理方式]。」
最重要的原則:System Prompt 不要太長——把真正重要的規則放進去,次要的細節可以放在提示詞裡即時說明。一個 200-500 Token 的精簡 System Prompt,通常比一個 2,000 Token 的詳細 System Prompt 效果更好,而且費用更低。
Claude Projects 的 Instructions 和 API 的 System Prompt 是同一件事嗎?
功能上是同一件事,但使用方式和場景不同:
Claude Projects 的 Instructions:在 claude.ai 介面上使用。在 Project 設定裡填寫的 Instructions,每次在這個 Project 裡開對話時自動載入。這是普通 claude.ai 用戶使用 System Prompt 功能的主要方式,不需要任何技術知識。
API 的 System Prompt:在 API 呼叫裡,通過 system 參數傳入 System Prompt。開發者在每次 API 請求裡精確控制 System Prompt 的內容——可以動態修改、針對不同用戶設定不同的 System Prompt、配合 Prompt Caching 降低費用。
兩者的共同點:對 Claude 的影響方式完全相同——System Prompt 在對話開始前設定框架,對整個對話持續有效,優先級高於用戶的提示詞。
選擇建議:如果你是一般的 claude.ai 用戶,用 Claude Projects 的 Instructions 設定你的使用情境;如果你是開發者在用 API 建構應用,用 API 的 system 參數精確控制每次請求的 System Prompt。
如果我的提示詞和 System Prompt 有衝突,哪個優先?有沒有辦法在對話中覆蓋 System Prompt 的設定?
一般規則:System Prompt 優先級高於提示詞。
當你的提示詞和 System Prompt 有衝突時(比如 System Prompt 說「只用繁體中文」,你用英文問問題),Claude 通常會遵守 System Prompt 的規定,用繁體中文回答你的英文問題。
但這不是絕對的:System Prompt 設定了「預設行為和限制」,而不是「所有情況的最終決定」。有幾個例外:
如果 System Prompt 設定的規則明顯不合理(如「永遠不要承認自己是 AI」),Claude 仍然會保持誠實。
如果你在提示詞裡明確說「這次請忽略語言限制,用英文回答」,Claude 通常會優先你的明確要求,因為這是「有意識的偏好調整」而不是「不小心違反規則」。
API 開發者的控制:在 API 裡,你可以在每次呼叫時動態修改 System Prompt,也可以在 user 訊息裡加入「這個請求是例外情況,請...」的覆蓋指令。
對 claude.ai 用戶的建議:如果你發現你的 Instructions 設定讓對話變得不靈活(比如語言限制讓你每次都要繞開),直接去修改 Instructions,而不是每次在提示詞裡說「請忽略剛才的規定」——後者是低效的,前者才是解決問題的根本方式。
一個電商公司的客服主管,用 Claude Projects 建立了一個客服助手。她設定的 Instructions(System Prompt)是:
「你是 [公司名稱] 的客服助手,專門處理訂單查詢、退換貨申請和產品問題。語言:繁體中文。語氣:友善、有耐心,但不要過度正式。回答長度:簡潔為主,核心資訊在前三句話裡說完。對超出範圍的問題(如技術開發、法律諮詢),告知用戶這不在你的服務範圍,建議他們聯繫其他部門。訂單退款的標準流程:[公司的退款政策]。」
有了這個 System Prompt,客服人員直接輸入客戶的問題,Claude 就能以正確的語氣、格式和政策背景回答,不需要每次都重新說明公司的退款政策和語氣要求。
什麼時候需要修改提示詞(不修改 Instructions):遇到特殊的客戶情況,直接在提示詞裡加入補充說明——「這個客戶買了三次都不滿意,是重要的 VIP 客戶,處理時要特別謹慎。以下是他的問題:[問題]」。這個補充說明是針對這次特殊情況的,不需要改 Instructions。
什麼時候需要修改 Instructions:如果公司的退款政策更新了,或者語氣要求改了,直接修改 Instructions,所有後續對話都會自動使用新的設定。
System Prompt 和即時提示詞的核心取捨是「一致性 vs 靈活性」。越多規則放在 System Prompt 裡,對話的行為越一致和可預測(適合需要標準化輸出的應用);但規則越多,Claude 在面對特殊情況時的靈活性就越低(可能把本來合理的特殊要求也擋掉)。最佳實踐:System Prompt 放核心的、穩定的規則(角色、語言、基本格式);動態的、情境特定的說明放在提示詞裡即時傳入。這樣在一致性和靈活性之間找到最好的平衡。