API 開發

「感覺變好了」不算數:為什麼你的 prompt 需要評測

prompt 評測是用自動化測試量測提示詞的實際表現:把一批測試輸入跑過你的 prompt,再由評分器對每個輸出打分並取平均。有了客觀分數,你才能確定每次修改是真的進步而不是憑感覺,也能在使用者踩到邊角案例之前先抓出弱點。
「感覺變好了」不算數:為什麼你的 prompt 需要評測:文章重點卡

「感覺變好了」不算數:為什麼你的 prompt 需要評測

很多人以為 prompt 寫得順、讀起來舒服,就代表寫得好。不是,那只是起點。真正決定一個 AI 應用可不可靠的,是你有沒有辦法把這個 prompt 的表現量出來。

這篇要把兩件常被混在一起講的事分清楚:prompt engineeringprompt evaluation。憑感覺改 prompt,遲早會在正式環境付出代價。

你將學到什麼

兩個名詞的分工

prompt engineering 管怎麼寫,prompt evaluation 管寫得好不好。

寫完 prompt 的三條路

測一次就上、修幾個邊角,或走評測管線,差別在哪。

工程師的共同陷阱

為什麼連老手都會低估真實使用者的輸入多樣性。

評測優先的回報

客觀分數換到的四件事,以及分數長什麼樣子。

兩個名詞:一個管怎麼寫,一個管寫得好不好

prompt engineering 是你的寫作工具箱,裡面裝著各種讓 prompt 更有效的技巧:multishot prompting 多給幾個示範例子、用 XML 標籤把結構標清楚,還有許多最佳實務。這些技巧的共同目的,是讓 Claude 準確理解你在問什麼、希望它怎麼回。

prompt evaluation 走的是另一條路:它不管你怎麼寫,而是用自動化測試去量測 prompt 的實際效果。你可以拿輸出和預期答案比對、讓同一個 prompt 的不同版本互相較量,或是系統性地檢查輸出有沒有錯誤。一句話講完:engineering 負責把 prompt 寫好,evaluation 負責證明它真的好。

寫完 prompt 之後,你面前有三條路

「寫完 prompt 之後要做什麼」,攤開來看其實只有三條岔路。

寫好一版 prompt然後呢?路線一:測一次,覺得可以就上線風險最高,正式環境容易直接翻車路線二:多測幾次,修掉一兩個邊角好一點,但漏網之魚還是很多路線三:跑評測管線,拿客觀分數迭代前期多花工夫,換到可靠度與信心
三條岔路:越往下走,前期投入越多,正式環境的信心也越高
  1. 路線一:測一次,覺得可以就上線。風險最高,使用者丟進來的輸入千奇百怪,正式環境很容易直接翻車。
  2. 路線二:多測幾次,順手修掉一兩個邊角案例。比路線一好,但使用者給的輸入常常超出你的想像,漏網之魚還是很多。
  3. 路線三:把 prompt 丟進評測管線打分數,再根據客觀指標迭代。前期要多花工夫和成本,換到的是對 prompt 可靠度的信心。

這三條路沒有絕對的對錯,差別在賭注的大小。寫個一次性的小腳本,路線一也許夠用;但只要這個 prompt 會進到正式產品、面對真實使用者,路線一和路線二賭的就是你的產品品質。評測管線的本質,是把「我覺得應該沒問題」換成「我測過這一批案例,平均分數是多少」。

為什麼大家都掉進前兩條路

老實說,路線一和路線二是所有工程師都會掉進去的陷阱,連經驗再老的人也不例外。人很自然會低估真實使用者能踩出多少邊角案例:在你有限的測試裡看起來很穩的 prompt,一碰到五花八門的真實輸入,很快就會露出破綻。

我認為這不是能力問題,是方法問題。只要「測試」仍然停留在手動抽查幾筆,你得到的就只是印象,不是證據。改了一版 prompt 之後覺得「好像變好了」,很可能只是這次剛好抽到幾個順眼的輸出而已。

更糟的情況是:新版在你看的那幾題進步了,卻在你沒看的題型退步了,而你毫無察覺。

評測優先,買到的是四件事

  • 在弱點變成正式環境事故之前,先把它找出來。
  • 不同版本的 prompt 可以客觀比較,不再各說各話。
  • 每次修改都有可量測的依據,迭代起來有信心。
  • 整體應用的可靠度,隨著每一輪評測穩定累積。

評測優先的核心精神是:問題要在開發階段被你抓到,而不是在上線之後被使用者撞到。前期多投入的時間和測試基礎建設,會在應用的穩定性上加倍還給你,而且資料集與評分器都能重複使用,愈往後迭代成本愈低。

那分數長什麼樣子?

典型的做法是:準備一批有代表性的測試輸入,逐筆套進 prompt 跑過 Claude,再由評分器對每個輸出打 1 到 10 分,最後取平均。

來看一個實際的例子:三個問題分別拿到 10 分、4 分、9 分,平均 7.66 分,就是這一版 prompt 的成績。接著在 prompt 裡補一句指示再跑一輪,平均升到 8.7 分,你就有證據說這次修改是真的進步,而不是換了一種寫法而已。

測試輸入從哪裡來?範例為了方便理解只放三題,真實評測的資料集常常是數十、數百甚至上千筆。你可以手工整理,也可以請 Claude 幫你生成一批,重點是這批輸入要貼近正式環境會遇到的樣貌。

有了分數之後,不同版本的 prompt 就能用數字直接比較:留下分數最高的那一版,然後繼續迭代,看能不能找到更好的寫法。猜測從此退場,換上來的是證據。

下一步觀念建立之後,下一篇「動手建一條 prompt 評測管線」帶你實作:怎麼產生測試資料集、怎麼寫程式評分器與模型評分器,把這裡講的流程真的跑起來。
參考出處本文取材自 Anthropic 官方 Claude Academy 免費課程「Building with the Claude API」,由酒Ann 消化後以自己的視角重新編寫。想看英文原版課程,可到 Claude Academy 修習。

延伸學習

把這篇文章分享給需要的人FacebookLINEThreadsX

常見問答

prompt engineering 和 prompt evaluation 有什麼不同?
prompt engineering 是把 prompt 寫好的技巧集合,例如 multishot 示範與 XML 標籤結構;prompt evaluation 則是用自動化測試量測 prompt 的實際表現。前者負責寫,後者負責證明寫得好不好,兩者相輔相成。
只手動測幾次再修,不行嗎?
短期可行,但真實使用者的輸入遠比你想像的多樣,手動抽測幾乎一定會漏。評測管線用一批測試案例加上客觀分數,能在上線前就抓出弱點,而不是等使用者撞到才知道。
評測的分數是怎麼來的?
常見做法是由評分器對每個輸出打 1 到 10 分,10 分代表完美回答,再取全部測試案例的平均,作為這一版 prompt 的成績。改版後重跑一輪,比較平均分數就知道有沒有進步。
評測管線會不會太花成本?
它確實比隨手測幾次多花時間與費用,但換到的是可靠度與迭代信心。可以從小規模開始,先用少量測試案例把流程跑起來,再視需要擴大資料集與評分方式。