Eval Harness 技能
Claude Code 工作階段的正式評估框架,實作 eval 驅動開發(EDD)原則。
理念
Eval 驅動開發將 evals 視為「AI 開發的單元測試」:
- 在實作前定義預期行為
- 開發期間持續執行 evals
- 每次變更追蹤回歸
- 使用 pass@k 指標進行可靠性測量
Eval 類型
能力 Evals
測試 Claude 是否能做到以前做不到的事:
回歸 Evals
確保變更不會破壞現有功能:
評分器類型
1. 基於程式碼的評分器
使用程式碼的確定性檢查:
2. 基於模型的評分器
使用 Claude 評估開放式輸出:
3. 人工評分器
標記為手動審查:
指標
pass@k
「k 次嘗試中至少一次成功」
- pass@1:第一次嘗試成功率
- pass@3:3 次嘗試內成功
- 典型目標:pass@3 > 90%
pass^k
「所有 k 次試驗都成功」
- 更高的可靠性標準
- pass^3:連續 3 次成功
- 用於關鍵路徑
Eval 工作流程
1. 定義(編碼前)
2. 實作
撰寫程式碼以通過定義的 evals。
3. 評估
4. 報告
整合模式
實作前
在 .claude/evals/feature-name.md 建立 eval 定義檔案
實作期間
執行當前 evals 並報告狀態
實作後
產生完整 eval 報告
Eval 儲存
在專案中儲存 evals:
最佳實務
- 編碼前定義 evals - 強制清楚思考成功標準
- 頻繁執行 evals - 及早捕捉回歸
- 隨時間追蹤 pass@k - 監控可靠性趨勢
- 可能時使用程式碼評分器 - 確定性 > 機率性
- 安全性需人工審查 - 永遠不要完全自動化安全檢查
- 保持 evals 快速 - 慢 evals 不會被執行
- 與程式碼一起版本化 evals - Evals 是一等工件


