最佳化目標代表 AlphaEvolve 在每個世代中最大化的單一數字。編寫任何評估工具程式碼之前,請先回答以下三個問題:
這個數字代表什麼值?
系統如何計算?
運算作業在哪裡執行?
AlphaEvolve 嚴格要求對每個候選解決方案進行自動化、程式化的目標計算,不需人為介入。這項自動化功能讓 AlphaEvolve 成為解決問題的理想選擇。如果必須由人工判斷解決方案的品質,AlphaEvolve 就無法搜尋。
請考量下列事項,評估產生的候選解決方案在不同最佳化目標和驗證限制條件下的成效:
- 最佳化目標是否可以直接使用業務或產品邏輯計算,而不需要經驗測量?
- 是否能直接對生成的解決方案程式碼執行效能和負載測試,藉此評估最佳化目標?
- 是否能使用確定性代理函式或可靠的模擬方法,估算最佳化目標?
- 是否能設計自訂代理函式 (例如預測模型或其他非確定性估算器),透過調整經驗觀察值和驗證樣本外資料,來估算最佳化目標?
量化目標的核心步驟
請按照結構化方法,確保 AlphaEvolve 具備可靠的自動化意見回饋循環,引導搜尋作業。請完成下列步驟,建立指標、定義評估方式,以及決定執行位置。
1. 將目標表示為單一分數,分數會隨著解決方案改善而提高
設定核心最佳化指標,使其隨著實際成效提升而線性或單調地擴充,讓搜尋路徑有明確的方向梯度。
純量最大化:AlphaEvolve 一律會將一個純量值最大化。將您重視的任何指標轉換為單一數字,數字越高越好。如要盡可能減少延遲、成本或錯誤,請將其否定:
score = -latency_ms單調性:分數必須是單調的,只要解決方案確實改善,分數就必須上升。如果分數變動不一致,搜尋就無法朝特定方向提升。
確定性執行:分數是由評估工具計算,而非 LLM 或人工。以確定性方式計算,確保相同的候選項目一律獲得相同的分數。
主觀目標的聯合分析:如果您無法編寫評分公式,但可以透過肉眼比較兩種解決方案,請使用聯合分析建立一個公式。生成多組候選輸出內容,請領域專家從每組中挑選較佳的內容,根據這些選擇擬合邏輯迴歸,並將擬合的模型做為指標。這能將主觀判斷轉化為確定、可區分的評分。請勿將原始 LLM 評分標準做為即時分數,因為這種做法速度慢、雜訊多,且容易遭到獎勵駭客攻擊;請先將其精煉為固定函式。
2. 選擇分數計算方式
產生數字的方式取決於您要評估的項目。請從表格中選擇符合目標的方法。幾乎所有實際部署作業都會使用這四種方法之一,許多部署作業會結合兩種方法,一種是低成本方法,用於推動搜尋,另一種是高成本方法,用於確認勝出者。
| 評估方法 | 適用目標: | 分數的計算方式 | 執行條件 |
|---|---|---|---|
| 直接計算 | 您可以使用業務或產品邏輯,從候選模型的輸出內容中,以封閉形式計算出的數量 | 評估工具會執行候選項目,並套用公式 (總和、比率、計數、費用) | 控制器本身的程序,不需額外基礎架構 |
| 效能或負載測試 | 候選程式碼本身的執行階段、處理量或記憶體 | 在代表性硬體上執行候選模型並進行評估;先確認正確性 | 目標硬體 (GPU、TPU 或 CPU);暖機和 Best-of-N,可減少時間雜訊 |
| 確定性代理/模擬 | 直接測量成本高昂或雜訊過多,但有可靠的替代指標或實際情況重播 | 計算確定性代理,或重播固定的種子作業情境 | 任何環境;使用固定種子可完全重現 |
| 樣本外驗證 | 應徵者產出的模型或資料管道品質 | 訓練/擬合候選模型,然後根據保留或新生成的資料評分 | 訓練/評估堆疊;嚴格區分訓練和驗證;在保留集上重新驗證勝出者 |
詳情請參閱 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 將大型 HPC 或加速器工作負載卸載至Google Cloud 批次。
無論環境為何,都適用兩項限制
盡量將每次評估控制在 10 分鐘內,讓演進循環持續進行。如果目標成本高昂,請使用評估串聯,對每個候選項目進行檢查,只對有潛力的項目執行完整評估。
評估工具的網路、安全性和存取控管機制由您控管。AlphaEvolve 不會在 Google Cloud或任何其他地方部署或管理評估器。
決定指標、計算方式和執行位置後,請參閱評估工具實作模式,瞭解如何建構評估工具。