Cette page présente la solution HPC AlphaEvolve, qui vous permet d'exécuter des tests d'optimisation de code conteneurisés et évolutifs sur Google Cloud.
AlphaEvolve s'appuie sur une boucle d'évolution itérative : il génère du code candidat, mesure l'adéquation du code et renvoie les résultats à l'API AlphaEvolve pour guider les futures itérations. La solution HPC AlphaEvolve déploie une infrastructure distribuée à l'aide de Cluster Toolkit, de Batch et de Pub/Sub. Il traite chaque évaluation de candidat comme un job isolé et éphémère qui s'exécute sur des machines virtuelles (VM) conteneurisées et dotées de ressources importantes.
Quand utiliser la solution HPC AlphaEvolve ?
Au lieu d'exécuter des évaluations localement ou sur des instances Cloud Run, utilisez la solution HPC AlphaEvolve si votre charge de travail ne correspond pas aux environnements standards :
Les évaluations prennent trop de temps : vos problèmes de code sont complexes et prennent trop de temps à s'exécuter localement, ou ils dépassent les limites de ressources et d'exécution des instances Cloud Run individuelles.
Vous avez besoin de matériel spécialisé : vos évaluations nécessitent des accélérateurs matériels (tels que des GPU ou des TPU) ou des familles de machines HPC optimisées pour le calcul (comme les instances H3).
Vous avez besoin d'un parallélisme à grande échelle : vous souhaitez créer et évaluer plusieurs réalisations candidates simultanément dans des environnements isolés.
Vous souhaitez utiliser l'Infrastructure as Code (IaC) : vous souhaitez une configuration automatisée et reproductible qui simplifie le déploiement et la suppression des clusters à ressources élevées afin de réduire les efforts et les coûts.
Avantages de la solution HPC AlphaEvolve
La solution HPC AlphaEvolve fournit un flux de bout en bout pour la configuration, le déploiement et l'exécution de l'infrastructure requise pour les problèmes d'optimisation AlphaEvolve :
Déploiement de l'infrastructure de base : utilisez Cluster Toolkit pour déployer l'infrastructure de base requise pour exécuter les optimisations. Au cours de cette étape, les API nécessaires sont activées, les comptes de service sont configurés, et un sujet Pub/Sub ainsi qu'un environnement d'exécution Colab Enterprise sont provisionnés. Cette infrastructure de base peut être réutilisée pour plusieurs problèmes d'optimisation.
Configuration de l'environnement logiciel : configurez et déployez l'environnement logiciel pour votre problème d'optimisation spécifique.
Exécution des tests : le démarrage, l'arrêt et l'analyse d'un test sont effectués à partir d'un notebook Jupyter exécuté dans Colab Enterprise connecté à l'environnement d'exécution Colab Enterprise personnalisé.
Fonctionnement d'AlphaEvolve
Après avoir configuré et déployé la solution, le processus d'optimisation AlphaEvolve s'exécute comme suit :
Génération : le contrôleur appelle l'API AlphaEvolve (optimisée par Gemini) pour proposer des candidats de code en fonction d'une métrique cible et des exécutions réussies précédentes.
Évaluation : les candidats sont évalués en parallèle pour vérifier leur exactitude et leurs performances en tant que jobs Batch.
Stockage : les fichiers candidats générés, les révisions du code source et les métriques de test numériques sont archivés dans un bucket Cloud Storage sécurisé. Étant donné que la solution HPC AlphaEvolve stocke les artefacts expérimentaux dans le bucket Cloud Storage, vous pouvez supprimer l'infrastructure lorsqu'elle n'est pas utilisée.
Commentaires : les résultats et les journaux d'insights sont renvoyés à l'API AlphaEvolve, ce qui lui permet d'apprendre des réussites et des échecs, et d'échantillonner intelligemment un meilleur code dans la génération suivante.
La solution HPC AlphaEvolve déploie les ressources comme décrit dans le diagramme d'architecture suivant.

Déployer la solution HPC AlphaEvolve
Pour déployer l'infrastructure de base, créer les images de conteneurs et exécuter vos tests d'optimisation, procédez comme suit :
- Accédez au dépôt GitHub AlphaEvolve HPC et suivez les instructions.