為 AlphaEvolve 評估架構設計評估指標時,請建立下列三個不同的測試層級。
第 1 層:解決方案驗證測試
這些測試會在完整執行前,驗證基本程式碼執行安全性和政策遵循情形。
執行安全性:確認程式碼是否會執行。包括檢查語法、編譯時間、執行靜態分析,以及檢查基礎架構相容性。
執行政策:判斷是否應執行程式碼,即使程式碼可正常運作也一樣。包括 Linting、一般程式碼品質檢查、資訊安全審查、風險和法規遵循驗證,以及 API 供應鏈檢查。
注意事項:
如果驗證失敗,請傳回高負分,例如
-10000或-100000。AlphaEvolve 會忽略這些程式。請附上失敗類型和記錄,以利進行偵錯。雖然 AlphaEvolve 不會將這項中繼資料做為搜尋信號,但可用於事後分析失敗模式。
第 2 級:解決方案驗證測試
這些測試會使用單元和功能測試,驗證演算法的正確性,以及是否符合限制。
功能準確度:使用單元和功能測試,驗證程式碼是否正常運作。
遵守限制:驗證解決方案可行性或是否符合限制。
減少獎勵遭濫用的情況:將驗證分數套用為適應度函式的負面懲罰,防止獎勵遭濫用。如果斷言分數為
-10000或-100000,就能有效處罰。
注意事項:
傳回通過的測試數量或百分比。這個方法會提供漸層信號;如果程式通過 5 項測試中的 4 項,系統會認定該程式比通過 0 項測試的程式更接近正確答案。
將驗證視為滿足軟性限制。即使是嚴格的系統限制,根據可行空間的鄰近程度將其表示為軟性處罰,也能為 AlphaEvolve 提供比二進位通過或失敗更具參考價值的搜尋信號。
第 3 層:解決方案評估測試 (效能測試)
這些測試會根據最佳化目標類型,評估客觀成效指標。
直接評估:在允許使用儀器的地方,直接追蹤目標。
確定性估算:以分析方式計算目標,適用於傳統作業研究風格。
樣本外驗證:針對涉及機器學習管道最佳化或代理程式調整的用途,根據驗證資料集進行測試。
模擬估算:使用馬可夫鏈蒙地卡羅 (MCMC) 模擬、貝氏最佳化類型 Proxy 函式或其他模型方法。
注意事項:
傳回詳細和匯總分數。
請勿將分數計算作業卸載至 LLM,而是在評估器輔助程式中以決定性方式計算分數。AlphaEvolve 會根據預先計算的總體效能分數,進行爬坡訓練。
部分功勞會提供漸層信號,加快搜尋收斂速度。舉例來說,如果程式通過 5 項測試中的 4 項,應獲得
0.8分,而非None分。如果傳回None,AlphaEvolve 會完全忽略該程式,導致無法取得實用意見。如果分數為0.8,表示候選字詞接近正確,且有最佳化的潛力。