AlphaEvolve per i casi d'uso HPC

Questa pagina presenta la soluzione HPC AlphaEvolve, che ti consente di eseguire esperimenti di ottimizzazione del codice containerizzato e scalabile su Google Cloud.

AlphaEvolve si basa su un ciclo evolutivo iterativo: genera codice candidato, misura l'idoneità del codice e restituisce i risultati all'API AlphaEvolve per guidare le iterazioni future. La soluzione HPC AlphaEvolve esegue il deployment di un'infrastruttura distribuita utilizzando Cluster Toolkit, Batch e Pub/Sub. Considera ogni valutazione dei candidati come un job effimero isolato che viene eseguito su macchine virtuali (VM) containerizzate con risorse elevate.

Quando utilizzare la soluzione HPC AlphaEvolve

Anziché eseguire le valutazioni localmente o sulle istanze di Cloud Run, utilizza la soluzione HPC AlphaEvolve se il tuo carico di lavoro non rientra negli ambienti standard:

  • Le valutazioni richiedono troppo tempo:i problemi del codice sono complessi e richiedono troppo tempo per essere eseguiti localmente oppure superano i limiti di risorse e runtime delle singole istanze di Cloud Run.

  • Hai bisogno di hardware specializzato:le valutazioni richiedono acceleratori hardware (come GPU o TPU) o famiglie di macchine HPC ottimizzate per il calcolo (come le istanze H3).

  • Hai bisogno di parallelismo su larga scala:vuoi creare e valutare più realizzazioni candidate contemporaneamente in ambienti isolati.

  • Vuoi Infrastructure as Code (IaC) : vuoi una configurazione ripetibile e automatizzata che semplifichi il deployment e l'eliminazione dei cluster con risorse elevate per risparmiare tempo e costi.

Che cosa offre la soluzione HPC AlphaEvolve

La soluzione HPC AlphaEvolve fornisce un flusso end-to-end per la configurazione, il deployment e l'esecuzione dell'infrastruttura richiesta per i problemi di ottimizzazione di AlphaEvolve:

  • Deployment dell'infrastruttura di base: utilizza Cluster Toolkit per eseguire il deployment dell'infrastruttura di base richiesta per l'esecuzione delle ottimizzazioni. In questo passaggio, vengono attivate le API necessarie, vengono configurati i service account e viene eseguito il provisioning di un argomento Pub/Sub e di un runtime di Colab Enterprise. Questa infrastruttura di base può essere riutilizzata per più problemi di ottimizzazione.

  • Configurazione dell'ambiente software: configura ed esegui il deployment dell'ambiente software per il tuo problema di ottimizzazione specifico.

  • Esecuzione degli esperimenti: l'avvio, l'arresto e l'analisi di un esperimento vengono eseguiti da un blocco note Jupyter in esecuzione in Colab Enterprise connesso al runtime personalizzato di Colab Enterprise.

Come funziona AlphaEvolve

Dopo aver configurato ed eseguito il deployment della soluzione, il processo di ottimizzazione di AlphaEvolve viene eseguito nel seguente modo:

  1. Generazione: il controller richiama l'API AlphaEvolve (basata su Gemini) per proporre candidati di codice in base a una metrica target e alle esecuzioni precedenti riuscite.

  2. Valutazione: i candidati vengono valutati per la correttezza e il rendimento in parallelo come job Batch.

  3. Archiviazione: i file candidati generati, le revisioni del codice sorgente e le metriche di test numeriche vengono archiviati in un bucket Cloud Storage sicuro. Poiché la soluzione HPC AlphaEvolve archivia gli artefatti sperimentali nel bucket Cloud Storage, puoi eliminare l'infrastruttura quando non è in uso.

  4. Feedback: i log di risultati e approfondimenti vengono restituiti all'API AlphaEvolve, consentendole di imparare da successi e insuccessi e di campionare in modo intelligente un codice migliore nella prossima generazione.

La soluzione HPC AlphaEvolve esegue il deployment delle risorse come descritto nel seguente diagramma dell'architettura. Workflow di esecuzione di AlphaEvolve

Esegui il deployment della soluzione HPC AlphaEvolve

Per eseguire il deployment dell'infrastruttura di base, creare le immagini container ed eseguire gli esperimenti di ottimizzazione:

  1. Vai al repository GitHub di AlphaEvolve HPC e segui le istruzioni.