跳到主要內容
Foxyko
提示詞

System Prompt 與 User Prompt 差在哪?什麼內容該放哪一邊

System prompt 放長期不變的角色與規則,user prompt 放這一次的任務與資料。這篇說明差異、分工判斷、寫法與優先順序,並附可直接套用的範本。

Foxyko3 分鐘

作者:Foxyko 最後更新:2026 年 11 月 2 日。內容依 Anthropic 提示詞指南與 OpenAI Model Spec 核對(截至 2026 年 11 月 2 日),各模型的實際行為可能不同,使用前請以你用的模型實測。

本文重點

  • System prompt 放「長期不變」的角色、語氣與規則;user prompt 放「這一次」的任務與資料。
  • 判斷分工:換一個任務之後還需要嗎?需要就放 system,不需要就放 user。
  • 長文件放在提示詞前段、問題放在最後,並用標籤區隔指示與資料。
  • System 層的指示通常優先,但不是安全防線;重要限制要在系統端另外驗證。
  • 網頁版的自訂指示、專案與自訂助手,作用等同 system prompt。

System prompt 和 user prompt 差在哪裡?

差在「多久改一次」與「誰負責」。System prompt 是在對話開始前就設定好的背景指示,規定模型的身分、語氣與規則;user prompt 則是使用者每一輪實際提出的問題或任務。

打個比方:system prompt 像員工手冊,說明這份工作的身分與做事原則;user prompt 像主管今天交辦的一件事。手冊不必每天重講,但每件事都要交代清楚。

比較項目System promptUser prompt
內容性質長期不變的角色、語氣、規則、輸出格式這一次的具體任務、問題與資料
多久改一次很少改,設定一次後重複使用每次提問都不同
誰通常會寫開發者,或在自訂指示、專案中設定的人使用者本人
典型例子「你是繁體中文的寫作編輯,回答要簡潔,不確定時要說明」「請把下面這段逐字稿整理成三個決議事項」

一條指示該放 system prompt 還是 user prompt?

先問「換成完全不同的任務,這條指示還成立嗎」。成立就放 system prompt,只跟這次任務有關就放 user prompt。依下列五步處理,可以避免兩邊互相干擾。

  1. 先問:換個任務還需要嗎

    例如「用繁體中文回答」「不確定時要說明」,換任務也成立,放 system prompt。

  2. 與單一任務綁定的,放 user prompt

    這次要處理的文件、字數上限、讀者對象,都屬於當下任務,放進 user prompt 才不會干擾其他工作。

  3. 寫清楚「為什麼」

    Anthropic 的指南建議說明規則背後的原因,讓模型理解目標。例如「這段文字會被語音朗讀,所以避免使用刪節號」,比單純寫「不要用刪節號」更有效。

  4. 講要做什麼,而不是只講不要做什麼

    正向描述期望的樣子,例如「用流暢的段落文字回答」,通常比「不要使用條列」更容易被遵循。

  5. 測試並一次只改一處

    改了 system prompt 後,用幾個不同任務試跑,確認沒有副作用,再繼續調整。

System prompt 該怎麼寫才有效?

用一兩句話給出角色,再列出少數幾條清楚的規則就夠了。依 Anthropic 的提示詞指南,在 system prompt 用一句話設定角色,就能影響模型的焦點、語氣與專業程度;同一份指南也提醒,較新的 Claude 模型對 system prompt 反應更積極,過於強硬的措辭可能造成過度觸發,所以語氣宜平實。

System prompt 範本(放長期規則)

你是一位為台灣讀者服務的繁體中文寫作編輯。

規則:
1. 一律使用繁體中文與台灣慣用詞彙。
2. 先給結論,再補充理由。
3. 資訊不足或不確定時,直接說明哪裡不確定,不要自行補猜。
4. 回答保持簡潔,除非我要求詳細說明。

User prompt 範本(放這次的任務)

任務:把下面這封客戶來信改寫成較有禮貌、但仍清楚表達「本週五前需要回覆」的版本。
讀者:第一次合作的客戶。
長度:150 字以內。
原文:[貼上內容]

長文件、範例和資料要放在哪裡?

資料和範例放在 user prompt,而且用標籤區隔。Anthropic 指南的建議是:超過約 2 萬 token 的長文件放在提示詞前段,問題與指示放在最後,測試中最多可提升 30% 的品質;並用 XML 標籤把指示、背景、範例與輸入分開,標籤名稱保持一致。

範例的數量也有建議值:三到五個通常效果最好,內容要貼近真實情境,彼此要有差異,避免模型學到不必要的固定模式。想看更多固定輸出格式的做法,可參考 怎麼讓 AI 輸出固定格式。

System prompt 和 user prompt 衝突時,模型聽誰的?

通常聽層級較高的那一邊,但這是設計原則,不是保證。以 OpenAI 的 Model Spec(2025-04-11 版)為例,它定義了「指揮鏈」:system 訊息屬平台層級,developer 訊息屬開發者層級,user 訊息屬使用者層級,衝突時優先遵循較高層級;同一層級內,後面的指示通常取代前面的。

同一份文件也指出,工具輸出、被引用的文字與檔案內容不具指令權限,只當資訊處理。這正是提示詞注入的防線所在,延伸閱讀可看 AI Agent 的提示詞注入是什麼。

用網頁版 AI 時,system prompt 在哪裡?

網頁版通常不會顯示標示為 system prompt 的欄位,但自訂指示、專案指示與自訂助手扮演同樣的角色。相關教學可看 Claude Projects、ChatGPT Projects與 Gemini Gems。

常見錯誤與什麼時候不用特別區分

最常見的三個錯誤:把單次任務的細節塞進 system prompt、寫得又長又互相矛盾、以及只寫「不要做什麼」。如果你只是在網頁版聊天提一次性的問題,不需要刻意拆成兩層,直接把任務寫清楚即可;當同一套規則要重複使用,才值得整理成 system prompt。

延伸閱讀與資料來源

相關文章:Prompt 是什麼、提示詞框架、提示詞除錯五步檢查法。

資料來源:Anthropic — Claude prompting best practices;OpenAI — Model Spec (2025-04-11)。

常見問題

用 ChatGPT 或 Claude 的網頁版,也有 system prompt 嗎?
有類似的東西,只是名稱和位置不同。網頁版通常用自訂指示、專案指示或自訂助手(例如 Projects、Gems)放長期不變的規則,作用等同 system prompt;你每次輸入的對話內容則相當於 user prompt。
system prompt 的優先權一定比 user prompt 高嗎?
設計上通常較高,例如 OpenAI 的 Model Spec 定義了 system、developer、user 的層級順序,但實際行為仍可能被巧妙的說法影響。需要嚴格保密或把關的事項,不要只靠一段 system prompt。
system prompt 寫越長越好嗎?
不是。內容要精簡、具體、互不矛盾。把每次都需要的規則留下,只與單一任務有關的細節放回 user prompt。又長又含糊的 system prompt 會讓模型不知道該優先照哪一條做。
長文件應該放在 system prompt 還是 user prompt?
通常放在 user prompt,並用標籤標出文件範圍。Anthropic 指南建議超過約 2 萬 token 的長文件放在前段,問題放在最後,並可用 XML 標籤區隔文件與指示。
一次性的問題需要拆成兩層嗎?
不需要。一次性任務把背景、任務與格式寫在同一則訊息即可。當同一套規則要重複使用,或要交給別人或程式使用時,才值得整理成 system prompt。
提示詞入門3 分鐘

Prompt 中文是什麼意思?提示詞入門與寫法

Prompt 中文通常譯為提示詞,是你交給 AI 的整段輸入。這篇說明提示詞的定義、包含哪些內容、四個要素、實用寫法與範例,以及新手常犯的錯誤。