למחסן Vision מחובר (corpus) באפליקציה שפריסתה כוללת הטמעה של נתונים יש משאב אחד או יותר של אובייקט מדיה (לדוגמה, משאבי וידאו).
אובייקטים של מדיה (משאבי asset) מכילים מטא-נתונים והערות למשאבים. משתמשים בפקודות הבאות כדי ליצור ולעדכן את אובייקטי המדיה האלה.
יצירת נכס מסוג 'מחסן סרטונים לסטרימינג'
אחרי יצירת מחסן (משאב corpus), אפשר להוסיף למחסן משאב וידאו אחד או יותר asset.
REST ושורת הפקודה
הקוד הבא יוצר נכס חדש במחסן הנתונים שצוין (corpus) עם אפשרות לציין את מזהה הנכס ואת משך החיים (TTL).
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- REGIONALIZED_ENDPOINT: נקודת הקצה עשויה לכלול תחילית שתואמת ל-
LOCATION_ID, כמוeurope-west4-. מידע נוסף על נקודות קצה אזוריות - PROJECT_NUMBER: מספר הפרויקט ב- Google Cloud.
- LOCATION_ID: האזור שבו אתם משתמשים ב-Vertex AI Vision. לדוגמה:
us-central1, europe-west4. אזורים זמינים - CORPUS_ID: המזהה של מאגר הידע היעד.
- ASSET_ID: (אופציונלי) ערך שסופק על ידי המשתמש למזהה הנכס. בבקשה הזו, הערך
מוסף לכתובת ה-URL של הבקשה בפורמט:
- https://ENDPOINT/v1/[...]/corpora/CORPUS_ID/assets?asset_id=ASSET_ID
- TIME_TO_LIVE: אורך החיים (TTL) של כל הנכסים בקורפוס, או אורך החיים של נכס ספציפי. לדוגמה, אם יש לכם מאגר נכסים עם TTL של 100 ימים, צריך להזין את הערך
8640000(בשניות).
ה-method של ה-HTTP וכתובת ה-URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets
גוף בקשת JSON:
{
"ttl": {
"seconds": TIME_TO_LIVE
}
}
כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:
curl
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets"
PowerShell
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets" | Select-Object -Expand Content
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID",
"ttl": "TIME_TO_LIVEs"
}
Vertex AI Vision SDK
כדי לשלוח בקשה לקריאת פלט של מודל, צריך להתקין את Vertex AI Vision SDK.
כשמשתמשים בכלי vaictl של שורת הפקודה כדי ליצור נכס, אי אפשר לציין מזהה נכס או TTL.
מחליפים את המשתנים הבאים:
- PROJECT_NUMBER: מספר הפרויקט ב- Google Cloud .
- LOCATION_ID: מזהה המיקום. לדוגמה,
us-central1. אזורים נתמכים מידע נוסף - CORPUS_ID: המזהה של מחסן היעד (משאב
corpus).
vaictl --project-id=PROJECT_NUMBER \
--location-id=LOCATION_ID \
--service-endpoint=warehouse-visionai.googleapis.com \
create asset CORPUS_ID
אחרי שיוצרים נכס, אפשר להטמיע נתוני וידאו ישירות במחסן הנתונים של הנכס באמצעות כלי שורת הפקודה vaictl.
עדכון נכס של מחסן סרטונים לסטרימינג
דוגמת הקוד הבאה מראה איך לעדכן את משך החיים (TTL) של נכס. אפשר לעדכן רק את השדה TTL.
בדוגמת הקוד הבאה נעשה שימוש בפרמטר השאילתה updateMask כדי לעדכן את ה-TTL של נכס. אפשר להשתמש בפרמטר שאילתה כדי לעדכן רק את השדה TTL. הפעולה של updateMask היא כזו:
- אם מציינים את השדה הזה, רק השדות ב-
updateMaskמתעדכנים. - אם ערך מסכת העדכון הוא
*, הבקשה מעדכנת את כל השדות. אם לא מציינים את מסכת העדכון, רק השדות בכתובת ה-URL של הבקשה עם ערך שסופק בגוף הבקשה יעודכנו.
REST ושורת הפקודה
בדוגמאות הקוד הבאות מוצגות שיטות לשינוי ה-TTL של נכס באמצעות השיטה projects.locations.corpora.assets.patch.
שינוי ערך TTL
בדוגמה הזו נעשה שימוש ב-?updateMask=ttl בכתובת ה-URL של הבקשה, והיא כוללת ערך חדש של ttl.seconds בגוף הבקשה כדי לעדכן את הנכס.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- REGIONALIZED_ENDPOINT: נקודת הקצה עשויה לכלול תחילית שתואמת ל-
LOCATION_ID, כמוeurope-west4-. מידע נוסף על נקודות קצה אזוריות - PROJECT_NUMBER: מספר הפרויקט ב- Google Cloud.
- LOCATION_ID: האזור שבו אתם משתמשים ב-Vertex AI Vision. לדוגמה:
us-central1, europe-west4. אזורים זמינים - CORPUS_ID: המזהה של מאגר הידע היעד.
- ASSET_ID: המזהה של נכס היעד.
-
?updateMask=fieldToUpdate: אחד מהשדות הזמינים שאפשר להחיל עליהםupdateMask. השדות הזמינים:- אורך חיים (TTL):
?updateMask=ttl - עדכון כל השדות:
?updateMask=*
- אורך חיים (TTL):
ה-method של ה-HTTP וכתובת ה-URL:
PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl
גוף בקשת JSON:
{
"ttl": {
"seconds": "1"
}
}
כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:
curl
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl"
PowerShell
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl" | Select-Object -Expand Content
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID"
}
הסרת ערך TTL
בדוגמה הזו נעשה שימוש בפרמטר ?updateMask=ttl בכתובת ה-URL של הבקשה, והיא כוללת גוף בקשה ריק כדי לנקות את ערך ה-TTL של נכס.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- REGIONALIZED_ENDPOINT: נקודת הקצה עשויה לכלול תחילית שתואמת ל-
LOCATION_ID, כמוeurope-west4-. מידע נוסף על נקודות קצה אזוריות - PROJECT_NUMBER: מספר הפרויקט ב- Google Cloud.
- LOCATION_ID: האזור שבו אתם משתמשים ב-Vertex AI Vision. לדוגמה:
us-central1, europe-west4. אזורים זמינים - CORPUS_ID: המזהה של מאגר הידע היעד.
- ASSET_ID: המזהה של נכס היעד.
-
?updateMask=fieldToUpdate: אחד מהשדות הזמינים שאפשר להחיל עליהםupdateMask. השדות הזמינים:- אורך חיים (TTL):
?updateMask=ttl - עדכון כל השדות:
?updateMask=*
- אורך חיים (TTL):
ה-method של ה-HTTP וכתובת ה-URL:
PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl
גוף בקשת JSON:
{}
כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:
curl
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl"
PowerShell
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl" | Select-Object -Expand Content
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID"
}