最佳化目標代表 AlphaEvolve 在每個世代中盡可能提高的單一數字。撰寫任何評估人員程式碼前,請先回答下列三個問題:
這個數字代表什麼值?
系統如何計算?
運算作業會在何處執行?
AlphaEvolve 嚴格要求對每個候選解決方案進行自動化、程式輔助的目標計算,不需人為介入。這項自動化作業讓 AlphaEvolve 適合解決這個問題。如果必須由專人判斷解決方案的品質,AlphaEvolve 就無法搜尋。
請考量下列事項,評估產生的候選解決方案在不同最佳化目標和驗證限制條件下的成效:
- 最佳化目標是否可以直接使用業務或產品邏輯計算,而不需要經驗測量?
- 能否直接對生成的解決方案程式碼執行效能和負載測試,藉此評估最佳化目標?
- 是否能使用確定性代理函式,或可靠的模擬方法,來估算最佳化目標?
- 是否可以設計自訂代理函式 (例如預測模型或其他非確定性估算工具),透過調整經驗觀察值和驗證樣本外資料,來估算最佳化目標?
量化目標的核心步驟
請採用結構化做法,確保 AlphaEvolve 具有可靠的自動意見回饋循環,引導搜尋。請完成下列步驟,建立指標、定義指標的評估方式,並決定執行評估的位置。
1. 將目標表示為單一分數,分數會隨著解決方案改善而提高
設定核心最佳化指標,使其隨著實際成效提升而線性或單調地擴充,讓搜尋路徑有明確的方向梯度。
純量值最大化:AlphaEvolve 一律會盡量提高一個純量值。將您重視的任何指標轉換為單一數字,數字越高越好。如要盡量減少延遲、成本或錯誤,請否定這項指標:
score = -latency_ms單調性:分數必須是單調的,只要解決方案確實改善,分數就必須上升。如果分數不一致,搜尋就無法朝任何方向攀升。
確定性執行:分數一律由評估工具計算,不會由 LLM 或人員計算。以確定性方式計算,確保相同的候選項目一律獲得相同分數。
主觀目標的聯合分析:如果您無法編寫評分公式,但可以透過肉眼比較兩種解決方案,請使用聯合分析建立一個。生成多組候選輸出內容,請領域專家從每組中挑選較佳的內容,根據這些選擇擬合邏輯迴歸,並將擬合的模型做為指標。這會將主觀判斷轉化為可區分的確定性分數。請勿將原始 LLM 評分標準做為即時分數,因為這種做法速度慢、雜訊多,且容易遭到獎勵駭客攻擊;請先將其精煉為固定函式。
2. 選擇分數計算方式
產生數字的方式取決於您要評估的項目。請從表格中選擇符合目標的方法。幾乎所有實際部署作業都會使用這四種方法之一,許多作業會結合兩種方法,一種是成本較低的方法,用於進行搜尋,另一種是成本較高的方法,用於確認獲勝者。
| 評估方法 | 適用目標: | 分數的計算方式 | 執行條件 |
|---|---|---|---|
| 直接計算 | 您可以使用業務或產品邏輯,從候選模型的輸出內容中,以封閉形式計算出的數量 | 評估者執行候選人並套用公式 (總和、比率、計數、費用) | 控制器本身的程序,不需額外基礎架構 |
| 效能或負載測試 | 候選程式碼本身的執行階段、處理量或記憶體 | 在代表性硬體上執行候選模型並進行評估;先確認正確性 | 目標硬體 (GPU、TPU 或 CPU);暖機和 N 選 1 策略,可減少時間雜訊 |
| 確定性替代 / 模擬 | 直接評估的成本高昂或雜訊過多,但有可靠的替代指標或可重現實際情況 | 計算確定性 Proxy,或重播固定的種子作業情境 | 任何環境;可使用固定種子完全重現 |
| 樣本外驗證 | 候選人產生的模型或資料管道品質 | 訓練/調整候選模型,然後根據保留或新生成的資料進行評分 | 訓練/評估堆疊;嚴格的訓練與驗證分割;在保留集上重新驗證獲勝者 |
詳情請參閱 Google Cloud 網誌上的 AlphaEvolve 公告。
如果這些方法都無法自動產生數字,表示問題尚未準備好交由 AlphaEvolve 處理。因此,核心任務是建構可執行的替代模型或模擬。
3. 處理多個目標和限制
實際目標通常會結合多個考量。你可以透過下列兩種方式處理這些要求:
純量混合 (最簡單,建議從這個方法開始):將每個指標重新調整至可比較的範圍,然後將要最小化的指標取反,最後加總:score = w1*A - w2*L - w3*M。
優先使用加總,而非 A/(L⋅M) 等比率,因為這些比率在數值上不穩定。
傳回命名分數的字典:讓 AlphaEvolve 共同最佳化這些分數。評估器可以傳回多個具名指標,而非單一數字:
```JSON
{
"scores": [
{"metric": "accuracy", "score": 0.95},
{"metric": "latency_ms", "score": -120.0}
]
}
```
每項指標都是越高越好,因此請將要最小化的指標取負值。這會觸發真正的多目標搜尋,而不只是回報:母體資料庫會保留每個指標的最佳程式 (MAP-Elites)、維護各指標的柏拉圖前沿,並在不同指標中取樣多樣化的父項。如果啟用這項取樣功能,系統也可以直接從帕累托前沿繪製父項。單一廣告標題分數仍會影響所回報的爬山圖,但每個傳回的指標都會影響搜尋結果。
維持 3 到 5 個指標:如果指標過多,柏拉圖優勢會退化,幾乎每個程式在某些方面都非優勢,搜尋也會變得漫無目的。匯總或捨棄超過該門檻的指標。
區分正確性和可行性:將正確性視為硬性門檻,而非獎勵函式的一部分。無論候選答案的速度多快或成本多低,只要錯誤或不可行,就會獲得失敗分數。這是防止代理操弄指標的主要防禦機制。
限制最佳化:將一個目標設為限制,並最佳化另一個目標,在違反限制時套用懲罰。在多個限制層級執行這項工作流程,即可找出柏拉圖前沿。
4. 決定評估工具的執行位置
AlphaEvolve 絕不會直接執行評估器,它會提出候選程式並接收分數;您則負責託管及執行計算分數的程式碼。環境完全由您選擇,無法在Google Cloud 上執行的候選項目並非阻礙。您可以在任何可評估目標的地方執行評估器,並提交分數。
為確保部署作業有效率且安全,您必須根據特定評估策略調整運算基礎架構,同時遵守通用執行限制。請按照下列規範選取執行環境,並瞭解適用於所有設定的核心作業界線。
根據評估方法選擇執行環境
直接計算或替代:控制器的自有程序,或單一 Cloud Run 容器。
效能或負載測試:目標硬體,例如 GKE 上的 GPU 或 TPU 節點、您自己的地端部署或自訂硬體,或第三方或 ISV 工具 (例如 EDA 或 Verilog 模擬器)。
樣本外驗證或大量工作:您的訓練堆疊已分散到 Cloud Run 或 GKE,或使用 Cluster Toolkit 卸載至Google Cloud 批次,以處理大型 HPC 或加速器工作負載。
無論環境為何,都適用以下兩項限制
盡量將每次評估控制在 10 分鐘內,讓演進循環持續進行。如果是成本高昂的目標,請使用評估層疊,檢查每個候選項目,只對有希望的項目執行完整評估。
評估工具的網路、安全性和存取控管機制由您控管。AlphaEvolve 不會在 Google Cloud或任何其他位置部署或管理評估器。
決定指標、計算方式和執行位置後,請參閱評估工具實作模式,瞭解如何建構評估工具。