הגדרה וחיבור לחשבון Google Cloud שלך

הצג באתר TensorFlow.org הפעל ב-Google Colab הצג ב-GitHub הורד מחברת לוגו של Kaggleרוץ בקאגל

מדריך זה נועד לעזור למשתמשים בפעם הראשונה להגדיר חשבון Google Cloud Platform במיוחד מתוך כוונה להשתמש ב-tensorflow_cloud כדי להפעיל בקלות הדרכה בקנה מידה ב-Google Cloud AI Platform. TensorFlow Cloud מספק ממשקי API המאפשרים למשתמשים לעבור בקלות מאיתור באגים, אימון, כוונון קוד Keras ו- TensorFlow בסביבה מקומית או קאגגלי לאימון/כוונן מבוזר בענן.

1. הירשם ל-Google Cloud Platform

כדי להתחיל עבור אל https://cloud.google.com/ ולחץ על "התחל בחינם". זהו תהליך הרשמה דו-שלבי שבו תצטרך לספק את שמך, כתובתך וכרטיס אשראי. חשבון המתחיל הוא בחינם והוא מגיע עם זיכוי של $300 שתוכל להשתמש בו. לשלב זה תצטרך לספק חשבון Google (כלומר חשבון Gmail שלך) כדי להיכנס.

לאחר השלמת תהליך ההרשמה תופנה לדף הפתיחה של Google Cloud Platform . לחץ על הכרטיסייה "בית" ורשום את מזהה הפרויקט ומספר הפרויקט שלך. (ראה זיהוי פרויקטים )

GCP_PROJECT_ID = 'YOUR_PROJECT_ID'
PROJECT_NUMBER = 'YOUR_PROJECT_NUMBER'

2. הפעל את Google Cloud SDK ואמת את המחברת שלך

כעת לאחר שהגדרת את הפרויקט שלך, נוכל להמשיך עם שאר שלבי התצורה ישירות מהמחברת הזו. ישנם שלושה סוגים של מחברת, שלב זה (שלב #2) שונה מעט עבור כל מחברת, שאר השלבים (שלב #3 עד #6) זהים עבור כל המחברות.

  • 2.1. אישור עבור מחברות Kaggle
  • 2.2. אישור עבור מחברת Colab
  • 2.3. Auth for Cloud AI Notebooks - לא נתמך.

2.1 הגדרת אישור עבור מחברת Kaggle

אם אתה משתמש במחברת Kaggle, תצטרך לחזור על שלב זה עבור כל מחברת חדשה שבה אתה משתמש בפרויקט זה. במחברת שלך לחץ על הרחבות -> Google Cloud SDK ובצע את ההוראות בהנחיה. לאחר מכן הפעל את הפקודה הבאה כדי להוסיף את אישורי ההסמכה שלך למחברת זו.

import sys
if "kaggle_secrets" in sys.modules:
    from kaggle_secrets import UserSecretsClient
    UserSecretsClient().set_gcloud_credentials(project=GCP_PROJECT_ID)

2.2 הגדרת אישור עבור מחברת Colab

אם אתה משתמש במחברת Colab, תצטרך לחזור על שלב זה עבור כל מחברת חדשה שבה אתה משתמש בפרויקט זה. הפעל את הפקודה הבאה כדי להוסיף את אישורי ההסמכה שלך למחברת זו.

import sys
if "google.colab" in sys.modules:
    from google.colab import auth
    auth.authenticate_user()

השלב הבא הוא הגדרת חשבון החיוב עבור פרויקט זה. Google Cloud יוצר עבורך פרויקט כברירת מחדל שנקרא "הפרויקט הראשון שלי". אנו נשתמש בפרויקט ברירת המחדל הזה. השתמש במזהה הפרויקט שלך (משלב 1) כדי להפעיל את הפקודות הבאות. זה יראה לך חשבון_ID לחיוב, רשום זאת לשלב הבא.

gcloud beta billing accounts list

השתמש בחשבון החיוב שלך מלמעלה והפעל את הפעולות הבאות כדי לקשר את חשבון החיוב שלך לפרויקט שלך.

שים לב שאם אתה משתמש בפרויקט קיים, ייתכן שלא תראה Account_ID, זה אומר שאין לך את ההרשאות המתאימות להפעיל את הפקודות הבאות, ליצור קשר עם המנהל שלך או ליצור פרויקט חדש.

BILLING_ACCOUNT_ID = 'YOUR_BILLING_ACCOUNT_ID'

!gcloud beta billing projects link $GCP_PROJECT_ID --billing-account $BILLING_ACCOUNT_ID

4. הפעל ממשקי API נדרשים עבור tensorflow-cloud בפרויקט שלך

עבור tensorflow_cloud אנו משתמשים בשני ממשקי API ספציפיים: AI Platform Training Jobs API ו- Cloud builder API . שימו לב שזו הגדרה חד פעמית עבור פרויקט זה, אין צורך להפעיל מחדש את הפקודה הזו עבור כל מחברת.

gcloud services --project $GCP_PROJECT_ID enable ml.googleapis.com cloudbuild.googleapis.com

5. צור דלי של Google Cloud Storage

אנו נשתמש בדלי אחסון זה עבור נכסים זמניים וכן כדי לשמור את מחסומי הדגם. רשום את שם הדלי לעיון עתידי. הערה שמות דלי הם ייחודיים בעולם.

BUCKET_NAME = 'YOUR_BUCKET_NAME'

GCS_BUCKET = f'gs://{BUCKET_NAME}'
!gsutil mb -p $GCP_PROJECT_ID $GCS_BUCKET

צור חשבון שירות עבור משימות HP Tuning

שלב זה נדרש כדי להשתמש ב-HP Tuning ב-Google Cloud באמצעות CloudTuner. כדי ליצור חשבון שירות ולתת לו גישה לעורך הפרויקט, הפעל את הפקודה הבאה ורשום את שם חשבון השירות שלך.

SERVICE_ACCOUNT_NAME ='YOUR_SERVICE_ACCOUNT_NAME'

SERVICE_ACCOUNT_EMAIL = f'{SERVICE_ACCOUNT_NAME}@{GCP_PROJECT_ID}.iam.gserviceaccount.com'
!gcloud iam --project $GCP_PROJECT_ID service-accounts create $SERVICE_ACCOUNT_NAME
!gcloud projects add-iam-policy-binding $GCP_PROJECT_ID \
    --member serviceAccount:$SERVICE_ACCOUNT_EMAIL \
    --role=roles/editor

default AI Platform service account מזוהה על ידי כתובת דוא"ל בפורמט service-PROJECT_NUMBER@cloud-ml.google.com.iam.gserviceaccount.com . באמצעות מספר הפרויקט שלך מהשלב הראשון, אנו בונים את הדוא"ל של חשבון השירות ומעניקים את תפקיד הניהול default AI Platform service account (roles/iam.serviceAccountAdmin) בחשבון השירות החדש שלך.

DEFAULT_AI_PLATFORM_SERVICE_ACCOUNT = f'service-{PROJECT_NUMBER}@cloud-ml.google.com.iam.gserviceaccount.com'

!gcloud iam --project $GCP_PROJECT_ID service-accounts add-iam-policy-binding \
--role=roles/iam.serviceAccountAdmin \
--member=serviceAccount:$DEFAULT_AI_PLATFORM_SERVICE_ACCOUNT \
$SERVICE_ACCOUNT_EMAIL

מזל טוב !

כעת אתה מוכן להפעיל tensorflow-cloud. שימו לב שצריך להפעיל את השלבים האלה פעם אחת בלבד. לאחר שתגדיר את הפרויקט, תוכל לעשות שימוש חוזר באותה תצורת פרויקט ודלי עבור ריצות עתידיות. עבור כל מחברת חדשה, תצטרך לחזור על השלב השני כדי להוסיף את האישורים שלך ל-Google Cloud.

רשום את הערכים הבאים מכיוון שהם נחוצים להפעלת tensorflow-cloud.

print(f"Your GCP_PROJECT_ID is:       {GCP_PROJECT_ID}")
print(f"Your SERVICE_ACCOUNT_NAME is: {SERVICE_ACCOUNT_NAME}")
print(f"Your BUCKET_NAME is:          {BUCKET_NAME}")
Your GCP_PROJECT_ID is:       YOUR_PROJECT_ID
Your SERVICE_ACCOUNT_NAME is: YOUR_SERVICE_ACCOUNT_NAME
Your BUCKET_NAME is:          YOUR_BUCKET_NAME