iT邦幫忙

2026 iThome 鐵人賽

DAY 27
0
AI Engineering

30 天 AI eval 實戰:一隻 PM agent,改完之後怎麼確定它還是對的系列 第 27 篇

Day 27|門檻訂成五次全過,重跑要花多少錢

  • 分享至 

  • xImage
  •  

這隻需求釐清 agent 的結果門檻,要設為 16 筆 case 各跑 5 次、次次通過,並把重跑的費用與等待時間一起算進去。

需求釐清 agent 會整理 ticket 的目標與範圍,並替有問題的驗收條件 AC 標出類別。整理後的卡會被拿去開工,使用者得依賴當次產出,很難靠重跑來挑出正確版本。因此,驗收除了看一次有沒有通過,還要看同一筆 case 能不能反覆通過。

重跑次數 k 得先固定,再收齊每次的判定,不能看到失敗就繼續跑,最後只留下成功的幾次。要把這樣的驗收放進每次修改 prompt 的流程,先算一次要花多少。

已保存的 45 趟,token 費用約 US$0.15

2026-09-16 用 gpt-5.4-mini 跑整份 dataset時,16 筆 case 預定各跑三次,最後留下 45 趟完整紀錄,三筆各缺一趟。以下用這批紀錄估算重跑預算。

每趟的 trajectory.json 有一份 usage,agent loop會把每次模型回覆的 prompt 與 completion token 累加進去。45 份加總後是 117,216 token,依 2026-09-29 OpenAI 官方模型頁列出的 Standard 單價換算:

類型 token 數 每百萬 token 單價 換算費用
input 99,973 US$0.75 US$0.0750
output 17,243 US$4.50 US$0.0776
合計 117,216 約 US$0.153

usage 沒有另記快取用量,這裡把 input 全按原價計算。不過,這個金額只涵蓋已保存的 token,缺的三趟可能已呼叫模型,卻沒有留下用量。runOnce 要等 agent 跑完才寫紀錄,不能把約 US$0.15 當成整輪帳單上限。

時間則從第一趟 model.json 的 startedAt 算到最後一趟的 finishedAt,相差 188.8 秒,約 3 分 9 秒。這段時間包含 agent 執行、給分、寫出產出紀錄,以及兩趟之間的間隔。

fixture 保存的是外部查詢回應,錄製與重播都仍會呼叫模型。這 45 趟完成紀錄沒有使用查資料工具,因此也不能拿這份帳推算正式環境查外部資料的費用與延遲。

每筆五次都過,16 筆都要達標

每趟先由 scorer 比對 goal state,也就是事先寫好的通過條件;所有受評欄位都過,整筆 case 才算通過。接著看同一筆的 k 次是否全過,這就是 pass^k。

使用者拿到的任何一次產出都可能被拿去開工,所以這裡選定的結果門檻是:

  • 固定同一份 dataset、通過條件與待驗收版本,16 筆 case 各跑 5 次。
  • 每筆的五次都要有完整產出與判定,而且每次都通過。
  • 全部 16 筆都達標,結果分數這一項才准放行,也就是 pass^5 要 16/16。

只要有一次被判定失敗,這筆就不符合要求。若缺產出或判定,則記為評估未完成,同樣不能放行,但要和 agent 的判定失敗分開記錄。

選五次是先採用一個負擔得起的重跑設定。按已保存的每趟平均用量推算,80 趟約 US$0.27;把這批 188.8 秒按 80/45 線性放大,約 5 分半。這個規模適合每次修改後等待一輪,仍要實跑確認費用與耗時。

增加次數能多觀察幾次同一筆 case 的結果,但五次全過也只代表這五次符合既有檢查,不能保證新 ticket 或下一次執行一定通過。每輪都要保留全部結果,失敗後先查原因,不能只重跑到通過為止。

現有結果還沒有一筆三次全過

這批的總表有 3 趟通過,分別來自 conflicting-truth-002、conflicting-truth-003、noise-over-signal-001,各通過一次,其餘 case 沒有通過紀錄。

按 45 趟已完成的判定計算,單次 case 通過率是 3/45。13 筆跑滿三次的 case,沒有一筆三次全過;另外三筆各只完成兩次。按「收齊三次且全過」的驗收條件,達標的是 0/16,三筆缺趟仍要另列為評估未完成。現有資料不足以支持五次全過的放行要求。

完成部分的 recall 是 78%,表示人工標好的問題有 78% 被找到;precision 是 34%,表示 agent 標出的問題有 34% 正確。這兩個比例與逐條算的通過率用來找問題,recall 不掉破七成也仍是改 prompt 時的診斷界線,不能取代每筆 case 的驗收。

即使未來達到 16/16,還要確認檢查涵蓋了什麼。目前 scorer 對摘要目標的 Goal 只檢查非空,內容判定還沒有接入;重跑五次不會補上這項檢查。覆寫 AC、tag 人等動作也仍由安全閘另外限制,結果分數通過不能代替這些限制。

總結

結果門檻選定為 16 筆 case 各跑五次、次次通過,缺趟另記為評估未完成。依目前紀錄粗估,80 趟約需 US$0.27、5 分半,費用與時間都還要由完整重跑確認。

目前 45 趟只通過 3 趟,沒有一筆 case 三次全過。既有 run-all 只產出報表,還要加入門檻判斷;Goal 內容檢查與安全閘的限制也仍須各自處理。


上一篇
Day 26|收不回的動作,要把 7 個工具逐個列出來
下一篇
# Day 28|分數掉了三個百分點,先補齊缺趟,再成對比較
系列文
30 天 AI eval 實戰:一隻 PM agent,改完之後怎麼確定它還是對的 共 28 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言