פייפליינים של Agent Platform מאפשרים להפעיל פייפליינים של למידת מכונה (ML) שנבנו באמצעות Kubeflow Pipelines SDK או TensorFlow Extended באופן שאינו דורש שרת. במאמר הזה מוסבר איך להפעיל פייפליין של למידת מכונה.
אפשר גם ליצור הרצות של צינורות באמצעות תבניות מוכנות מראש בגלריית התבניות. מידע נוסף על גלריית התבניות
אתם יכולים להשתמש ב-Gemini Enterprise Agent Platform Experiments כדי לעקוב אחרי הרצות של צינורות, לנתח אותן ולהשוות ביניהן על ידי שיוך ההרצות של צינורות לניסוי או להרצה של ניסוי. השוואה בין הפרמטרים, התוצאות ומדדי הביצועים של הרצות צינור עיבוד הנתונים מאפשרת לזהות את תצורת צינור עיבוד הנתונים שהכי מתאימה לתרחיש השימוש שלכם. מידע נוסף זמין במאמר מבוא לניסויים ב-Gemini Enterprise Agent Platform.
לפני שמתחילים
לפני שמריצים צינור עיבוד נתונים באמצעות Agent Platform Pipelines, צריך להשתמש בהוראות הבאות כדי להגדיר אתGoogle Cloud הפרויקט וסביבת הפיתוח:
כדי להריץ צינור באמצעות Agent Platform SDK ל-Python, צריך להתקין את Vertex SDK.
- מתקינים את Agent Platform SDK.
יצירת הפעלה של צינור עיבוד נתונים
פועלים לפי ההוראות הבאות כדי להריץ צינור ML באמצעות מסוף Google Cloud או Python.
המסוף
כדי להריץ צינור ML באמצעות מסוף Google Cloud , פועלים לפי ההוראות הבאות.
במסוף Google Cloud , בקטע Agent Platform, עוברים לדף Pipelines.
ברשימה הנפתחת Region, בוחרים את האזור שבו רוצים ליצור את ההרצה של צינור העיבוד.
לוחצים על Create run (יצירת הרצה) כדי לפתוח את החלונית Create pipeline run (יצירת הרצת צינור).
בקטע Run details (פרטי ההפעלה), מבצעים את הפעולות הבאות:
לוחצים על הפעלת מקור. אלו האפשרויות הזמינות:
בחירה מתוך צינורות קיימים: כדי ליצור הפעלה של צינור על סמך תבנית קיימת של צינור, לוחצים על בחירה מתוך צינורות קיימים ומזינים את הפרטים הבאים:
בוחרים את המאגר שמכיל את קובץ ההגדרה של הצינור או הרכיב.
בוחרים את הצינור או הרכיב ואת הגרסה.
מציינים שם הפעלה כדי לזהות באופן ייחודי את הפעלת צינור עיבוד הנתונים.
בחירת צינור מגלריית התבניות: כדי ליצור הפעלה של צינור שמבוסס על תבנית צינור שנוצרה על ידי Google מגלריית התבניות, לוחצים על בחירת צינור מגלריית התבניות ומזינים את הפרטים הבאים:
ברשימה Template Gallery pipeline, בוחרים את תבנית צינור העיבוד.
אופציונלי: משנים את שם ההרצה שמוגדר כברירת מחדל, שמזהה באופן ייחודי את הרצת צינור עיבוד הנתונים.
העלאת קובץ: כדי להעלות הגדרה של צינור שעבר קומפילציה, לוחצים על העלאת קובץ ומזינים את הפרטים הבאים:
לוחצים על עיון כדי לפתוח את בורר הקבצים. עוברים לקובץ ה-YAML של צינור העברת הנתונים שרוצים להפעיל, בוחרים את צינור העברת הנתונים ולוחצים על פתיחה.
שם הצינור או הרכיב מציג את השם שצוין בהגדרת הצינור, כברירת מחדל. אפשר גם לציין שם אחר לצינור.
מציינים שם הפעלה כדי לזהות באופן ייחודי את הפעלת צינור עיבוד הנתונים.
ייבוא מ-Cloud Storage: כדי לייבא קובץ הגדרת צינור מ-Cloud Storage, לוחצים על ייבוא מ-Cloud Storage ומזינים את הפרטים הבאים:
לוחצים על Browse כדי לעבור אל קטגוריית Cloud Storage שמכילה את אובייקט הגדרת צינור הנתונים, בוחרים את הקובץ ולוחצים על Select.
אפשרות אחרת היא להזין את ה-URI של Cloud Storage או את כתובת ה-URL של HTTP/HTTPS של קובץ הגדרת הצינור.
מציינים את שם הצינור או הרכיב.
מציינים שם הפעלה כדי לזהות באופן ייחודי את הפעלת צינור עיבוד הנתונים.
אופציונלי: כדי לתזמן הפעלות חוזרות של צינורות, מציינים את לוח הזמנים להפעלה באופן הבא:
בוחרים באפשרות תשלום חוזר.
בקטע שעת התחלה, מציינים מתי לוח הזמנים יתחיל לפעול.
כדי לתזמן את ההפעלה הראשונה כך שתתרחש מיד לאחר יצירת התזמון, בוחרים באפשרות Immediately (מיד).
כדי לתזמן את ההרצה הראשונה כך שתתרחש בשעה ובתאריך ספציפיים, בוחרים באפשרות בתאריך.
בשדה תדירות, מציינים את התדירות לתזמון ולהפעלה של צינורות עיבוד הנתונים, באמצעות ביטוי לתזמון cron שמבוסס על unix-cron.
בקטע סיום, מציינים מתי התזמון מסתיים.
כדי לציין שהתזמון יוצר הפעלות של צינורות ללא הגבלת זמן, בוחרים באפשרות אף פעם.
כדי לציין שהתזמון מסתיים בתאריך ובשעה ספציפיים, בוחרים באפשרות בתאריך ומציינים את תאריך הסיום ואת שעת הסיום של התזמון.
אופציונלי: כדי לציין שהרצת צינור העיבוד תשתמש בחשבון שירות מותאם אישית, במפתח הצפנה בניהול הלקוח (CMEK) או ברשת VPC מקושרת, לוחצים על אפשרויות מתקדמות ופועלים לפי ההוראות הבאות:
כדי לציין חשבון שירות, בוחרים חשבון שירות מהתפריט הנפתח Service account.
אם לא מציינים חשבון שירות, צינורות עיבוד נתונים של Agent Platform מריצים את צינור עיבוד הנתונים באמצעות חשבון השירות שמוגדר כברירת מחדל של Compute Engine.
מידע נוסף על הגדרת חשבון שירות לשימוש ב-Agent Platform Pipelines
כדי להשתמש במפתח CMEK, בוחרים באפשרות שימוש במפתח הצפנה בניהול הלקוח. מופיע התפריט הנפתח בחירת מפתח בניהול הלקוח. ברשימה הנפתחת בחירת מפתח בניהול הלקוח, בוחרים את המפתח שרוצים להשתמש בו.
כדי להשתמש ברשת VPC מקושרת בהרצת צינור הנתונים הזו, מזינים את השם של רשת ה-VPC בתיבה Peered VPC network (רשת VPC מקושרת).
לוחצים על Continue.
בקטע Runtime configuration (הגדרות זמן ריצה), מגדירים את הפעלת צינור עיבוד הנתונים באופן הבא:
בקטע Cloud storage location (מיקום ב-Cloud Storage), לוחצים על Browse (עיון) כדי לבחור את הקטגוריה של Cloud Storage שבה יישמרו פריטי הפלט של הפייפליין, ואז לוחצים על Select (בחירה).
אופציונלי: כדי להגדיר את מדיניות הכשל ואת מטמון ההפעלה של צינור העיבוד, לוחצים על אפשרויות מתקדמות ופועלים לפי ההוראות הבאות:
בקטע מדיניות בנושא כשלים, מציינים את המדיניות בנושא כשלים עבור כל צינור הנתונים. מידע נוסף על מדיניות בנושא כשלים בצינורות
כדי להגדיר את צינור הנתונים כך שימשיך לתזמן משימות גם אם משימה אחת נכשלת, בוחרים באפשרות הפעלת כל השלבים עד לסיום. האפשרות הזו מסומנת כברירת מחדל.
כדי להגדיר את צינור העיבוד כך שהוא ייכשל אחרי שמשימה אחת תיכשל, בוחרים באפשרות Fail this run as soon as one step fails (הפעלת הריצה הזו תיכשל ברגע ששלב אחד ייכשל).
בקטע Caching configuration (הגדרת שמירת נתונים במטמון), מציינים את הגדרת המטמון עבור צינור עיבוד הנתונים כולו.
כדי להשתמש בהגדרות מטמון ברמת המשימה עבור משימה בצינור, בוחרים באפשרות אל תבטל את הגדרות המטמון ברמת המשימה.
כדי להפעיל שמירה במטמון לכל המשימות בצינור ולהחליף כל הגדרת מטמון ברמת המשימה, בוחרים באפשרות הפעלת קריאה מהמטמון לכל השלבים (המהירה ביותר).
כדי להשבית את השמירה במטמון של כל המשימות בצינור ולהחליף כל הגדרה של שמירה במטמון ברמת המשימה, בוחרים באפשרות השבתת הקריאה מהמטמון לכל השלבים (המהירה ביותר).
אופציונלי: אם יש פרמטרים בצינור, בקטע Pipeline parameters (פרמטרים של צינור), מציינים את הפרמטרים של הפעלת הצינור.
כדי ליצור את ההרצה של צינור הנתונים, לוחצים על שליחה.
Python
כדי להריץ צינור עיבוד נתונים של ML באמצעות Agent Platform SDK ל-Python, צריך לפעול לפי ההוראות הבאות. לפני שמריצים את דוגמת הקוד הבאה, צריך להגדיר אימות.
מגדירים אימות
כדי להגדיר אימות, צריך ליצור מפתח של חשבון שירות ולהגדיר משתנה סביבה לנתיב של המפתח.
-
יוצרים חשבון שירות:
-
במסוף Google Cloud , נכנסים לדף יצירת חשבון שירות.
- כותבים שם בשדה Service account name.
- אופציונלי: בשדה תיאור חשבון השירות, מזינים תיאור.
- לוחצים על יצירה.
- לוחצים על השדה בחירת תפקיד. בקטע All roles, בוחרים באפשרות Gemini Enterprise Agent Platform > Agent Platform User.
-
לוחצים על Done כדי ליצור את חשבון השירות.
חשוב לא לסגור את חלון הדפדפן. תשתמשו בו בשלב הבא.
-
-
יוצרים מפתח לחשבון השירות לצורך אימות:
- במסוף Cloud, לוחצים על כתובת האימייל של חשבון השירות שיצרתם. Google Cloud
- לוחצים על Keys.
- לוחצים על Add key ואז על Create new key.
- לוחצים על Create. למחשב שלכם תתבצע הורדה של קובץ JSON עם המפתח.
- לוחצים על Close.
- נותנים לחשבון השירות החדש גישה לחשבון השירות שבו משתמשים להפעלת צינורות עיבוד הנתונים.
- לוחצים על כדי לחזור לרשימת חשבונות השירות.
לוחצים על השם של חשבון השירות שמשמש להפעלת צינורות. נפתח הדף Service account details.
אם פעלתם לפי ההוראות במדריך להגדרת הפרויקט לצינורות של Gemini Enterprise Agent Platform, זהו אותו חשבון שירות שיצרתם בקטע הגדרת חשבון שירות עם הרשאות גרנולריות. אחרת, Gemini Enterprise Agent Platform משתמש בחשבון השירות שמוגדר כברירת מחדל של Compute Engine כדי להריץ צינורות. חשבון השירות שמוגדר כברירת מחדל של Compute Engine נקרא כמו הדוגמה הבאה:
PROJECT_NUMBER-compute@developer.gserviceaccount.com- לוחצים על הכרטיסייה Permissions.
- לוחצים על הענקת גישה. החלונית Add principals מופיעה.
- בתיבה New principals, מזינים את כתובת האימייל של חשבון השירות שיצרתם בשלב הקודם.
- ברשימה הנפתחת Role בוחרים באפשרות Service accounts > Service account user.
- לוחצים על שמירה
-
מגדירים את משתנה הסביבה GOOGLE_APPLICATION_CREDENTIALS לנתיב של קובץ ה-JSON שמכיל את המַפְתח של חשבון השירות. המשתנה הזה חל רק על סשן המעטפת הנוכחי, כך שאם פותחים סשן חדש צריך להגדיר את המשתנה שוב.
למשל: Linux או macOS
מחליפים את [PATH] בנתיב של קובץ ה-JSON שמכיל את המַפְתח של חשבון השירות.
export GOOGLE_APPLICATION_CREDENTIALS="[PATH]"
לדוגמה:
export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/service-account-file.json"
למשל: Windows
מחליפים את [PATH] בנתיב של קובץ ה-JSON שמכיל את המפתח של חשבון השירות, ואת [FILE_NAME] בשם הקובץ.
עם PowerShell:
$env:GOOGLE_APPLICATION_CREDENTIALS="[PATH]"
לדוגמה:
$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\[FILE_NAME].json"
באמצעות שורת הפקודה:
set GOOGLE_APPLICATION_CREDENTIALS=[PATH]
הפעלת צינור עיבוד נתונים
כדי להפעיל את Gemini Enterprise Agent Platform PipelineJob צריך ליצור משאב PipelineJob ואז להפעיל את השיטה submit.
סוגי קלט מיוחדים שנתמכים על ידי KFP
במהלך יצירת הרצת צינור, אפשר גם להעביר את ה-placeholders הבאים שנתמכים על ידי KFP SDK כקלט:
{{$.pipeline_job_name_placeholder}}{{$.pipeline_job_resource_name_placeholder}}{{$.pipeline_job_id_placeholder}}{{$.pipeline_task_name_placeholder}}{{$.pipeline_task_id_placeholder}}{{$.pipeline_job_create_time_utc_placeholder}}{{$.pipeline_root_placeholder}}
מידע נוסף זמין במאמר בנושא סוגי קלט מיוחדים במסמכי התיעוד של Kubeflow Pipelines v2.
from google.cloud import aiplatform job = aiplatform.PipelineJob(display_name = DISPLAY_NAME, template_path = COMPILED_PIPELINE_PATH, job_id = JOB_ID, pipeline_root = PIPELINE_ROOT_PATH, parameter_values = PIPELINE_PARAMETERS, enable_caching = ENABLE_CACHING, encryption_spec_key_name = CMEK, labels = LABELS, credentials = CREDENTIALS, project = PROJECT_ID, location = LOCATION, failure_policy = FAILURE_POLICY) job.submit(service_account=SERVICE_ACCOUNT, network=NETWORK, reserved_ip_ranges=RESERVED_IP_RANGES)
מחליפים את מה שכתוב בשדות הבאים:
- DISPLAY_NAME: השם של צינור העברת הנתונים, שיוצג במסוף Google Cloud .
COMPILED_PIPELINE_PATH: הנתיב לקובץ ה-YAML של צינור העיבוד המהודר. היא יכולה להיות URI של Cloud Storage, כתובת URL מסוג HTTP/HTTPS או נתיב מקומי.
אופציונלי: כדי לציין גרסה מסוימת של צינור שעבר הידור, מוסיפים את תג הגרסה באחד מהפורמטים הבאים:
COMPILED_PIPELINE_PATH:TAG, כאשר TAG הוא תג הגרסה.
COMPILED_PIPELINE_PATH@SHA256_TAG, כאשר SHA256_TAG הוא ערך הגיבוב (hash) של גרסת הצינורsha256.
JOB_ID: (אופציונלי) מזהה ייחודי של ההרצה הזו של צינור העיבוד. אם לא מציינים את מזהה העבודה, Agent Platform Pipelines יוצר מזהה עבודה בשבילכם באמצעות שם צינור עיבוד הנתונים וחותמת הזמן של תחילת ההרצה של צינור עיבוד הנתונים.
PIPELINE_ROOT_PATH: (אופציונלי) כדי לשנות את נתיב הבסיס של צינור עיבוד הנתונים שצוין בהגדרת צינור עיבוד הנתונים, מציינים נתיב שלמשימת צינור עיבוד הנתונים יש גישה אליו, כמו URI של קטגוריה של Cloud Storage.
PIPELINE_PARAMETERS: (אופציונלי) פרמטרים של הפייפליין שיועברו להרצה הזו. לדוגמה, יוצרים
dict()עם שמות הפרמטרים בתור מפתחות המילון וערכי הפרמטרים בתור ערכי המילון.ENABLE_CACHING: (אופציונלי) מציין אם ההרצה של צינור עיבוד הנתונים הזה משתמשת בשמירת נתונים במטמון. השימוש במטמון של ביצועים מצמצם את העלויות כי הוא מאפשר לדלג על משימות בצינור הנתונים שבהן הפלט ידוע עבור קבוצת הקלט הנוכחית. אם לא מציינים את הארגומנט enable caching, המערכת משתמשת במטמון של ההרצה בצינור הזה. מידע נוסף על שמירה במטמון של ביצועים
CMEK: (אופציונלי) השם של מפתח ההצפנה בניהול הלקוח שרוצים להשתמש בו להרצת צינור הנתונים הזה.
LABELS: (אופציונלי) תוויות שהוגדרו על ידי המשתמש כדי לארגן את
PipelineJob. מידע נוסף על תוויות משאבים זמין במאמר יצירה וניהול של תוויות במאמרי העזרה של מנהל המשאבים.הפלטפורמה Agent Platform Pipelines מצרפת באופן אוטומטי את התווית הבאה להרצת הצינור:
vertex-ai-pipelines-run-billing-id: pipeline_run_idכאשר
pipeline_run_idהוא המזהה הייחודי של הפעלת צינור עיבוד הנתונים.התווית הזו מקשרת את השימוש במשאבים ב- Google Cloud שנוצר על ידי הפעלת צינור העיבוד בדוחות החיוב.
CREDENTIALS: (אופציונלי) פרטי כניסה מותאמים אישית שמשמשים ליצירת
PipelineJob. מבטל את פרטי הכניסה שהוגדרו ב-aiplatform.init.PROJECT_ID: (אופציונלי) הפרויקט ב- Google Cloud שבו רוצים להריץ את צינור העיבוד. אם לא מגדירים את הפרמטר הזה, המערכת משתמשת בפרויקט שהוגדר ב-
aiplatform.init.LOCATION: (אופציונלי) האזור שבו רוצים להריץ את צינור הנתונים. מידע נוסף על האזורים שבהם זמין Agent Platform Pipelines מופיע במדריך למיקומים של Agent Platform של Gemini Enterprise. אם לא מגדירים את הפרמטר הזה, המערכת משתמשת במיקום ברירת המחדל שמוגדר ב-
aiplatform.init.FAILURE_POLICY: (אופציונלי) מציינים את מדיניות הכשל לצינור כולו. אלה ההגדרות שזמינות:
כדי להגדיר את צינור הנתונים כך שהוא ייכשל אחרי שמשימה אחת נכשלת, מזינים
fast.כדי להגדיר את צינור הנתונים כך שימשיך לתזמן משימות אחרי שמשימה אחת נכשלת, מזינים
slow.
אם לא מגדירים את הפרמטר הזה, הגדרת מדיניות הכשל מוגדרת כברירת מחדל ל-
slow. מידע נוסף על מדיניות הכשל של צינורותSERVICE_ACCOUNT: (אופציונלי) השם של חשבון השירות שבו רוצים להשתמש להרצת צינור עיבוד הנתונים הזה. אם לא מציינים חשבון שירות, צינורות Agent Platform מריצים את צינור הנתונים באמצעות חשבון השירות שמוגדר כברירת מחדל ב-Compute Engine.
NETWORK: (אופציונלי) :השם של רשת ה-VPC המקושרת שבה רוצים להשתמש להרצת צינור הנתונים הזה.
RESERVED_IP_RANGES: אופציונלי. רשימה של שמות לטווחי ה-IP השמורים ברשת ה-VPC שמשמשת לעומס העבודה של הרצת צינור הנתונים, לדוגמה:
['vertex-ai-ip-range'].