יצירה ועדכון של נכס מחסן

למחסן Vision מחובר (corpus) באפליקציה שפריסתה כוללת הטמעה של נתונים יש משאב אחד או יותר של אובייקט מדיה (לדוגמה, משאבי וידאו). אובייקטים של מדיה (משאבי asset) מכילים מטא-נתונים והערות למשאבים. משתמשים בפקודות הבאות כדי ליצור ולעדכן את אובייקטי המדיה האלה.

יצירת נכס מסוג 'סרטון סטרימינג'

אחרי יצירת מחסן (משאב corpus), אפשר להוסיף למחסן משאב אחד או יותר של סרטוני וידאו asset.

‏REST ושורת הפקודה

הקוד הבא יוצר נכס חדש במחסן הנתונים הנתון (corpus) עם אפשרות לציין את המזהה של הנכס ואת ה-TTL.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • REGIONALIZED_ENDPOINT: נקודת הקצה עשויה לכלול תחילית שתואמת ל-LOCATION_ID, כמו europe-west4-. מידע נוסף על נקודות קצה אזוריות
  • PROJECT_NUMBER: מספר הפרויקט ב- Google Cloud.
  • LOCATION_ID: האזור שבו משתמשים ב-Agent Platform 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"
}

‫Gemini Enterprise Agent Platform Vision SDK

כדי לשלוח בקשה לקריאת פלט של מודל, צריך להתקין את Gemini Enterprise Agent Platform 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: האזור שבו משתמשים ב-Agent Platform Vision. לדוגמה: us-central1, ‏ europe-west4. אזורים זמינים
  • CORPUS_ID: המזהה של מאגר הידע היעד.
  • ASSET_ID: המזהה של נכס היעד.
  • ?updateMask=fieldToUpdate: אחד מהשדות הזמינים שאפשר להחיל עליהם updateMask. השדות הזמינים:
    • אורך חיים (TTL): ?updateMask=ttl
    • עדכון כל השדות: ?updateMask=*

ה-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: האזור שבו משתמשים ב-Agent Platform Vision. לדוגמה: us-central1, ‏ europe-west4. אזורים זמינים
  • CORPUS_ID: המזהה של מאגר הידע היעד.
  • ASSET_ID: המזהה של נכס היעד.
  • ?updateMask=fieldToUpdate: אחד מהשדות הזמינים שאפשר להחיל עליהם updateMask. השדות הזמינים:
    • אורך חיים (TTL): ?updateMask=ttl
    • עדכון כל השדות: ?updateMask=*

ה-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"
}