‫AlphaEvolve לתרחישי שימוש ב-HPC

בדף הזה מוצג פתרון ה-HPC‏ AlphaEvolve, שמאפשר להריץ ניסויים לאופטימיזציה של קוד מבוסס-קונטיינרים וניתן להרחבה ב- Google Cloud.

‫AlphaEvolve מסתמך על לולאה אבולוציונית איטרטיבית: הוא יוצר קוד מועמד, מודד את התאמת הקוד ומזין את התוצאות בחזרה ל-AlphaEvolve API כדי להנחות איטרציות עתידיות. פתרון ה-HPC של AlphaEvolve פורס תשתית מבוזרת באמצעות Cluster Toolkit,‏ Batch ו-Pub/Sub. הוא מתייחס לכל הערכת מועמד כאל משימה מבודדת וזמנית שפועלת במכונות וירטואליות (VM) בקונטיינרים עם משאבים רבים.

מתי כדאי להשתמש בפתרון AlphaEvolve HPC

אם עומס העבודה שלכם לא מתאים לסביבות רגילות, במקום להריץ הערכות באופן מקומי או במכונות של Cloud Run, אתם יכולים להשתמש בפתרון HPC של AlphaEvolve:

  • ההערכות נמשכות יותר מדי זמן: בעיות הקוד מורכבות ונמשכות יותר מדי זמן בהרצה מקומית, או שהן חורגות ממגבלות המשאבים וזמן הריצה של מכונות Cloud Run נפרדות.

  • אתם צריכים חומרה מיוחדת: ההערכות שלכם דורשות מאיצי חומרה (כמו GPUs או TPUs) או משפחות של מכונות HPC מותאמות לצריכת מעבד גבוהה (compute-optimized) (כמו מכונות H3).

  • אתם צריכים מקביליות בקנה מידה גדול: אתם רוצים ליצור ולהעריך כמה מימושים מועמדים בו-זמנית בסביבות מבודדות.

  • אתם רוצים להשתמש ב-Infrastructure as Code (IaC): אתם רוצים הגדרה אוטומטית שניתן לחזור עליה, שמפשטת את הפריסה והפירוק של אשכולות עם משאבים רבים כדי לחסוך במאמץ ובעלויות.

מה כולל פתרון ה-HPC של AlphaEvolve

פתרון ה-HPC של AlphaEvolve מספק תהליך מקצה לקצה להגדרה, לפריסה ולהפעלה של התשתית שנדרשת לבעיות אופטימיזציה של AlphaEvolve:

  • פריסה של תשתית בסיסית: משתמשים ב-Cluster Toolkit כדי לפרוס את תשתית הבסיס שנדרשת להפעלת אופטימיזציות. בשלב הזה מופעלים ממשקי ה-API הנדרשים, מוגדרים חשבונות שירות, ומוקצים נושא Pub/Sub וסביבת זמן ריצה של Colab Enterprise. אפשר להשתמש בתשתית הבסיסית הזו לכמה בעיות אופטימיזציה.

  • הגדרת סביבת התוכנה: הגדרה ופריסה של סביבת התוכנה לבעיית האופטימיזציה הספציפית שלכם.

  • הפעלת ניסויים: התחלה, עצירה וניתוח של ניסוי מתבצעים מתוך Jupyter Notebook שפועל ב-Colab Enterprise ומחובר לזמן הריצה המותאם אישית של Colab Enterprise.

איך AlphaEvolve פועל

אחרי שמגדירים ופורסים את הפתרון, תהליך האופטימיזציה של AlphaEvolve מתבצע באופן הבא:

  1. יצירה: הבקר מפעיל את AlphaEvolve API (שמבוסס על Gemini) כדי להציע קודים אפשריים על סמך מדד יעד והרצות מוצלחות קודמות.

  2. הערכה: המועמדים נבדקים במקביל לגבי נכונות וביצועים כמשימות Batch.

  3. אחסון: קובצי המועמדים שנוצרו, גרסאות קוד המקור ומדדי הבדיקה המספריים נשמרים בארכיון בקטגוריה מאובטחת של Cloud Storage. מכיוון שפתרון AlphaEvolve HPC מאחסן פריטי מידע ניסיוניים בקטגוריה של Cloud Storage, אתם יכולים להסיר את התשתית כשהיא לא בשימוש.

  4. משוב: יומני התוצאות והתובנות נשלחים בחזרה ל-AlphaEvolve API, כדי שהוא יוכל ללמוד מההצלחות ומהכישלונות ולדגום קוד טוב יותר בדור הבא.

פתרון AlphaEvolve HPC פורס את המשאבים כמתואר בדיאגרמת הארכיטקטורה הבאה. תהליך העבודה של AlphaEvolve

פריסת פתרון ה-HPC של AlphaEvolve

כדי לפרוס את התשתית הבסיסית, ליצור את קובצי האימג' של הקונטיינרים ולהריץ את ניסויי האופטימיזציה:

  1. נכנסים למאגר של AlphaEvolve HPC ב-GitHub ופועלים לפי ההוראות.