LLM Harness Lab

先改框架再談模型:評測可信度/可回歸/可交付

把你的 coding eval harness 變可靠

這個工具會把「框架常見失敗模式」轉成可交付的改善計畫(Before/After + 驗收標準),並提供 taskset 範本,方便你把 eval 從 demo 升級成可用的工程系統。

你會得到

  • • 改善目標與優先順序
  • • Before/After 對照(可交付)
  • • 驗收標準(可寫成 CI gate)

適合誰

  • • 正在做 coding eval 的團隊
  • • 想降低返工/幻覺的 PM/Tech Lead
  • • 想比較模型但先卡在 harness

INPUT

填入你的現況

不需要上傳程式碼;只要描述目前 harness 的狀態。

繁中介面

OUTPUT

改善目標(建議順序)

  • 把『成功』定義成可驗收的條件,而不是主觀感覺
  • 降低 flaky(不穩定)導致的誤判,讓回歸可信
  • 讓每次評測都有 evidence(diff/log/trace),便於 debug
  • 把成本/時間變成可談判的指標(而非不可控的黑洞)

評分/驗收

Before/After

Before

只有『跑起來/看起來 OK』,缺少機器可判定的通過門檻

After

每個任務都有 3 層門檻:功能測試(must)/品質(should)/風險(must-not)

驗收標準

  • 每個任務至少 1 個 must(自動判定)與 1 個 must-not(避免投機)
  • 評分腳本輸出 JSON:{passed:boolean, reasons:string[], evidencePaths:string[]}
  • 引入『部分分數』但保留 hard fail(例如安全/資料外洩)

回歸/版本控

Before/After

Before

資料集/提示詞/工具版本未鎖定,結果難以重現

After

把 harness 當產品:dataset + prompts + judge + tools 都可版本化、可回放

驗收標準

  • 每次跑評測都有 run id(含 git sha + dataset hash + prompt hash)
  • 同一 run id 可重跑並得到相同結論(誤差可解釋)
  • 新增 regression gate:PR 必須不低於基準 pass rate / cost 上限

可追溯性

Before/After

Before

只有總分,找不到哪裡壞、為什麼壞

After

每題輸出 evidence bundle:diff、關鍵 log、測試失敗片段、模型輸出原文

驗收標準

  • 每題至少保存:輸入/輸出/評分理由/關鍵檔案 diff
  • 提供一鍵『重播』:用同樣 seed/工具/依賴重新執行該題
  • UI 允許依 failure mode 分類瀏覽(例如:依賴錯誤/測試失敗/格式不符)

資料集

Before/After

Before

題目偏單一、或與真實工作脫節,容易被投機

After

以『真實工單形狀』建資料集:涵蓋 failure modes、難度、上下文大小

驗收標準

  • 每個 task 有:背景、限制、驗收條件、反投機條款
  • 至少 20% 任務是『修 bug + 需新增測試』,避免只改表面
  • 加入 canary tasks(很簡單但常犯錯)與 trap tasks(反作弊)

成本/速度

Before/After

Before

只看 pass rate,成本/時間無上限

After

把成本/時間變成 first-class 指標:設定 SLA 與 budget

驗收標準

  • 每個 run 產出成本報表:平均/分位數(p50/p90)
  • 設 cost cap:超過即 fail(或降級策略:少取樣/低價模型/judge 簡化)
  • 加入快取:相同輸入不重複付費(內容 hash)

隔離/安全

Before/After

Before

harness 執行環境權限過大,可能造成資料外洩或破壞

After

在評測層引入最小權限:網路/檔案/指令白名單 + 事件審計

驗收標準

  • 預設禁網路(或只允許 allowlist),避免 prompt injection 造成 exfil
  • 沙盒化:每題用乾淨 workspace,跑完自動清理
  • 所有工具呼叫可審計(command, args, exitCode, duration)

觀測/儀表板

Before/After

Before

結果散在 log 裡,難以對比 before/after

After

建立最小儀表板:pass rate / flake / cost / latency / top failure modes

驗收標準

  • 同一任務可以對比兩個版本(baseline vs candidate)
  • 顯示 top 10 失敗原因與趨勢(最近 N 次 run)
  • 能篩選:task type / difficulty / context size / tool usage