AI 協作 AI Agent 實戰 · 第 2 / 12 篇

【AI Agent 實戰 03】寫出好的 Prompt 核心在於:消除模糊性

要寫出好的 Prompt,核心在於「消除模糊性」。本文分享撰寫優質 Prompt 的四大關鍵要素(CO-STAR / Role-Context-Task 框架),並透過資料庫效能調優的實戰案例,教你如何精準調教 AI。

快速導覽 查看本文目錄

30 秒看懂這篇

  • 寫好 Prompt 的核心是消除模糊性。
  • 四個關鍵要素:角色設定、清楚的任務與背景、限制輸出格式、設定風格與約束。
  • 用資料庫查詢變慢的案例示範完整 Prompt,並說明怎麼用觸發情境與意圖線索調動 SKILL。
  • 好的 Prompt 是迭代出來的:結果不理想時先用對話修正,不必整段重寫。

Hi~ 我是 Eric!🚀

在上一篇我們聊到了 什麼是 AI Agent SKILL ,它定義了 Agent 的能力邊界。但要把這些能力發揮到極致,最關鍵的橋樑就是——Prompt(提示詞)。

很多人問我:「為什麼 AI 總是給我一堆廢話?」或「為什麼它給的 Code 根本跑不動?」

老實說,寫出好的 Prompt 並不是什麼黑魔法。它的核心概念只有一個:「消除模糊性」。

你可以把 AI 想像成一個極度聰明、讀過全世界書籍,但完全沒有讀心能力的實習生。如果你只是隨口說句「幫我買杯咖啡」,他可能會買回一杯他不喝但你討厭的拿鐵;但如果你說「去巷口那家星巴克,買一杯大杯熱美式,不加糖,用我的隨行杯裝」,他就能精準達成任務。

這篇文章,我要跟你分享如何透過標準框架,把你的 AI 調教成真正的「頂級助手」。


撰寫優質 Prompt 的四大關鍵要素

在業界,我們常使用 CO-STAR 或 Role-Context-Task 框架來結構化指令。簡化後,你可以記住這四個核心點:

1. 給予角色設定 (Role)

讓 AI 進入特定的專業狀態。不同的角色會有不同的語氣、專業知識和思考邏輯。

  • 普通版: 「幫我優化這段 Code。」
  • 優化版: 「你是一位擁有 10 年經驗的資深 C# 後端架構師,專精於分散式系統與資料庫效能調優…」

Eric 的碎碎唸:設定角色不只是為了好玩,它會觸發模型內部的特定知識權重(Attention),讓它從「一般對話模式」切換到「專業模式」。

2. 提供清晰的任務與背景 (Context & Task)

不要只給一個動詞,要說明「為什麼」要做這件事,以及相關的背景資訊。

  • 範例: 我正在寫一本技術書,讀者是初學者。請幫我用「左手藍圖,右手魔法」的比喻,簡單說明領域驅動設計 (DDD) 的核心價值。

3. 限制輸出格式 (Output Format)

明確告知你想要的結果長什麼樣子,這能省去大量調整格式的時間。 常見格式包含:表格、Markdown、JSON、列點說明、三分鐘演講稿等。

  • 範例: 「請用表格比較 Dapper 與 Entity Framework 的效能與開發難易度。」

4. 設定風格與約束 (Style & Constraints)

規定語氣(幽默、專業、簡潔)以及絕對「不能」出現的內容。

  • 範例: 「語氣要親切且帶點冷幽默,避開過於艱澀的專有名詞,字數控制在 300 字以內。」

💡 一個萬用的黃金公式

如果你覺得記住四個要素太麻煩,直接套用這個公式:

[角色設定] + [背景/目標] + [任務步驟] + [限制/格式]

讓我們跳脫「寫文案」或「寫信」,直接進入技術實作與 Debug 的場景。這是一個開發者最常遇到的狀況:「這段 Code 跑不動,但我不知道為什麼」。


🚀 實戰案例:解決資料庫查詢緩慢的問題

這是一個針對 「效能優化與 Bug 排除」 的高品質 Prompt 寫法:

【角色設定】:你是一位精通資料庫效能調優與 C# Entity Framework Core 的資深後端工程師。

【任務背景】:我有一段程式碼在處理「訂單與產品明細」的聯集查詢時速度非常慢。目前資料庫約有 50 萬筆訂單,查詢一次需要花費 8 秒,這在 Production 環境是不可接受的。

【具體任務】:

  1. 分析我提供的程式碼片段(如下方附錄),找出可能的 N+1 問題 或 全表掃描 原因。
  2. 請提供優化後的 LINQ 寫法。
  3. 說明是否需要針對特定欄位建立 Index,以及原因。

【附錄 - 程式碼片段】:

var orders = _context.Orders.ToList(); 
foreach(var o in orders) {
   o.Items = _context.OrderItems.Where(x => x.OrderId == o.Id).ToList();
}

【輸出格式】:

  • 請先指出 「效能殺手」 在哪裡。
  • 給出 「優化代碼」(Markdown 代碼區塊)。
  • 最後列出 「DB 優化建議」(表格形式)。

🔍 為什麼這個 Prompt 專業?

  1. 量化背景:你提供了「50 萬筆」、「8 秒」這些數據,AI 會立刻意識到問題的嚴重性。
  2. 鎖定技術棧:明確指定 EF Core,AI 就不會給你純 SQL 或 Dapper 的語法。
  3. 分層思考:你不只要「修好」,還要「分析原因」與「DB 建議」。這讓 AI 提供的答案具有深度,而不僅僅是表面修補。
  4. 指定診斷方向:提到 N+1 或 Index,等於是給了 AI 偵探一個線索。

進階連動:如何透過 Prompt 調動 SKILL

在上一篇我們定義了 SKILL 的標準結構 ,但要讓 AI 在正確的時機「想起」並「啟用」這些技能,你的 Prompt 必須扮演好**調度員(Dispatcher)**的角色。

要讓 Prompt 能精準調動 SKILL,有兩個核心技巧:

1. 定義明確的「觸發情境 (Trigger Condition)」

在 Prompt 中加入決策邏輯,告訴 AI 在什麼條件下應該去查找 SKILL 庫。

  • 範例: 「當你發現需求涉及『資料庫效能優化』或『N+1 查詢』時,請優先檢索並遵循 db-optimization-skill 中的作業規範。」

2. 提供「意圖匹配 (Intent Matching)」的線索

AI Agent 判斷是否啟用 SKILL,通常是基於你提供的關鍵字與 SKILL 描述的相似度。

  • 優化技巧: 在 Prompt 的【任務背景】中,使用與 SKILL 描述一致的專業術語。例如,如果你的 SKILL 叫做 api-security-audit,在 Prompt 中就應該明確提到「進行安全性審查」而非「幫我看看這段 Code 有沒有問題」。

Eric 的實戰觀點:與其讓 AI 盲目地在數百個 SKILL 中搜尋,不如在 Prompt 中直接指定一個「技能範圍」。例如:「請在具備 frontend-expert 技能集的狀態下,審視這段 React 代碼。」這能大幅減少 AI 的推理負擔。


🛠️ 寫法升級:如果你想讓 AI 幫你寫單元測試 (Unit Test)

如果你寫完一段複雜的 Logic,想讓 AI 幫你測出 Bug:

「你是一位嚴格的 QA 自動化測試工程師。請針對以下這段『計算折扣優惠』的函數,列出所有可能的 邊際案例 (Edge Cases)(例如:負數價格、過期優惠券、空集合),並使用 xUnit 寫出對應的測試案例。我追求 100% 的邏輯覆蓋率。」


小撇步:迭代優化 (Iterative Optimization)

好的 Prompt 不是一次完成的,而是透過精確的指令不斷「調教」出來的。如果 AI 第一次給的結果不理想,不要急著重寫,試著對話式修正:

  • 「太嚴肅了,再輕鬆一點。」
  • 「把第二點刪掉,增加更多關於實作細節的描述。」

結語

寫 Prompt 的過程,本質上是在整理你自己的邏輯。當你能把任務講得越清楚,AI 能回饋給你的價值就越高。

在接下來的篇章中,我們將會探討如何將這些精準的 Prompt 整合進 AI Agent 的工作流 中,讓自動化代理程式能獨立處理更複雜的任務。

讀完了!你覺得這篇如何?

你的回饋會決定下一篇要寫什麼。

還有疑問

Learning path

AI Agent 實戰

這篇是系列中的第 2 / 12 篇。可以順著列表補完整脈絡,也可以直接跳到需要的段落。

  1. 01 2026 企業級 AI 導入全書:戰略藍圖、平台對決與資安防線建構指南
  2. 02 【AI Agent 實戰 03】寫出好的 Prompt 核心在於:消除模糊性 目前閱讀
  3. 03 【AI Agent 實戰 04】OpenAI GPT-5.5 官方提示詞指南:深度解析「建議提示詞結構」
  4. 04 什麼是 AI Agent SKILL?定義 AI 時代的「能力封裝包」與實戰撰寫指南
  5. 05 Codex PPT Skill 實測筆記:把文章與課程內容變成圖片式簡報的 AI Agent 工作流
  6. 06 Workflow Skill Router:面對 Agent sprawl,先管住 SKILL 選擇
  7. 07 Workflow Skill Router V2 正式版:把 SKILL 路由變成可驗證的 Codex 控制層
  8. 08 Workflow Skill Router v2.1.0 正式支援 Claude Code:同一份 Skill Tree,Claude Code 和 Codex 都能用
  9. 09 從模糊需求到 Code Review:拆解 Matt Pocock Skills 的工程 Workflow
  10. 10 AI 寫得更快之後,我們該如何相信它?Uncle Bob 談 Agent 時代的軟體基本功
  11. 11 Google EGM 是什麼?大象寫規格、金魚來找碴,讓 AI 先想清楚再寫 code
  12. 12 叫 AI「精簡一點」為什麼不夠?我用格萊斯四準則寫了 reply-with-gricean-maxims SKILL

Further reading

【AI Agent 實戰 04】OpenAI GPT-5.5 官方提示詞指南:深度解析「建議提示詞結構」 封面圖 2026-04-30 【AI Agent 實戰 04】OpenAI GPT-5.5 官方提示詞指南:深度解析「建議提示詞結構」 Day 11: 【心法 #2】透過AI幫我們生成Prompt 封面圖 2025-08-30 Day 11: 【心法 #2】透過AI幫我們生成Prompt 叫 AI「精簡一點」為什麼不夠?我用格萊斯四準則寫了 reply-with-gricean-maxims SKILL 封面圖 2026-11-03 叫 AI「精簡一點」為什麼不夠?我用格萊斯四準則寫了 reply-with-gricean-maxims SKILL

留言討論

用 GitHub 帳號留言,留言會同步到這個 Blog 的 GitHub Discussions。

閱讀導覽

約 5 分鐘

本文目錄

本篇所在系列 · 第 2 / 12 篇

AI Agent 實戰

  1. 2026 企業級 AI 導入全書:戰略藍圖、平台對決與資安防線建構指南
  2. 【AI Agent 實戰 03】寫出好的 Prompt 核心在於:消除模糊性
  3. 【AI Agent 實戰 04】OpenAI GPT-5.5 官方提示詞指南:深度解析「建議提示詞結構」
  4. 什麼是 AI Agent SKILL?定義 AI 時代的「能力封裝包」與實戰撰寫指南
  5. Codex PPT Skill 實測筆記:把文章與課程內容變成圖片式簡報的 AI Agent 工作流
  6. Workflow Skill Router:面對 Agent sprawl,先管住 SKILL 選擇
  7. Workflow Skill Router V2 正式版:把 SKILL 路由變成可驗證的 Codex 控制層
  8. Workflow Skill Router v2.1.0 正式支援 Claude Code:同一份 Skill Tree,Claude Code 和 Codex 都能用
  9. 從模糊需求到 Code Review:拆解 Matt Pocock Skills 的工程 Workflow
  10. AI 寫得更快之後,我們該如何相信它?Uncle Bob 談 Agent 時代的軟體基本功
  11. Google EGM 是什麼?大象寫規格、金魚來找碴,讓 AI 先想清楚再寫 code
  12. 叫 AI「精簡一點」為什麼不夠?我用格萊斯四準則寫了 reply-with-gricean-maxims SKILL
看完整系列 12 篇