לפני שמשתמשים ב-Agent Platform Pipelines כדי לתזמר את צינורות עיבוד הנתונים של למידת המכונה (ML), צריך להגדיר את הפרויקט ב- Google Cloud . משאבים מסוימים, כמו מאגר המטא-נתונים שמשמש את Vertex ML Metadata, נוצרים בפרויקט ב-Google Cloud בפעם הראשונה שמריצים צינור עיבוד נתונים.
כדי להגדיר את הפרויקט ל-Agent Platform Pipelines, צריך לפעול לפי ההוראות הבאות.
יוצרים פרויקט ב- Google Cloud ומגדירים אותו לשימוש עם Agent Platform Pipelines.
אם לא תציינו חשבון שירות, המערכת תשתמש בחשבון השירות שמוגדר כברירת מחדל ב-Compute Engine כדי להריץ את צינורות עיבוד הנתונים ב-Agent Platform Pipelines. מידע נוסף על חשבון השירות שמוגדר כברירת מחדל ב-Compute Engine זמין במאמר שימוש בחשבון השירות שמוגדר כברירת מחדל ב-Compute Engine.
Agent Platform Pipelines משתמש ב-Cloud Storage כדי לאחסן את פריטי המידע שנוצרו בהרצות של צינור עיבוד הנתונים. יוצרים קטגוריה של Cloud Storage ונותנים לחשבון השירות גישה לקטגוריה הזו.
ב-Agent Platform Pipelines נעשה שימוש ב-Vertex ML Metadata כדי לאחסן את המטא-נתונים שנוצרו על ידי הרצות הפייפליין. כשמריצים צינור עיבוד נתונים בפעם הראשונה, אם מאגר המטא-נתונים של הפרויקט לא קיים, Gemini Enterprise Agent Platform יוצרת את מאגר המטא-נתונים של הפרויקט.
אם אתם רוצים להצפין את הנתונים באמצעות מפתחות הצפנה בניהול הלקוח (CMEK), אתם יכולים ליצור באופן ידני את מאגר המטא-נתונים באמצעות מפתח CMEK לפני הרצת צינור עיבוד הנתונים. אם אין מאגר מטא-נתונים שמוגדר כברירת מחדל בפרויקט, Gemini Enterprise Agent Platform יוצר את מאגר המטא-נתונים של הפרויקט באמצעות מפתח ה-CMEK שמשמש להרצת צינור עיבוד הנתונים בפעם הראשונה. אחרי שיוצרים את מאגר המטא-נתונים, הוא משתמש במפתח CMEK שונה ממפתח ה-CMEK שמשמש להרצת צינור עיבוד הנתונים.
הגדרת הפרויקט ב- Google Cloud
כדי ליצור פרויקט ב- Google Cloud ולהגדיר אותו לשימוש עם Agent Platform Pipelines, צריך לפעול לפי ההוראות הבאות.
- נכנסים לחשבון Google Cloud . אנחנו ממליצים למשתמשים חדשים ב- Google Cloud ליצור חשבון כדי שיוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Gemini Enterprise Agent Platform, Compute Engine, and Cloud Storage APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init -
אחרי שתאתחלו את ה-CLI של gcloud, עדכנו אותו והתקינו את הרכיבים הנדרשים:
gcloud components update gcloud components install beta
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Gemini Enterprise Agent Platform, Compute Engine, and Cloud Storage APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init -
אחרי שתאתחלו את ה-CLI של gcloud, עדכנו אותו והתקינו את הרכיבים הנדרשים:
gcloud components update gcloud components install beta
הגדרת חשבון שירות עם הרשאות פרטניות
כשמריצים צינור עיבוד נתונים, אפשר לציין חשבון שירות. הרצת צינור עיבוד הנתונים פועלת עם ההרשאות של חשבון השירות הזה.
אם לא תציינו חשבון שירות, הרצת הצינור תשתמש בחשבון השירות שמוגדר כברירת מחדל ב-Compute Engine. מידע נוסף על חשבון השירות שמוגדר כברירת מחדל ב-Compute Engine זמין במאמר שימוש בחשבון השירות שמוגדר כברירת מחדל ב-Compute Engine.
כדי ליצור חשבון שירות ולתת לו הרשאות מפורטות למשאבי Google Cloud , צריך לפעול לפי ההוראות הבאות:
מריצים את הפקודה הבאה כדי ליצור חשבון שירות.
gcloud iam service-accounts create SERVICE_ACCOUNT_ID \ --description="DESCRIPTION" \ --display-name="DISPLAY_NAME" \ --project=PROJECT_IDמחליפים את הערכים הבאים:
- SERVICE_ACCOUNT_ID: המזהה של חשבון השירות.
- DESCRIPTION: (אופציונלי) תיאור של חשבון השירות.
- DISPLAY_NAME: השם המוצג של חשבון השירות.
- PROJECT_ID: הפרויקט שבו רוצים ליצור את חשבון השירות.
נותנים לחשבון השירות גישה ל-Gemini Enterprise Agent Platform. חשוב לזכור: יכול להיות שיעבור קצת זמן עד שהשינוי בהרשאת הגישה יתעדכן. מידע נוסף זמין במאמר הפצת שינוי גישה.
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:SERVICE_ACCOUNT_ID@PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/aiplatform.user"מחליפים את הערכים הבאים:
- PROJECT_ID: הפרויקט שבו נוצר חשבון השירות.
- SERVICE_ACCOUNT_ID: המזהה של חשבון השירות.
אתם יכולים להשתמש ב-Artifact Registry כדי לארח קובצי אימג' של קונטיינרים ותבניות של Kubeflow Pipelines.
מידע נוסף על Artifact Registry זמין במאמרי העזרה של Artifact Registry.
נותנים לחשבון השירות גישה לכל משאבי Google Cloud שבהם אתם משתמשים בצינורות עיבוד הנתונים.
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:SERVICE_ACCOUNT_ID@PROJECT_ID.iam.gserviceaccount.com" \ --role="ROLE_NAME"מחליפים את הערכים הבאים:
- PROJECT_ID: הפרויקט שבו נוצר חשבון השירות.
- SERVICE_ACCOUNT_ID: המזהה של חשבון השירות.
- ROLE_NAME: התפקיד בניהול הזהויות והרשאות הגישה (IAM) שרוצים לתת לחשבון השירות הזה.
כדי להשתמש ב-Agent Platform Pipelines להרצת צינורות עיבוד נתונים עם חשבון השירות הזה, מריצים את הפקודה הבאה כדי להקצות לחשבון המשתמש את התפקיד roles/iam.serviceAccountUser בחשבון השירות.
gcloud iam service-accounts add-iam-policy-binding \ SERVICE_ACCOUNT_ID@PROJECT_ID.iam.gserviceaccount.com \ --member="user:USER_EMAIL" \ --role="roles/iam.serviceAccountUser"מחליפים את הערכים הבאים:
- SERVICE_ACCOUNT_ID: המזהה של חשבון השירות.
- PROJECT_ID: הפרויקט שבו נוצר חשבון השירות.
- USER_EMAIL: כתובת האימייל של המשתמש שמריץ צינורות עיבוד נתונים בתור חשבון השירות הזה.
אם אתם מעדיפים להשתמש בחשבון השירות שמוגדר כברירת מחדל ב-Compute Engine כדי להריץ את צינורות עיבוד הנתונים, אתם צריכים להפעיל את Compute Engine API ולתת לחשבון השירות שמוגדר כברירת מחדל גישה ל-Gemini Enterprise Agent Platform. חשוב לזכור: יכול להיות שיעבור קצת זמן עד שהשינוי בהרשאת הגישה יתעדכן. מידע נוסף זמין במאמר הפצת שינוי גישה.
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com" \ --role="roles/aiplatform.user"מחליפים את הערכים הבאים:
- PROJECT_ID: הפרויקט שבו נוצר חשבון השירות שמוגדר כברירת מחדל.
- PROJECT_NUMBER: מספר הפרויקט שבו נוצר חשבון השירות שמוגדר כברירת מחדל.
התפקידים שנדרשים כדי להפעיל ממשקי API
כדי להפעיל ממשקי API, צריך את ההרשאה
serviceusage.services.enable. אם אתם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד "בעלים" (roles/owner). אחרת, אתם יכולים לקבל את ההרשאה הזו דרך התפקיד "אדמין בממשק 'שימוש בשירות'" (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים?
הגדרת קטגוריה של Cloud Storage לארטיפקטים של צינור עיבוד נתונים
הארטיפקטים של הרצות צינורות עיבוד הנתונים ב-Agent Platform Pipelines מאוחסנים באמצעות Cloud Storage. כדי ליצור קטגוריה של Cloud Storage ולתת לחשבון השירות (או לחשבון השירות שמוגדר כברירת מחדל ב-Compute Engine) גישה לקריאה ולכתיבה של אובייקטים בקטגוריה הזו, צריך לפעול לפי ההוראות הבאות.
מריצים את הפקודה הבאה כדי ליצור קטגוריה של Cloud Storage באזור שבו רוצים להריץ את צינורות עיבוד הנתונים.
gcloud storage buckets create gs://BUCKET_NAME --location=BUCKET_LOCATION --project=PROJECT_ID
מחליפים את הערכים הבאים:
- PROJECT_ID: הפרויקט שאליו משויכת הקטגוריה.
- BUCKET_LOCATION: ציון המיקום של הקטגוריה, לדוגמה
US-CENTRAL1. - BUCKET_NAME: השם שרוצים לתת לקטגוריה, בכפוף לדרישות למתן שמות. לדוגמה:
my-bucket.
מריצים את הפקודות הבאות כדי לתת לחשבון השירות גישה לקריאה ולכתיבה של פריטי מידע שנוצרו בתהליך בקטגוריה שיצרתם בשלב הקודם.
gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME \ --member=serviceAccount:SERVICE_ACCOUNT_ID@PROJECT_ID.iam.gserviceaccount.com \ --role=roles/storage.objectUserמחליפים את הערכים הבאים:
- SERVICE_ACCOUNT_ID: המזהה של חשבון השירות.
- PROJECT_ID: הפרויקט שבו נוצר חשבון השירות.
- BUCKET_NAME: השם של הקטגוריה שאתם נותנים לחשבון השירות גישה אליה.
לחלופין, אם אתם מעדיפים להשתמש בחשבון השירות שמוגדר כברירת מחדל של Compute Engine כדי להריץ את צינורות עיבוד הנתונים, הריצו את הפקודה
gcloud iam service-accounts listכדי לאתר את מספר הפרויקט של החשבון הזה.gcloud iam service-accounts listחשבון השירות שמוגדר כברירת מחדל ב-Compute Engine נקרא כך:
PROJECT_NUMBER-compute@developer.gserviceaccount.com.מריצים את הפקודה הבאה כדי לתת לחשבון השירות שמוגדר כברירת מחדל ב-Compute Engine גישה לקריאה ולכתיבה של פריטי המידע שנוצרו בתהליך בקטגוריה שיצרתם בשלב הקודם.
gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME \ --member=serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com \ --role=roles/storage.objectUserמחליפים את הערכים הבאים:
- PROJECT_NUMBER: מספר הפרויקט של חשבון השירות שמוגדר כברירת מחדל ב-Compute Engine.
- BUCKET_NAME: השם של הקטגוריה שאתם נותנים לחשבון השירות גישה אליה.
יצירת מאגר מטא-נתונים שמשתמש ב-CMEK (אופציונלי)
כדי ליצור מפתח CMEK ולהגדיר מאגר מטא-נתונים של Vertex ML Metadata שמשתמש במפתח הזה, צריך לפעול לפי ההוראות הבאות.
שימוש ב-Cloud Key Management Service כדי להגדיר מפתחות הצפנה בניהול הלקוח.
כדי ליצור את מאגר המטא-נתונים שמוגדר כברירת מחדל בפרויקט באמצעות CMEK, משתמשים בקריאת ה-REST הבאה.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- LOCATION_ID: האזור שלכם.
- PROJECT_ID: מזהה הפרויקט. .
- KEY_RING: השם של אוסף המפתחות ב-Cloud KMS שבו נמצא מפתח ההצפנה.
- KEY_NAME: השם של מפתח ההצפנה שבו רוצים להשתמש במאגר המטא-נתונים הזה.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/metadataStores?metadata_store_id=default
תוכן בקשת JSON:
{ "encryption_spec": { "kms_key_name": "projects/PROJECT_ID/locations/LOCATION_ID/keyRings/KEY_RING/cryptoKeys/KEY_NAME" }, }כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/operations/OPERATIONS_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateMetadataStoreOperationMetadata", "genericMetadata": { "createTime": "2021-05-18T18:47:14.494997Z", "updateTime": "2021-05-18T18:47:14.494997Z" } } }