寫 Prompt 最痛的不是「寫不出來」,而是「同一個提示詞,昨天輸出很漂亮,今天卻整個走鐘」。這篇文章把零散的提示技巧整理成 5 種可疊加的工程框架——角色設定、Few-shot、Chain-of-Thought、輸出格式與護欄——讓你的 AI 指令從「碰運氣」變成「每次都穩定可交付」。 適合會用 ChatGPT、Claude 但結果時好時壞的工作者,以及準備把 AI 放進正式流程的團隊。讀完你會得到一套可以直接複製貼上的 Prompt 模板、一張「哪種任務該用哪種框架」的決策表,以及一條把單一 Prompt 養成自動化流程的進階路徑。
為什麼需要 Prompt 工程框架?
大多數人寫 Prompt 是「用聊天的方式許願」:丟一句「幫我寫一封催款信」,然後祈禱結果可用。這種方式在玩玩看的階段沒問題,但只要你想把 AI 放進真實工作——客服回覆、合約摘要、報表生成——就會撞到三道牆。
第一道牆是不穩定。同一個指令跑十次,可能有八次符合預期、兩次離題,而你沒辦法事先知道是哪兩次。對外服務時,那兩次就是客訴與信任崩盤的來源。第二道牆是無法交接。提示詞寫在某個人腦袋裡,他請假,整條流程就停擺;沒有版本、沒有文件,新人接手等於從零摸索。第三道牆是無法規模化。手動一句一句調,永遠停在「一次處理一件事」,沒辦法接成自動化的 Workflow,更別說一天處理上千筆。
框架要解決的,就是把「許願」變成「規格」。當你把角色、範例、格式、護欄明確寫進 Prompt,AI 的自由發揮空間被收窄,輸出自然落進可預測的區間。換個角度說,框架是用「事先寫清楚」換「事後不用收爛攤」。這也是企業在做 AI 落地時最先要補的基本功——模型再聰明,底層 Prompt 不穩,整個系統就是建在流沙上。把這套基本功練熟之後,你自然會走向更系統化的 Prompt 優化方法,用數據而不是直覺去調指令。
核心概念:5 種框架各自管什麼
不要把這 5 種框架想成「五選一」,它們是五個可以疊加的零件,各自負責輸出品質的不同面向。下面這張表是整篇文章的地圖:
| 框架 | 管的是 | 一句話比喻 | 什麼時候非用不可 | 延伸專文 |
|---|---|---|---|---|
| 角色設定(Role) | AI 用什麼身分、什麼專業在回答 | 幫 AI 換上對的制服 | 幾乎所有任務 | 系統提示詞 |
| Few-shot 範例 | 風格、格式要長什麼樣 | 給新人看三份範本 | 分類、抽取、固定格式 | Few-shot 提示法 |
| Chain-of-Thought(思考鏈) | 推理的正確率 | 要求「先算式再答案」 | 計算、邏輯、稽核 | 思考鏈提示法 |
| 輸出格式(Output Format) | 結果能不能被機器或人直接用 | 規定交件用 A4 還是 Excel | 要串接系統、要交付 | 結構化輸出 |
| 護欄(Guardrails) | 不可以做什麼、出錯怎麼辦 | 機台的安全鎖 | 對外、涉及合規 | 系統提示詞 |
可以把寫 Prompt 想像成訓練一位新進員工:角色設定是告訴他「你是誰、負責什麼」;Few-shot 是給他看幾份合格的成品;Chain-of-Thought 是要求他「思考過程寫給我看」;輸出格式是規定「交件要用公司表格」;護欄則是員工手冊裡那條「遇到不確定的事,先問不要自己亂決定」。一個能獨立作業的好員工,這五件事缺一不可。
值得先點破一個觀念:這五個框架裡,角色與護欄是「長期穩定」的部分,最適合寫進 系統提示詞 一次設定好;而 Few-shot、思考鏈、輸出格式則比較貼著「這次任務」,常常每個任務微調。把穩定的放系統層、把易變的放任務層,是讓 Prompt 好維護的第一個分層原則。
實際教學
我們用一個真實任務貫穿全部步驟:讓 AI 把客戶來信自動分類,並產出標準化的處理建議。這是台灣很多客服、業務團隊都會碰到的場景。
Step 1:設定角色與任務(Role)
角色設定不是叫 AI「假裝」成某個人,而是用身分把它的知識範圍與語氣框定下來。差的寫法是「你是助理」;好的寫法要包含身分、專業、服務對象、本次任務四個資訊。
你是一位有 8 年經驗的 B2B 客服主管,熟悉台灣中小企業的採購與付款流程。
你的任務:閱讀一封客戶來信,判斷它屬於哪一類問題,並給第一線客服可直接照做的處理建議。
語氣:專業、簡潔、不卑不亢,使用台灣商業書信慣用語。
光是把角色寫清楚,輸出的語氣與專業度就會明顯上一個檔次。這是投報率最高的一步。如果你發現同一個角色會被反覆用在很多任務上(例如整個客服團隊都共用),就該把它從單次 Prompt 抽出來,固定寫進 系統提示詞,避免每次重打、也確保全團隊口徑一致。
Step 2:給 Few-shot 範例
Few-shot 的意思是「給少數範例讓 AI 模仿」。它對「我講不清楚但我看得出對錯」的任務特別有效——分類、抽取、特定格式的文案。關鍵是範例要涵蓋邊界情況,不要三個範例都是同一種好球帶。
範例 1(單純詢問)
輸入:「請問你們的報價單還在效期內嗎?我想再確認一次。」
輸出:{ "類別": "報價確認", "急迫度": "低", "建議": "回覆現行報價單效期,並主動詢問是否需要重新報價。" }
範例 2(帶情緒的客訴)
輸入:「上次出貨又少了兩箱,這已經第三次,到底有沒有在管?」
輸出:{ "類別": "出貨異常客訴", "急迫度": "高", "建議": "先致歉並承諾今日內查明,轉倉管確認,48 小時內補出並回報。" }
兩個範例就把「冷靜詢問」與「情緒客訴」兩端定錨好了,AI 處理中間地帶時會更準。範例的數量、排序與多樣性其實是一門學問——放錯範例反而會把模型帶歪。想把這一招用到極致,完整的選例策略整理在 Few-shot 範例提示法。
Step 3:加入思考鏈(Chain-of-Thought)
思考鏈是要求 AI 先把推理過程寫出來,再給結論。研究與實務都顯示,對需要判斷、計算的任務,這一步能大幅降低跳步出錯。寫法很簡單,就是在指令裡加一句:
在輸出最終 JSON 之前,請先在 <思考> 標籤內,逐步分析:
1. 這封信的核心訴求是什麼?
2. 是否帶有情緒或急迫訊號?
3. 對照範例,最接近哪一類?
分析完再輸出 JSON。
如果這個 Prompt 是給真人看的(例如客服當參考),保留思考過程很好。如果是要接進系統、只需要 JSON,就讓它「內部思考、只回傳結論」,避免下游程式還要去剝雜訊。思考鏈還有不少進階變體,例如讓模型先列多種可能再自我評比、或用「先拆解子問題」的方式處理複雜稽核,這些在 思考鏈提示法 有更深入的拆解。
Step 4:鎖定輸出格式(Output Format)
這是「能不能上線」的分水嶺。只要結果要被程式接走,就必須鎖死格式。最好的做法是直接給一份 schema,並明令「只輸出 JSON、不要任何多餘文字」。
只輸出以下 JSON,不要加任何說明或前後文字:
{
"類別": "報價確認 | 出貨異常客訴 | 付款問題 | 技術支援 | 其他",
"急迫度": "高 | 中 | 低",
"建議": "字串,限 60 字內,可直接複製給客服"
}
用列舉值(enum)限定欄位可選範圍,是讓輸出穩定的關鍵小技巧——AI 不會自己發明第六種類別。如果下游是正式系統、不容許任何格式飄移,光靠 Prompt 提示還不夠保險,建議再搭配模型的結構化輸出模式做雙重保障,完整做法見 結構化輸出提示法。這一步做好,後面要把它接進工單系統或 CRM,幾乎是免改的。
Step 5:設定護欄與檢查(Guardrails)
護欄是把「不能做的事」與「出錯怎麼辦」寫死。沒有護欄的 Prompt,遲早會在某個邊界案例上幻覺、越權或洩漏。
護欄規則:
- 只能根據信件內容判斷,禁止臆測信中沒提到的事實。
- 若資訊不足以分類,類別填「其他」、急迫度填「中」,建議寫「需人工確認」。
- 禁止承諾任何具體金額、折扣或退款;涉及金錢一律標註「需主管核可」。
- 輸出前自我檢查:JSON 是否合法?欄位是否都在允許值內?
護欄是最該「寫一次、到處生效」的部分。與其在每個任務 Prompt 裡重抄一遍,不如把通用的禁止事項與失敗處理規則集中寫進 系統提示詞,任務 Prompt 只補該任務專屬的限制。把這五步疊起來,你就有了一個可上線、可交接、可規模化的 Prompt,而不是一句碰運氣的許願。
進階:更深入的一層
把五框架疊好、能穩定產出單一任務之後,許多人會卡在下一關:真實工作很少是「一個 Prompt 一次搞定」。一份合約要先摘要、再抽關鍵條款、再比對風險、最後產出建議;一篇文章要先擬大綱、再寫稿、再潤飾、再做 SEO 檢查。硬把這些塞進一個巨無霸 Prompt,結果就是模型顧此失彼、護欄互相打架、token 爆量又難除錯。
進階的解法是換一個層次思考:不要把 Prompt 當「一句指令」,而是當「一個有單一職責的函式」。每個 Prompt 只做好一件事,再用 Prompt 串接(Prompt Chaining) 把它們接成一條鏈,前一步的結構化輸出,剛好餵成下一步的輸入。這正是為什麼 Step 4 的「輸出格式」如此重要——只有當每一節的輸出都是乾淨、可預期的結構,串接才接得住。
下面這張表,是「單一 Prompt」進化到「Prompt 系統」的對照,幫你判斷自己現在站在哪一層、下一步該往哪走:
| 面向 | 入門:單一 Prompt | 進階:Prompt 系統 |
|---|---|---|
| 處理單位 | 一句指令完成一件事 | 多個單職責 Prompt 用 串接 接成鏈 |
| 輸出角色 | 給人看的文字 | 給下一步吃的結構化資料(結構化輸出) |
| 除錯方式 | 整段重寫,靠手感 | 定位是哪一節出錯,單獨修那一節 |
| 改善方法 | 反覆試誤 | 對每節做 A/B 與 系統化優化 |
| 維護方式 | 散落在各人聊天記錄 | 版本化、模組化,存進 Prompt 資料庫 |
| 規模 | 一次一件 | 接成自動化 Workflow,一天千筆 |
再往上一層,當你連「怎麼寫這些 Prompt」都想自動化時,就會碰到讓 AI 幫你寫 Prompt 的技巧——也就是 Meta Prompting(後設提示):你給模型任務目標與評分標準,讓它先產出一版 Prompt、再自我批改。對於要大量產出同類指令的團隊,這是省時又能保品質的一招。順帶一提,本站的 Prompt 產生器 背後就是這套思路的具體化,你可以直接拿來生成符合上述五框架的指令草稿。
範例:完整 Prompt 與 Workflow
下面是把 Step 1 到 Step 5 全部組合起來、可以直接複製使用的完整 Prompt:
# 角色
你是一位有 8 年經驗的 B2B 客服主管,熟悉台灣中小企業的採購與付款流程。
# 任務
閱讀一封客戶來信,分類並給出第一線客服可照做的處理建議。
# 範例
輸入:「報價單還在效期內嗎?想再確認。」
輸出:{ "類別": "報價確認", "急迫度": "低", "建議": "回覆現行報價單效期,並詢問是否需重新報價。" }
輸入:「出貨又少兩箱,第三次了!」
輸出:{ "類別": "出貨異常客訴", "急迫度": "高", "建議": "致歉並承諾今日查明,轉倉管,48 小時內補出。" }
# 思考步驟(先在 <思考> 內完成,不輸出給下游)
1. 核心訴求? 2. 是否有情緒或急迫? 3. 最接近哪一類?
# 輸出格式(只輸出此 JSON,無多餘文字)
{
"類別": "報價確認 | 出貨異常客訴 | 付款問題 | 技術支援 | 其他",
"急迫度": "高 | 中 | 低",
"建議": "限 60 字內"
}
# 護欄
- 禁止臆測信中未提及的事實。
- 資訊不足時類別填「其他」、建議填「需人工確認」。
- 涉及金額一律標註「需主管核可」。
- 輸出前自我檢查 JSON 合法性與欄位值。
# 待處理信件
{在此貼上客戶來信}
把這個 Prompt 包進自動化後,整條流程的文字版流程圖長這樣:
客戶來信進信箱 ↓ 系統擷取信件內文 ↓ 帶入上方 Prompt 呼叫 AI ↓ AI 內部思考並輸出 JSON ↓ 程式驗證 JSON 格式與欄位值(不合法→退回重跑一次→仍失敗→轉人工)↓ 依「急迫度」分流(高→即時通知主管 / 中低→進客服佇列)↓ 客服採用「建議」回覆 ↓ 結果回寫 CRM 並累積成下一輪 Few-shot 範例
注意流程圖裡那段「驗證失敗的處理分支」——這正是護欄從 Prompt 內延伸到系統層的體現。好的自動化,失敗路徑跟成功路徑一樣被認真設計過。 這就是一個從單一 Prompt 長成 Workflow 的標準路徑,而把這幾節 Prompt 真正接起來的膠水,就是 Prompt 串接。
常見錯誤
避開這幾個坑,你的 Prompt 穩定度會立刻提升一大截:
- 把所有規則塞成一大段文字。AI 會漏讀。請用標題、條列、分區塊(角色/範例/格式/護欄)切開,可讀性對 AI 跟對人一樣重要。
- Few-shot 範例都選好球帶。三個範例都是簡單情況,AI 就學不會處理客訴、模糊、空白等邊界,正式上線一遇到怪信件就崩。如何配置才不會偏,見 Few-shot 提示法。
- 要求 JSON 卻不給 schema。只說「請給我 JSON」,AI 每次欄位名稱都不一樣,下游程式根本接不住。一定要附上明確結構與列舉值,必要時走 結構化輸出。
- 沒寫「不確定時怎麼辦」。沒有這條,AI 寧可編一個答案也不會說「我不知道」,幻覺就是這樣來的。
- 用否定句下指令。「不要太長」不如「限 60 字內」;「不要太正式」不如「用 LINE 對話的口吻」。給明確正向的目標,比禁止模糊的東西有效得多。
- 把多步任務硬塞進一個 Prompt。一個巨無霸 Prompt 同時要分類、抽取、潤飾、檢查,往往哪一項都做不好。該拆成多節、用 Prompt 串接 接起來。
最佳實務
- 照任務難度疊框架,不要一次全上。簡單任務角色+格式就夠,複雜任務才加思考鏈與護欄,避免 Prompt 臃腫又燒 token。
- 把好的輸出回收成新的 Few-shot 範例。讓 Prompt 隨著真實案例持續進化,這是最便宜的「微調」。
- 版本化管理 Prompt。像管程式碼一樣記錄每次修改與效果,團隊才能協作、出問題才能回溯。把可複用的存進 Prompt 資料庫,需要新指令時也可用 Prompt 產生器 快速起草。
- 用數據而非手感調整。別只靠「感覺變好了」,固定一組測試輸入、量化通過率,按 Prompt 優化 的方法做 A/B,才知道改動到底有沒有效。
- 上線前用「對抗測試」。故意丟空白、亂碼、惡意指令、超長文字去打它,看護欄擋不擋得住,而不是只測理想輸入。
- 跨模型上線務必各自實測。同一份 Prompt 在不同模型的格式服從度不同,落地細節對照 ChatGPT 寫法 與 Claude 寫法,別假設「在 ChatGPT 行得通,換 Claude 就一定行」。
實際案例:台中精密機械商的客服分流
一家台中的精密機械零件供應商,每天進約 200 封客戶來信,混雜詢價、催單、客訴、技術問題。導入前後對比如下:
導入前:3 位客服人員每天上午幾乎都在「讀信、判斷、分派」,平均一封信從進信箱到被正確分派要 18 分鐘;急件常因淹沒在信海裡被延誤,每月平均 6 件客訴升級到主管層;新進客服要 2 個月才抓得到分類手感。
導入後:團隊用上述五框架 Prompt 搭一條自動分流 Workflow,信件一進來就自動分類、標急迫度、產出建議草稿,客服只需審核與微調。成效:
- 單封信處理時間從 18 分鐘 → 約 4 分鐘(含人工審核),降幅約 78%。
- 急件辨識後即時推播主管,客訴升級從每月 6 件 → 1 件。
- 新人因為有 AI 給的分類與建議當鷹架,上手時間從 2 個月 → 約 2 週。
- Prompt 與護欄寫成文件後,整套邏輯不再綁在某個資深客服身上,請假也不再卡流程。
值得補充的是這家公司的第二階段:他們把「分類」與「草擬回信」拆成兩個 Prompt,用 Prompt 串接 接起來——第一節輸出結構化 JSON,第二節只負責根據類別與急迫度把回信寫得有人味。拆開後,光是「回信語氣」這一節就能單獨做 優化 與 A/B,再也不用每次都動到分類邏輯。這也呼應了前面「進階」段落的核心:單一 Prompt 求穩,系統靠串接求強。
關鍵不在用了多厲害的模型,而在把客服主管的判斷邏輯,用框架翻譯成一份可執行、可稽核的 Prompt。這也是 AI 落地最務實的一條路。
免責聲明:本文範例涉及付款、報價等情境僅為技術示範,不構成任何法律、財務或合規建議。實際導入涉及客戶資料與金額處理時,請依貴公司法遵與資安政策審核。
結論
Prompt 工程框架的本質,是把「靈感式的許願」升級成「工程式的規格」。記住這條疊加順序:角色設定定身分、Few-shot 定風格、Chain-of-Thought 定正確率、輸出格式 定可用性、護欄 定安全。簡單任務取前兩個,要上線的全套疊好,你就能把 AI 從「玩具」變成團隊裡可交付、可規模化的「同事」。
把單一 Prompt 寫穩之後,下一步是兩條路:往深,用 Prompt 優化 把每一節調到最佳;往廣,用 Prompt 串接 把多個指令接成能上線的流程。需要現成材料時,Prompt 資料庫 與 Prompt 產生器 都能直接拿來起步。從今天起,別再許願——開始寫規格。
❓ 常見問題 FAQ
Prompt 工程框架和隨手寫提示詞差在哪?
一定要五種框架全部用上嗎?
Few-shot 範例要放幾個才夠?
Chain-of-Thought 會不會讓回應變慢變貴?
怎麼避免 AI 亂編資料(幻覺)?
這些框架能用在 ChatGPT 以外的模型嗎?
輸出格式怎麼鎖到程式能 100% 接住?
Prompt 框架和 AI Agent 是什麼關係?
🔗 延伸閱讀
每週把這類實戰教學寄給你
訂閱 AgentAI 智庫情報週報,新的 Prompt、AI Skills、工作流與教學第一時間收到。
免費 · 隨時取消