
隨著 ChatGPT、Claude、Codex、Cursor、Claude Code 等工具越來越普及,許多人開始把 AI 當成日常工作的一部分。不論是寫程式、整理資料、生成內容,還是協助除錯,AI 都能扮演相當重要的角色。
不過,很多人也有類似經驗:明明問了 AI 一個問題,結果卻得到一堆空泛、籠統,甚至沒什麼幫助的回答。這時不少人會覺得,是不是 AI 不夠聰明?
其實很多時候,問題不在模型,而在你給它的 prompt。
真正影響 AI 回應品質的,不只是模型本身,更是你如何下指令。只要 prompt 寫得更清楚、更有結構,AI 的表現往往就能明顯提升。以下整理出 7 個在實務上非常重要的提示技巧,幫助你更有效地與 AI 協作。
一、先給清楚的 Context
AI 最怕的,不是問題太難,而是資訊太少。
如果你只是丟一句「幫我整理這篇文章」,模型雖然也能回應,但它不知道你的目標是什麼、給誰看、希望呈現成什麼形式,最後就很容易產生模糊又普通的結果。
比較好的做法,是先交代清楚三件事:
-
這是什麼任務
-
目標讀者是誰
-
你希望輸出成什麼形式
例如,不要只寫:
Write a summary of this article.
而是改成像這樣:
You are a content editor at a tech startup.
Summarize the following article about AI regulation for a non-technical LinkedIn audience.
Keep it under 150 words and use a professional but approachable tone.
當你補上背景後,模型就更容易聚焦,也更能產出符合需求的內容。簡單來說,越少歧義,越容易得到好答案。
二、描述要具體,不要模糊
很多 prompt 看起來像是在下指令,但實際上太空泛,讓模型有太多可以自由發揮的空間,結果就容易偏掉。
例如這樣的 prompt:
Write something about Python.
幾乎等於沒有限定範圍。Python 可以是語言介紹、教學文章、函式範例、資料分析、爬蟲、Web 開發,可能性太多了。
如果你改成:
Write a Python function that takes a list of dictionaries, filters out entries where the "status" key equals "inactive", and returns the filtered list sorted by "created_at" in descending order. Include type hints and a docstring.
模型就能更精準地理解你要什麼,產出自然也更接近你的需求。
具體的 prompt,通常會比模糊的 prompt 更穩定,因為它縮小了模型可選擇的回應範圍,也讓結果更可控。
三、把任務拆成步驟
如果你交給 AI 的任務本身是多段式的,最好不要一口氣模糊地丟過去,而是拆成明確步驟。
例如你想讓 AI 解釋遞迴、給範例,再出測驗題,如果只寫:
Explain recursion and quiz me.
模型可能會回得很隨意,甚至順序混亂。
更好的方式是:
Do the following three things in order:
1. Explain the concept of recursion in Python, clearly and simply.
2. Show one concrete code example of a recursive function (use factorial).
3. Give me a short 2 question quiz to test my understanding.
Do not move to the next step until the current one is complete.
這樣的 prompt 有兩個好處:一是強迫模型照順序處理,二是降低它跳步或漏答的機率。對於教學、程式開發、分析任務來說,這種方式特別有效。
四、直接指定輸出格式
AI 不會自動知道你希望它用什麼形式回答。
如果你不指定,它可能回你段落文字、條列式、Markdown,甚至混搭格式。
但如果你的內容是要貼進程式、文件系統、資料庫,或後續還要再加工,那就應該主動指定格式。
例如這樣問:
What are the pros and cons of using PostgreSQL vs MongoDB?
模型可能會給你一篇一般說明文。
如果你改成:
Compare PostgreSQL and MongoDB. Format your response as a JSON object with two keys: "postgresql" and "mongodb". Each key should contain an object with "pros" (array of strings) and "cons" (array of strings). Limit to 3 items per category.
那你拿到的結果就可以直接用在應用程式裡。這不只是讓回應更整齊,也能大幅提高後續整合效率。
五、要求模型先推理再回答
有些問題不是只要一個結論,而是你希望知道它是怎麼推到這個結論的。這時就可以要求模型先進行推理,再給答案。
例如你要問 Python 在 I/O 任務下該用 async/await 還是 threading,如果只問:
Is it better to use async/await or threading in Python for I/O-bound tasks?
模型通常會很快直接下判斷。
但如果你改成:
I'm building a Python script that makes 50 concurrent API calls.
Think step by step:
1. What are the relevant options for concurrency in Python?
2. What are the tradeoffs between async/await and threading for I/O-bound work?
3. Based on your reasoning, what would you recommend and why?
你就更容易得到一個有脈絡、有分析過程的回答,而不只是表面結論。這種方式特別適合技術選型、決策分析、架構評估等情境。
六、加入範例與限制條件
如果你對輸出形式、語氣或結構有很明確的期待,最有效的方法之一,就是直接給範例。
這種做法常被稱為 few-shot prompting,也就是先給模型看一兩組你想要的輸入與輸出格式,再請它照這個模式處理真正的任務。
You are a Python code reviewer. Review the code below and respond ONLY in this format:
Issue: [short description]
Severity: [low/medium/high]
Fix: [one-line suggestion]
Example:
---
Code: for i in range(len(my_list)):
Issue: Using range(len()) instead of direct iteration
Severity: low
Fix: Use `for item in my_list:` instead
---
有了這種示範之後,模型就更容易照你的格式回覆。
另外,限制條件也很重要,例如:
-
請控制在 100 字內
-
不要使用技術術語
-
不要寫空泛開頭
-
請用條列整理
-
只回傳 JSON
這些條件就像護欄一樣,能幫助模型不要偏題。
七、把多種技巧組合起來用
真正強的 prompt,通常不是只用一個技巧,而是把多個元素一起組合。
一個高品質 prompt,常常同時包含:
-
明確的角色設定
-
清楚的背景 context
-
分步指令
-
指定輸出格式
-
範例
-
限制條件
-
具體的輸入內容
例如要請 AI 做程式碼審查,你可以同時指定它的角色、審查順序、回覆格式,以及實際程式碼內容。這樣得到的結果,通常會比只寫一句「幫我 review 這段 code」有用得多。
為什麼這些方法有效?
因為大型語言模型本質上是在預測「下一個最可能出現的詞」。
你給它的每一段提示,其實都在影響它怎麼縮小可能性範圍。
Context 幫它聚焦。
具體描述幫它降低模糊性。
步驟化指令幫它依序處理。
格式要求幫它維持結構。
範例幫它模仿你認可的模式。
推理要求則幫它展開更完整的分析過程。
這些都不是魔法,而是更有效率地與模型溝通。
結語
Prompt engineering 並不是找幾個神奇關鍵字塞進去,而是學會用更清楚、更有結構的方式表達需求。
很多時候,AI 不是做不到,而是你沒有把事情講清楚。
你不一定要一次把所有技巧都用上。最好的方式,是先從一個方法開始,例如先補 context,或先指定輸出格式。當你慢慢熟悉之後,再把步驟、範例、限制條件加進去,你會明顯感受到 AI 回應品質的提升。
一旦你掌握這件事,AI 不只是聊天工具,而會真正成為能幫你加速工作的協作夥伴。
--
本文整理自 X 上的文章How to write Prompts to ship 100x faster