Un entrepôt Vision connecté (corpus
) dans une application déployée qui ingère des données contient une ou plusieurs ressources d'objets multimédias (par exemple, des ressources vidéo).
Ces objets multimédias (ressources asset
) contiennent des métadonnées et des annotations de ressources. Utilisez les commandes suivantes pour créer et mettre à jour ces objets multimédias.
Créer un composant d'entrepôt de vidéos en streaming
Une fois que vous avez créé un entrepôt (ressource corpus
), vous pouvez y ajouter une ou plusieurs ressources vidéo asset
.
API REST et ligne de commande
Le code suivant crée un élément sous l'entrepôt donné (corpus
) avec la possibilité de spécifier l'ID de l'élément et un TTL.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- REGIONALIZED_ENDPOINT: le point de terminaison peut inclure un préfixe correspondant à
LOCATION_ID
, tel queeurope-west4-
. En savoir plus sur les points de terminaison régionalisés - PROJECT_NUMBER: numéro de votre projet Google Cloud.
- LOCATION_ID: région dans laquelle vous utilisez Vertex AI Vision. Par exemple:
us-central1
,europe-west4
. Consultez les régions disponibles. - CORPUS_ID: ID de votre corpus cible.
- ASSET_ID (facultatif) : valeur fournie par l'utilisateur pour l'ID de l'asset. Dans cette requête, la valeur est ajoutée à l'URL de la requête sous la forme suivante :
- https://ENDPOINT/v1/[...]/corpora/CORPUS_ID/assets?asset_id=ASSET_ID
- TIME_TO_LIVE: durée de vie (TTL) de tous les composants d'un corpus ou TTL d'un composant spécifique. Par exemple, pour un corpus d'éléments dont le TTL est de 100 jours, indiquez la valeur
8640000
(secondes).
Méthode HTTP et URL :
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets
Corps JSON de la requête :
{ "ttl": { "seconds": TIME_TO_LIVE } }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
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
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$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
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID", "ttl": "TIME_TO_LIVEs" }
SDK Vertex AI Vision
Pour envoyer une requête de lecture d'un flux de sortie de modèle, vous devez installer le SDK Vertex AI Vision.
Lorsque vous utilisez l'outil de ligne de commande vaictl
pour créer un composant, vous ne pouvez pas spécifier d'ID ni de TTL.
Effectuez les substitutions de variables suivantes :
- PROJECT_NUMBER: numéro de votre projet Google Cloud .
- LOCATION_ID: ID de votre emplacement. Exemple :
us-central1
Régions où le service est disponible En savoir plus - CORPUS_ID: ID de l'entrepôt cible (ressource
corpus
).
vaictl --project-id=PROJECT_NUMBER \
--location-id=LOCATION_ID \
--service-endpoint=warehouse-visionai.googleapis.com \
create asset CORPUS_ID
Une fois un élément créé, vous pouvez ingérer des données vidéo directement dans l'entrepôt de cet élément à l'aide de l'outil de ligne de commande vaictl
.
Modifier un composant de dépôt vidéo en streaming
Utilisez l'exemple de code suivant pour mettre à jour la durée de vie (TTL) d'un composant. Vous ne pouvez mettre à jour que le champ TTL.
Utilisez le paramètre de requête updateMask
dans l'exemple de code suivant pour mettre à jour le TTL d'un composant. Vous ne pouvez utiliser un paramètre de requête que pour mettre à jour le champ TTL. updateMask
fonctionne comme suit:
- Si elle est spécifiée, seuls les champs de
updateMask
sont mis à jour. - Si la valeur du masque de mise à jour est
*
, la requête met à jour tous les champs. Si le masque de mise à jour n'est pas spécifié, seuls les champs de l'URL de la requête avec une valeur fournie dans le corps de la requête sont mis à jour.
API REST et ligne de commande
Les exemples de code suivants modifient le TTL d'un composant à l'aide de la méthode projects.locations.corpora.assets.patch
.
Modifier une valeur TTL
Cet exemple utilise ?updateMask=ttl
dans l'URL de la requête et inclut une nouvelle valeur ttl.seconds
dans le corps de la requête pour mettre à jour l'asset.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- REGIONALIZED_ENDPOINT: le point de terminaison peut inclure un préfixe correspondant à
LOCATION_ID
, tel queeurope-west4-
. En savoir plus sur les points de terminaison régionalisés - PROJECT_NUMBER: numéro de votre projet Google Cloud.
- LOCATION_ID: région dans laquelle vous utilisez Vertex AI Vision. Par exemple:
us-central1
,europe-west4
. Consultez les régions disponibles. - CORPUS_ID: ID de votre corpus cible.
- ASSET_ID: ID de votre composant cible.
?updateMask=fieldToUpdate
: l'un des champs disponibles auxquels vous pouvez appliquer unupdateMask
. Champs disponibles :- Valeur TTL (Time to Live):
?updateMask=ttl
- Mettre à jour tous les champs:
?updateMask=*
- Valeur TTL (Time to Live):
Méthode HTTP et URL :
PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl
Corps JSON de la requête :
{ "ttl": { "seconds": "1" } }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
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
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$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
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" }
Supprimer une valeur TTL
Cet exemple utilise ?updateMask=ttl
dans l'URL de la requête et inclut un corps de requête vide pour effacer la valeur TTL de l'asset.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- REGIONALIZED_ENDPOINT: le point de terminaison peut inclure un préfixe correspondant à
LOCATION_ID
, tel queeurope-west4-
. En savoir plus sur les points de terminaison régionalisés - PROJECT_NUMBER: numéro de votre projet Google Cloud.
- LOCATION_ID: région dans laquelle vous utilisez Vertex AI Vision. Par exemple:
us-central1
,europe-west4
. Consultez les régions disponibles. - CORPUS_ID: ID de votre corpus cible.
- ASSET_ID: ID de votre composant cible.
?updateMask=fieldToUpdate
: l'un des champs disponibles auxquels vous pouvez appliquer unupdateMask
. Champs disponibles :- Valeur TTL (Time to Live):
?updateMask=ttl
- Mettre à jour tous les champs:
?updateMask=*
- Valeur TTL (Time to Live):
Méthode HTTP et URL :
PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl
Corps JSON de la requête :
{}
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
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
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$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
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" }