為什麼發布時的基準測試無法回答你的問題
每一次前沿模型發布,都會附上一張圖表,顯示它在一組標準化評測中領先。這些數字是真的,但對於判斷你星期一該用哪個模型幾乎沒有幫助,原因有三個。
差距很小,而且測的不是你的任務。 推理基準上兩分的差距,無法告訴你哪個模型寫的客戶郵件比較好,或是在兩百列資料中能不能更穩定地維持格式。
基準測試衡量的是容易評分的任務。 也就是有標準答案的事情。大多數專業工作沒有標準答案:語氣、結構,以及該省略什麼的判斷力。這些正是模型差異最大、卻完全沒被衡量的地方。
發布時的比較是廠商自己做的。 不見得是不誠實,但沒有人會公布自家模型排名第二的評測。
真正值得回答的問題比較窄:在你每週做二十次的那些具體任務上,這兩個模型哪個比較好?這個問題沒有現成的公開答案,但只要花大約一小時就能找出來。
版本之間真正常變的地方
綜觀近期幾次前沿模型發布,日常使用中真正重要的進步,一直集中在同樣幾個地方,而且很少是發布公告主打的重點。
| 改進項目 | 你會如何注意到 | 基準測試是否顯示出來 |
|---|---|---|
| 指令遵循 | 不再忽略你的第三個限制條件 | 很少 |
| 負向指令 | 「不要用比喻」真的被遵守 | 沒有 |
| 長文本記憶 | 能找到第140頁的內容,而不只是第3頁 | 部分 |
| 格式紀律 | 表格每次都有你要求的欄位 | 沒有 |
| 校準過的不確定性 | 它會說不知道,而不是編造答案 | 沒有 |
| 語氣控制 | 送出前需要重寫的次數變少 | 沒有 |
| 推理深度 | 它能抓到你漏掉的邊緣情況 | 有,這是他們唯一有衡量的一項 |
這七項裡有五項在基準測試圖表上完全看不出來,這也是為什麼一個新模型用起來感覺變好或變差的原因。指令遵循尤其是「你會拿去修改的初稿」和「你會直接丟掉的初稿」之間的差別。
一小時評估法
與其閱讀發布報導,不如這樣做:讓兩個模型並排處理你自己的素材。
- 收集五個真實任務,取自過去兩週。要是真實的,貼上你實際的情境內容,而不是玩具提示。至少包含一個寫作任務、一個結構化輸出任務,以及一個需要對不熟悉事物進行推理的任務。
- 在動手之前,先用一句話寫下一個好答案應該包含什麼,針對每個任務都這樣做。這一步能防止你偏好那個比較長、比較有自信的輸出,這是一種強烈但多半無意識的偏見。
- 讓每個任務平行對兩個模型執行,這樣任何一個答案都不會被另一個先入為主地影響。
- 依修改心力打分,也就是從輸出到你會實際送出的內容之間,需要花多少功夫,而不是看它讀起來如何。
- 記下差距大小,而不只是誰贏。結果不相上下就代表你可以不用再為這個任務糾結該用哪個模型,這本身就很有用。
- 把記錄保留下來。 三個月後,等下一個版本推出時,你重新跑一次同樣的五個任務,二十分鐘就能得到真正的答案。
最後一點才是真正會累積價值的地方。保留下來的評估集,是唯一能讓之後每一次新版本評估都變得便宜的東西。
六個能分辨前沿模型差異的提示
一般性的問題,任何夠強的模型給出的答案都差不多。如果你想看出差異,就要針對特定能力施加壓力。
- 困難情境下的語氣。
Write a note telling a client we missed the deadline. Take responsibility without over-apologising and without excuses. Under 120 words.語氣風格的差異會立刻顯現出來。 - 負向限制。
Explain [concept] without using any analogy or metaphor.遵守負向指令的程度,差異遠比你想像的大。 - 嚴格擷取。
Extract every date, amount, and party into a JSON array with exactly these keys. If a field is absent use null. Do not infer.測試格式紀律,以及自行腦補空缺的傾向。 - 長文本記憶。 上傳一份長文件,詢問中間段落的內容。這能揭露「實際可用的情境長度」,跟廣告宣稱的情境長度不是一回事。
- 承認不知道。 詢問一件真正冷門或非常新的事情。最好的答案是明確說「我不知道」,或是給出附來源的檢索結果。這裡出現捏造內容,不管基準測試分數多高都應該直接淘汰。
- 多重限制遵守度。 一次給六個限制條件,數數看有幾個被遵守。這單一測試,比清單上其他任何一項都更能預測你日常使用的滿意度。
答案通常是「兩者都要,看什麼任務」
大家面對一次新版本發布,都想要一個明確的結論,但實際跑過評估後,誠實的結果幾乎總是分裂的。一個模型在寫作和語氣上勝出,另一個在嚴格結構和速度上勝出。兩者在一般推理能力上差距小到不足以決定什麼。
這不是打馬虎眼,而是真實的結果,而且有實際的意義。如果你只能用一個模型,你等於是在選擇哪一類任務要犧牲品質。如果你可以同時使用兩個,發布時要問的問題就不再是「要不要換」,而是「哪些任務要換」,這是個小得多、風險也低得多的決定。
這也改變了一次發布對你的意義。當新模型出現在一個已經有好幾個模型的工作區裡,你只需要重新跑一次你的五個任務,調整路由設定,然後繼續工作。不需要遷移,不需要取消訂閱,也不會有整整一個月因為提前下了承諾而被迫用比較差的東西。
發布當天該做什麼
不要立刻切換你的預設模型。 發布週的第一印象,多半被新鮮感和最早流傳出來的那些範例主導。
重新跑一次你的評估集。 如果你保留了上次的評估集,二十分鐘就能搞定。
檢查那些不起眼的細節。 情境視窗長度、你原本的提示是否還維持一樣的行為,以及有沒有任何你依賴的東西改變了。一個整體更強的模型,在你特定的範本上反而可能變差,這件事值得在把正式工作搬過去之前先弄清楚。
按任務更新路由,而不是整批切換。 把新模型明顯勝出的類別搬過去,其他的先留著。
等兩週再看限制。 一個新模型的失敗模式,通常要等大規模使用約兩週後才會浮現,而且很少出現在發布公告裡。
- 從你自己的工作中建立一組五個真實任務,並保留下來
- 在看任何一個輸出之前,先寫下一個好答案應該包含什麼
- 讓兩個模型平行執行,這樣任何一方都不會被另一方先入為主地影響
- 依修改心力打分,而不是看輸出讀起來如何
- 記錄差距大小,因為結果不相上下本身就是有用的資訊
- 特別測試負向限制和多重限制遵守度
- 在把正式工作搬到新模型之前,先等兩週
- 按任務更新路由,而不是整批切換
常見問題
我該換成最新的模型嗎?
不要在發布當天換,也不要整批換。把你自己一小組真實任務拿去對兩個模型各跑一次,依每個輸出需要多少修改來打分,只把新模型明顯勝出的類別搬過去。新版本通常在某些方面確實更好,但在某些方面偶爾會變差,尤其是那些針對前一版本調校過的既有提示。
為什麼基準測試跟我的實際體驗對不上?
因為基準測試衡量的是能自動評分的東西,也就是有標準答案的任務。大多數專業工作沒有唯一的標準答案,而決定日常滿意度的特質,也就是指令遵循、語氣控制、格式紀律,以及知道什麼時候該說「我不知道」,大多沒有被衡量。一個模型可以在每張公開圖表上都領先,實際用起來卻更讓人惱火。
我應該多久重新評估一次?
只要你在用的模型有重大更新就評估,目前大約每隔幾個月就會發生一次,另外不管有沒有更新,每一季至少也要評估一次。固定保留一組五個真實任務,能把這件事變成二十分鐘的工作,而不是一整個下午,這也是唯一能發現你六個月前設定的路由現在已經不對的方法。
我可以直接用整體表現最好的那個模型就好嗎?
可以,但你等於是在你工作中一塊可預測的範圍裡接受比較差的結果。人們用自己的任務去評估時,一致的發現是:一個模型在寫作和語氣上勝出,另一個在嚴格結構和速度上勝出,一般推理能力則接近到不足以決定什麼。如果兩個你都能用,選擇就會變成按任務決定,而不是按訂閱決定。
我透過哪個產品去使用這個模型,有差別嗎?
模型就是模型,所以不管你從哪裡使用,輸出品質大致相同。真正有差別的是:你能不能做比較、切換時情境會不會延續,以及一次新版本發布對你來說是一次遷移,還是選單裡多一個選項而已。一個裝了好幾個模型的工作區,能把每一次發布從一個決定變成一次微調。