🎯 什麼情境該想到我
當你「改了 prompt/模型/RAG,卻不知道到底變好還變壞」——這是 AI 工程最核心也最被低估的能力。
⚙️ 怎麼用
- 先建一組評估集:代表性的輸入 + 你要的判準(正確性、相關性、格式、無害…)。
- 選評估方法:
- 有標準答案 → 用自動指標(精確比對、相似度)。
- 開放式輸出 → LLM-as-judge(用另一個模型當評審)+ 人工抽檢校準。
- 每次改動都跑同一評估集,比較分數再決定要不要採用(別憑一兩個例子的感覺)。
- 上線後持續監控:抽樣真實流量做線上評估,抓退化。
★ 評估管線五步(原書 Ch4 的做法)
(以下頁碼為原書 PDF 的頁碼。)
| 步驟 | 要做什麼 | 書中重點 |
|---|---|---|
| 1. 每個元件都評 | 端到端+每個中間輸出分開評;分 per turn 與 per task | 履歷抽「現職雇主」分兩步(PDF→文字、文字→雇主),各自評,否則不知道壞在哪(p.393–394)。task-based 比 turn-based 重要:2 輪和 20 輪解決差很多(p.394–395) |
| 2. ★ 寫評估準則 | 定義「好」,也定義「不該做什麼」(超出範圍的輸入) | 整條管線最重要的一步(p.396–397)。「正確 ≠ 好」:回「你完全不適合」是對的但沒用(p.397) |
| 3. 選方法+備資料 | 每個準則配一種評法、標註評估資料、切片 | 見下兩節(p.400–405) |
| 4. 評估你的評估管線 | 好回答真的拿高分?跑兩次一樣?指標相關嗎?成本延遲多少? | AI judge 的 temperature 設 0(p.407–408) |
| 5. 迭代+記錄 | 準則與樣本會改,但要保持一致 | 記下評估資料、rubric、judge 的 prompt 與取樣設定(p.408–409) |
rubric 怎麼寫:準則從真實查詢的多個回答中判好壞歸納(客服範例:relevance、factual consistency、safety);每個準則選計分制(0/1、1–5 等),為每個分數附例子與理由,拿給人試用,難照做就改到不含糊(p.397–398)。再把指標接上商業指標,訂出「低於多少就不能用」的 usefulness threshold(p.399–400)。
★ 評估集怎麼設計
一題長什麼樣(示意格式,非書中原文;欄位依書中「輸入+判準+切片」的要求整理):
id: cs-0042
input: "我上個月被重複扣款,怎麼退?" # 盡量取自真實線上資料
context: "[帳務 FAQ 第 3 節…]" # RAG 類才需要
criteria: # 每題標要評哪些準則
relevance: {scale: 1-5}
factual_consistency: {scale: "0/1", reference: "退款需 7 個工作天…"}
safety: {scale: "0/1"}
slices: [付費用戶, mobile, 帳務] # 方便事後切片看分數- 資料來源:盡量用真實線上資料;沒有自然標籤就人工或 AI 標(p.402–403)。
- ★ 切片(slicing):分子集各自看分數,抓偏誤、除錯(長度?主題?格式?),並避免 Simpson’s paradox——模型 A 兩組都贏(93% vs 87%、73% vs 69%),合計卻輸(78% vs 83%)(p.403–404)。
- 要有多組評估集(p.404–405):
- 一組貼近線上真實分佈,估整體表現
- 依層級(付費/免費)、流量來源(mobile/web)切的組
- 系統常錯的題、使用者常犯錯的題(線上常見錯字,評估集就要有錯字)
- out-of-scope 組:不該回應的輸入,確認系統有正確拒答
- 原則一句話:「你在乎什麼,就為它放一組測試集」
★ 要多大:先夠可靠、又不貴到跑不動(p.405)。
- bootstrap 檢查:從 100 題中放回抽樣抽 100 題、跑分,重複多次;若一次 90%、另一次 70%,代表評估集太小,要加題(p.405)。
- 比較兩個版本要多少題(OpenAI 粗估,95% 信心)(p.406):
| 想偵測的分數差 | 約需樣本數 |
|---|---|
| 30% | ~10 |
| 10% | ~100 |
| 3% | ~1,000 |
| 1% | ~10,000 |
規則:分數差每縮小 3 倍,樣本要多 10 倍。參考值:lm-evaluation-harness 的 benchmark 中位數 1,000 題、平均 2,159 題;Inverse Scaling 主辦方認為 300 題是絕對下限,偏好 ≥1,000,合成資料尤其如此(p.406–407)。
★ 方法怎麼配、AI as a judge 怎麼校準
- 不同準則用不同評法:毒性用小型專用分類器、相關性用語意相似度、對整份 context 的 factual consistency 用 AI judge(p.401)。
- 便宜+貴混搭:便宜分類器覆蓋 100% 流量給低品質訊號,昂貴 AI judge 只評 1% 給高品質訊號(p.401)。
AI judge 的校準重點:
- judge = 模型+prompt+取樣參數,任一改變就是另一個 judge;看不到 judge 的模型與 prompt 就別信它的分數(p.281、287)。
- prompt 寫清楚三件事:任務、準則(越細越好)、計分制;分類優於數字分數,離散優於連續,常見 1–5,範圍越寬越差;每個分數附範例與理由(p.277–278)。
- 一致性:Zheng et al. (2023) 在 prompt 加評估範例,GPT-4 一致性從 65% 升到 77.5%,但成本變 4 倍;而且一致不代表準確,可能穩定地錯(p.282)。
- 跟人比:參考基準是 MT-Bench 上 GPT-4 與人類一致率 85%,高於人與人之間的 81%(p.272)。書中要求問「好回答真的拿高分嗎」並用人工評估補強 AI judge(p.290、407)。
- 經驗推論:落地做法是取一批人工標註過的樣本,讓 judge 評同一批,算一致率,並與「兩位標註者彼此的一致率」對照;judge 明顯低於人際一致率就先改 rubric/prompt 再上線。
- 已知偏誤:self-bias(GPT-4 自評勝率約 +10%)、first-position bias(換順序重跑緩解)、verbosity bias(偏好長而有錯的回答)(p.289–290),細節見 LLM-as-Judge。
- judge 會漂移:上月 90%、本月 92%,若 judge 的 prompt 被改過,就不能歸功於應用(p.286–287)。
⚠️ 常見壞法
| 壞法 | 症狀 | 書中對策 |
|---|---|---|
| 評估集不具代表性 | 公開 benchmark 高分,自己場景不好用 | 公開 benchmark 只用來篩掉爛模型(p.388、392);評估集取自線上資料、有一組貼近線上分佈(p.402–404) |
| 資料污染 contamination | 訓練時看過評估題,分數虛高(p.388) | n-gram 重疊(連續 13 個 token 出現在訓練資料即 dirty;準但貴)或 perplexity 異常低(便宜較不準);回報整體+clean 子集分數(p.390–391) |
| 只看總分 | 合計贏、各組都輸(Simpson’s paradox) | 切片看分數(p.403–404) |
| 評估管線一直變 | 分數漲跌無法歸因 | 保持一致性+實驗追蹤,記下所有可變因素(p.408–409) |
| 對評估集過度調校 | 經驗推論:反覆對同一組題調 prompt,分數漲但線上沒變好 | 經驗推論(書中未直講,由 p.392 私有 hold-out、p.404 多組評估集延伸):留一組調校時不看的 hold-out,上線前才跑;定期補新線上資料 |
🧪 我實際套用的紀錄
- 2026-07-15:(待填)
⚠️ 注意
- LLM-as-judge 本身也有偏誤,要用人工樣本校準它;沒有評估的迭代=盲調。
🔗 機制層深潛
- 沒有標註時怎麼建評估集 —— 沒有 ground truth 時的六層成本階梯與行為測試
- LLM-as-Judge —— 六種已知偏誤與怎麼驗證裁判本身
- 幻覺偵測 —— groundedness 怎麼算、怎麼分層歸因
- 上線閘門與線上評估 —— 把評估變成 CI gate 與線上 A/B
- Benchmark 污染與分數失真 —— 為什麼分數漲了體感反而掉
- Agent 評估 —— pass@k vs pass^k 與可重置的評估環境
- LLM 可觀測性 —— 評估所需的遙測基礎
🔗 相關工具
- 工具-AI改動的AB對照評測 —— 這張卡講「要評估」,那張講「怎麼證明改動真的有效」:必須有對照組、單次結果不算數
- 工具-提示工程 —— 評估發現品質不佳時,這是成本最低的第一個調整手段,先試它再考慮更貴的路
- 工具-RAG檢索增強生成 —— 評估若指出問題是「缺知識/講錯事實」,正解是接 RAG 而不是調 prompt
- 工具-微調與RAG的取捨 —— 微調的硬前提就是這張卡:沒有可靠評估集,微調完也無法證明真的變好
- 工具-LLM微調實作路線 —— 微調後有沒有變好,只能靠這裡的評估集回答,不能靠感覺
- 工具-偏好對齊方法選擇 —— 對齊調的是語氣與有用程度,最需要評估集把「主觀變好」變成可驗收的數字
- 工具-模型量化格式選擇 —— 量化號稱只掉 3–5%,實際掉多少要用自己的評估集量過才算數