חיפוש נתונים ב-Batch Video Warehouse

דרישה מוקדמת: יצירת מאגר סרטונים לעיבוד באצווה עם אינדקס שמוטמע.

חיפוש נתונים של Search Batch Video Warehouse במסוף

המסוף

  1. פותחים את הכרטיסייה Warehouses (מחסני נתונים) במרכז הבקרה של Gemini Enterprise Agent Platform Vision.

    כניסה לכרטיסייה Warehouses

  2. מאתרים את נקודת הקצה של האינדקס שרוצים לחפש ולוחצים על חיפוש נכסים.

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

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

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

חיפוש נתונים ב-Video Warehouse באצווה באמצעות שורת הפקודה

כדי לחפש סרטונים (assets) במאגר המידע (corpus), צריך למלא את searchIndexEndpoint גוף הבקשה בתוכן שרוצים למצוא. התוכן הזה מופיע בכמה פורמטים שונים:

  1. text_query או image_query: השאילתה לחיפוש.
  2. אופציונלי criteria: סינון קריטריונים בהערות שסופקו על ידי המשתמש.

בדוגמה הבאה, נניח שיש קורפוס שמכיל סרטונים של נופים טבעיים. כדי לאחזר את כל הנכסים שרלוונטיים ל'שקיעה בחוף' ומתויגים בהערה "state": "California", שולחים את הבקשה הבאה:

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

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

ה-method של ה-HTTP וכתובת ה-URL:

POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint

גוף בקשת JSON:

{
  "text_query": "sunset at beach",
  "criteria": [
    {
      "field": "state",
      "text_array": {
          "txt_values": [
            "California"
          ]
      }
    }
  ]
}

כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:

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/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint"

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/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint" | Select-Object -Expand Content

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "searchResultItems": [
    {
      "asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_1"
    },
    {
      "asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_2"
    }
  ]
}

אם יש לכם תמונה של שקיעה בחוף, אתם יכולים גם להשתמש בה כשאילתת חיפוש על ידי שליחת הבקשה הבאה (תמונת הקלט היא בפורמט קידוד base64):

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

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

ה-method של ה-HTTP וכתובת ה-URL:

POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint

גוף בקשת JSON:

{
  "image_query": {
    "input_image": "IMAGE_BYTES"
  },
  "criteria": [
    {
      "field": "state",
      "text_array": {
          "txt_values": [
            "California"
          ]
      }
    }
  ]
}

כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:

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/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint"

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/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint" | Select-Object -Expand Content

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "searchResultItems": [
    {
      "asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_1"
    },
    {
      "asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_2"
    }
  ]
}