הדף הזה מיועד למפתחי אפליקציות בקבוצות של מפעילים שאחראים להגדיר את סביבות הפיתוח והאפליקציות שלהם כדי להפעיל תכונות מבוססות-AI. מידע נוסף זמין במאמר בנושא קהלים ב-GDC עם air gap.
לפני שמתחילים
צריך להגדיר את הפרויקט לשימוש ב-Vertex AI. מידע נוסף זמין במאמר בנושא הגדרת פרויקט ל-Vertex AI.
- חשוב לעדכן את מאגר האישורים המקומי לפני שמגדירים אימות בסביבת הפיתוח.
אימות לשירותי Vertex AI
האינטראקציות עם שירותי Vertex AI מתבצעות באמצעות אסימוני אימות. אסימונים הם אובייקטים דיגיטליים שמאמתים את הזהות וההרשאה שלכם אחרי שאתם מספקים פרטי כניסה תקפים. הטוקן מכיל מידע ספציפי על החשבון שלכם ועל ההרשאות שיש לו לגשת לשירותים ולמשאבים ולהשתמש בהם.
יש שתי דרכים להגדיר אימות:
אימות באמצעות חשבון המשתמש
במדריך הבא מוסבר איך מקבלים טוקן אימות לחשבון המשתמש:
שימו לב לנקודת הקצה של ה-API שבו אתם רוצים להשתמש.
כדי לקבל גישה לשירות Vertex AI או למודל AI גנרטיבי שרוצים להשתמש בו, צריך להקצות לחשבון המשתמש את התפקיד המתאים שמופיע בקטע הכנת הרשאות IAM.
נכנסים ל-Distributed Cloud באמצעות חשבון המשתמש שדרכו רוצים לבצע אינטראקציה עם ה-API:
gdcloud auth loginמקבלים את טוקן האימות:
gdcloud auth print-identity-token --audiences=https://ENDPOINTמחליפים את
ENDPOINTבנקודת קצה ל-API שבה אתם משתמשים בארגון. למידע נוסף, אפשר לראות את סטטוס השירות ונקודות הקצה.בהתאם לשימוש המיועד של אסימון האימות, יכול להיות שתצטרכו לכלול את היציאה אחרי נקודת הקצה של השירות בנתיב של קהלי היעד, באופן הבא:
- אם משתמשים בספריית לקוח בשביל הבקשה, צריך לכלול את הפורט
:443אחרי נקודת הקצה של השירות בנתיב של הקהלים. לכן, הנתיב--audiencesבפקודה צריך להיותhttps://ENDPOINT:443. - אם אתם משתמשים ב-gRPC, ב-
curlאו בקריאות REST פרוגרמטיות לבקשה, אל תכללו את היציאה. לכן, הנתיב--audiencesבפקודה צריך להיותhttps://ENDPOINT.
הפלט מציג את אסימון האימות. מוסיפים את הטוקן לכותרת של הבקשות ששולחים משורת הפקודה, כמו בדוגמה הבאה:
-H "Authorization: Bearer TOKEN"מחליפים את
TOKENבערך של אסימון האימות שמוצג בפלט.- אם משתמשים בספריית לקוח בשביל הבקשה, צריך לכלול את הפורט
אימות באמצעות חשבון השירות
במדריך הבא מוסבר איך מקבלים אסימון אימות לחשבון השירות:
שימו לב לנקודת הקצה של ה-API שבו אתם רוצים להשתמש.
מגדירים את חשבון השירות שרוצים להשתמש בו כדי לגשת לשירות Vertex AI או למודל AI גנרטיבי.
נותנים לחשבון השירות את התפקיד המתאים שמופיע בקטע הכנת הרשאות IAM כדי לאפשר לו לקבל גישה לשירות או למודל שרוצים להשתמש בהם.
מגדירים את משתנה הסביבה הבא:
export GOOGLE_APPLICATION_CREDENTIALS=PATH_TO_SERVICE_KEYמחליפים את
PATH_TO_SERVICE_KEYבנתיב של קובץ ה-JSON שמכיל את צמדי המפתחות של חשבון השירות.מתקינים את ספריית הלקוח של
google-auth:pip install google-authמוסיפים את הקוד הבא לסקריפט Python:
import os import google.auth from google.auth.transport import requests import requests as reqs os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "PATH_TO_SERVICE_KEY" os.environ["GRPC_DEFAULT_SSL_ROOTS_FILE_PATH"] = "CERT_NAME" # If you use a client library for your request, # you must include port :443 after the service endpoint # in the audience path. audience = "https://ENDPOINT" creds, project_id = google.auth.default() print(project_id) creds = creds.with_gdch_audience(audience) def test_get_token(): sesh = reqs.Session() req = requests.Request(session=sesh) creds.refresh(req) print(creds.token) if __name__=="__main__": test_get_token()מחליפים את מה שכתוב בשדות הבאים:
-
PATH_TO_SERVICE_KEY: הנתיב לקובץ ה-JSON שמכיל את צמדי המפתחות של חשבון השירות. -
CERT_NAME: השם של קובץ האישור של רשות האישורים (CA), למשלorg-1-trust-bundle-ca.cert. הערך הזה נדרש רק אם אתם נמצאים בסביבת פיתוח. אחרת, משמיטים אותו.
ENDPOINT: נקודת קצה ל-API שבה אתם משתמשים בארגון. למידע נוסף, אפשר לראות את סטטוס השירות ונקודות הקצה. בהתאם לשימוש המיועד של אסימון האימות, יכול להיות שתצטרכו לכלול את היציאה אחרי נקודת הקצה של השירות בנתיב של קהל היעד, באופן הבא:- אם משתמשים בספריית לקוח בשביל הבקשה, צריך לכלול את היציאה
:443אחרי נקודת הקצה של השירות בנתיב של קהל היעד. לכן, הנתיבaudienceבסקריפט צריך להיות"https://ENDPOINT:443". - אם אתם משתמשים ב-gRPC, ב-
curlאו בקריאות REST פרוגרמטיות לבקשה, אל תכללו את היציאה. לכן, הנתיבaudienceבסקריפט צריך להיות"https://ENDPOINT".
- אם משתמשים בספריית לקוח בשביל הבקשה, צריך לכלול את היציאה
-
שומרים את סקריפט Python.
מריצים את סקריפט Python כדי לאחזר את האסימון:
python SCRIPT_NAMEמחליפים את
SCRIPT_NAMEבשם שנתתם לסקריפט Python, למשלtoken.py.הפלט מציג את אסימון האימות. מוסיפים את הטוקן לכותרת של הבקשות ששולחים משורת הפקודה, כמו בדוגמה הבאה:
-H "Authorization: Bearer TOKEN"מחליפים את
TOKENבערך של אסימון האימות שמוצג בפלט.