סקירה כללית
לפני שמכניסים לשימוש בסביבת הייצור הסקת מסקנות אונליין עם נקודות קצה פרטיות, צריך להגדיר גישה לשירותים פרטיים כדי ליצור קישורי קישור בין רשתות שכנות (peering) בין הרשת שלכם לבין Agent Platform. אם כבר הגדרתם את זה, אתם יכולים להשתמש בקישורי ה-peering הקיימים.
במדריך הזה מוסבר איך לבצע את הפעולות הבאות:
- אימות הסטטוס של חיבורי ה-Peering הקיימים.
- בודקים שממשקי ה-API הנדרשים מופעלים.
- יצירת נקודת קצה פרטית.
- פריסת מודל לנקודת קצה פרטית.
- תומכים רק במודל אחד לכל נקודת קצה פרטית. זה שונה מנקודת קצה ציבורית של Agent Platform, שבה אפשר לפצל את התנועה בין כמה מודלים שפרוסים בנקודת קצה אחת.
- נקודת קצה פרטית תומכת במודלים טבלאיים של AutoML ובמודלים שאומנו בהתאמה אישית.
- שליחת היקש לנקודת קצה פרטית.
- מחיקת משאבים
בדיקת הסטטוס של חיבורי פירינג קיימים
אם יש לכם חיבורי Peering קיימים שבהם אתם משתמשים עם Agent Platform, אתם יכולים להציג אותם כדי לבדוק את הסטטוס:
gcloud compute networks peerings list --network NETWORK_NAME
הסטטוס של חיבורי ה-Peering אמור להיות ACTIVE.
מידע נוסף על חיבורי Peering פעילים
הפעלת ממשקי ה-API הנדרשים
gcloud services enable aiplatform.googleapis.com
gcloud services enable dns.googleapis.com
יצירת נקודת קצה פרטית
כדי ליצור נקודת קצה פרטית, מוסיפים את הדגל --network כשיוצרים נקודת קצה באמצעות Google Cloud CLI:
gcloud beta ai endpoints create \
--display-name=ENDPOINT_DISPLAY_NAME \
--network=FULLY_QUALIFIED_NETWORK_NAME \
--region=REGION
מחליפים את NETWORK_NAME בשם הרשת המוגדר במלואו:
projects/PROJECT_NUMBER/global/networks/NETWORK_NAME
אם יוצרים את נקודת הקצה בלי לציין רשת, נוצרת נקודת קצה ציבורית.
המגבלות של נקודות קצה פרטיות
חשוב לשים לב למגבלות הבאות שחלות על נקודות קצה פרטיות:
- נקודות קצה פרטיות לא תומכות בפיצול תעבורה. כפתרון עקיף, אפשר ליצור פיצול תנועה באופן ידני על ידי פריסת המודל לכמה נקודות קצה פרטיות, ופיצול התנועה בין כתובות ה-URL של ההסקות שמתקבלות לכל נקודת קצה פרטית.
- נקודות קצה פרטיות לא תומכות ב-SSL/TLS.
- כדי להפעיל רישום ביומן של גישה לנקודת קצה פרטית, צריך לפנות לכתובת vertex-ai-feedback@google.com.
- אפשר להשתמש רק ברשת אחת לכל נקודות הקצה הפרטיות ב Google Cloudפרויקט. אם רוצים לעבור לרשת אחרת, צריך לפנות אל
vertex-ai-feedback@google.com. - מומלץ מאוד לנסות שוב בצד הלקוח במקרה של שגיאות שניתנות לתיקון. השגיאות האלה יכולות לכלול את השגיאות הבאות:
- תשובה ריקה (קוד שגיאת HTTP
0), יכול להיות שהסיבה היא חיבור זמני לא תקין. - קודי שגיאה של HTTP
5xxשמציינים שהשירות לא זמין באופן זמני.
- תשובה ריקה (קוד שגיאת HTTP
- במקרה של קוד שגיאת HTTP
429שמציין שהמערכת עמוסה מדי, מומלץ להאט את התנועה כדי לפתור את הבעיה במקום לנסות שוב. - אין תמיכה בבקשות הסקה משירותי חיזוי (כמו
PredictionServiceClientו-PredictionServiceClient). - נקודת הקצה של Private Service Access לא תומכת במודלים בסיסיים שעברו כוונון. כדי לפרוס מודל בסיס שעבר התאמה, צריך להשתמש בנקודת קצה מסוג Private Service Connect.
מעקב אחרי נקודות קצה פרטיות
אפשר להשתמש בלוח הבקרה של המדדים כדי לבדוק את הזמינות ואת זמן האחזור של התעבורה שנשלחת לנקודת קצה פרטית.
כדי להתאים אישית את המעקב, שולחים שאילתות על המדדים הבאים ב-Cloud Monitoring:
aiplatform.googleapis.com/prediction/online/private/response_countמספר התשובות של ההסקה. אפשר לסנן את המדד הזה לפי
deployed_model_idאו קוד תגובת HTTP.aiplatform.googleapis.com/prediction/online/private/prediction_latenciesזמן האחזור של בקשת ההסקה באלפיות השנייה. אפשר לסנן את המדד הזה לפי
deployed_model_id, רק לבקשות מוצלחות.
כאן אפשר לקרוא איך בוחרים את המדדים האלה, שולחים שאילתות לגביהם ומציגים אותם ב-Metrics Explorer.
פריסת מודל
אתם יכולים לייבא מודל חדש או לפרוס מודל קיים שכבר העליתם. כדי להעלות מודל חדש, משתמשים ב-gcloud ai models upload.
מידע נוסף על ייבוא מודלים ל-Agent Platform
כדי לפרוס מודל לנקודת קצה פרטית, אפשר לעיין במדריך בנושא פריסת מודלים. בנוסף לפיצול תנועה והפעלה ידנית של רישום גישה, אפשר להשתמש בכל אחת מהאפשרויות האחרות שזמינות לפריסת מודלים שאומנו בהתאמה אישית. כאן אפשר לקרוא מידע נוסף על ההבדלים בין נקודות קצה פרטיות לנקודות קצה ציבוריות.
אחרי שפורסים את נקודת הקצה, אפשר לקבל את ה-URI של ההסקה ממטא-הנתונים של נקודת הקצה הפרטית.
אם יש לכם את השם המוצג של נקודת הקצה הפרטית, מריצים את הפקודה הבאה כדי לקבל את מזהה נקודת הקצה:
ENDPOINT_ID=$(gcloud ai endpoints list \ --region=REGION \ --filter=displayName:ENDPOINT_DISPLAY_NAME \ --format="value(ENDPOINT_ID.scope())")אחרת, כדי לראות את מזהה נקודת הקצה ואת השם לתצוגה של כל נקודות הקצה, מריצים את הפקודה הבאה:
gcloud ai endpoints list --region=REGIONלבסוף, כדי לקבל את ה-URI של ההסקה, מריצים את הפקודה הבאה:
gcloud beta ai endpoints describe ENDPOINT_ID \ --region=REGION \ --format="value(deployedModels.privateEndpoints.predictHttpUri)"
פורמט ה-URI של היקש פרטי
ה-URI של ההיסק נראה שונה בנקודות קצה פרטיות בהשוואה לנקודות קצה ציבוריות של Agent Platform:
http://ENDPOINT_ID.aiplatform.googleapis.com/v1/models/DEPLOYED_MODEL_ID:predict
אם בוחרים לבטל את הפריסה של המודל הנוכחי ולפרוס מחדש עם מודל חדש, שם הדומיין משמש שוב אבל הנתיב כולל מזהה שונה של מודל שנפרס.
שליחת מסקנה לנקודת קצה פרטית
יוצרים מכונה של Compute Engine ברשת ה-VPC. חשוב ליצור את המכונה באותה רשת VPC שביצעתם בה קישור בין רשתות שכנות (peering) עם Agent Platform.
מתחברים עם SSH למופע Compute Engine ומתקינים את לקוח ההסקה, אם רלוונטי. אחרת, אפשר להשתמש ב-curl.
כשמבצעים חיזוי, משתמשים בכתובת ה-URL של ההסקה שמתקבלת מפריסת המודל. בדוגמה הזו, אתם שולחים את הבקשה מלקוח ההסקה במכונה שלכם ב-Compute Engine באותה רשת VPC:
curl -X POST -d@PATH_TO_JSON_FILE http://ENDPOINT_ID.aiplatform.googleapis.com/v1/models/DEPLOYED_MODEL_ID:predictבדוגמה הזו של הבקשה, PATH_TO_JSON_FILE הוא הנתיב לבקשת ההסקה שלכם, שנשמרה כקובץ JSON. לדוגמה,
example-request.json.
לפנות משאבים
אפשר לבטל את הפריסה של מודלים ולמחוק נקודות קצה פרטיות באותה דרך שבה עושים זאת במודלים ובנקודות קצה ציבוריות.
דוגמה: בדיקת נקודות קצה פרטיות ב-VPC משותף
בדוגמה הזו נעשה שימוש בשני Google Cloud פרויקטים עם רשת VPC משותפת:
- פרויקט המארח מארח את רשת ה-VPC המשותפת.
- פרויקט הלקוח מארח מכונה של Compute Engine שבה מריצים לקוח הסקה, כמו curl, או לקוח REST משלכם במכונה של Compute Engine, כדי לשלוח בקשות הסקה.
כשיוצרים את מופע Compute Engine בפרויקט הלקוח, הוא צריך להיות בתוך תת-הרשת המותאמת אישית ברשת ה-VPC המשותפת של פרויקט המארח, ובאותו אזור שבו נפרס המודל.
יוצרים את חיבורי ה-peering לגישה לשירותים פרטיים בפרויקט המארח. מריצים את
gcloud services vpc-peerings connect:gcloud services vpc-peerings connect \ --service=servicenetworking.googleapis.com \ --network=HOST_SHARED_VPC_NAME \ --ranges=PREDICTION_RESERVED_RANGE_NAME \ --project=HOST_PROJECT_IDיוצרים את נקודת הקצה בפרויקט הלקוח, באמצעות שם הרשת של פרויקט המארח. מריצים את
gcloud beta ai endpoints create:gcloud beta ai endpoints create \ --display-name=ENDPOINT_DISPLAY_NAME \ --network=HOST_SHARED_VPC_NAME \ --region=REGION \ --project=CLIENT_PROJECT_IDשליחת בקשות להסקת מסקנות באמצעות לקוח ההסקה בפרויקט הלקוח.