Un Vision Warehouse (corpus
) connesso in un'app di importazione dei dati di cui è stato eseguito il deployment contiene una o più risorse di oggetti multimediali (ad esempio risorse video).
Questi oggetti media (risorse asset
) contengono metadati e annotazioni delle risorse. Utilizza i seguenti comandi per creare e aggiornare questi oggetti multimediali.
Creare un asset del magazzino video in streaming
Dopo aver creato un magazzino (risorsa corpus
),
puoi aggiungere al magazzino una o più risorse video asset
.
REST e riga di comando
Il seguente codice crea una nuova risorsa nel magazzino specificato (corpus
) con la possibilità di specificare l'ID della risorsa e un TTL.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- REGIONALIZED_ENDPOINT: l'endpoint potrebbe includere un prefisso corrispondente a
LOCATION_ID
, ad esempioeurope-west4-
. Scopri di più sugli endpoint regionalizzati. - PROJECT_NUMBER: il tuo Google Cloud numero progetto.
- LOCATION_ID: la regione in cui utilizzi Vertex AI Vision. Ad esempio:
us-central1
,europe-west4
. Consulta le regioni disponibili. - CORPUS_ID: l'ID del corpus di destinazione.
- ASSET_ID: (facoltativo) un valore fornito dall'utente per l'ID risorsa. In questa richiesta, il valore viene aggiunto all'URL della richiesta nel seguente formato:
- https://ENDPOINT/v1/[...]/corpora/CORPUS_ID/assets?asset_id=ASSET_ID
- TIME_TO_LIVE: la durata (TTL) di tutti gli asset di un corpus o la durata (TTL) di un asset specifico. Ad esempio, per un corpus con asset con un TTL di 100 giorni,
specifica il valore
8640000
(secondi).
Metodo HTTP e URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets
Corpo JSON della richiesta:
{ "ttl": { "seconds": TIME_TO_LIVE } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
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
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$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
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID", "ttl": "TIME_TO_LIVEs" }
SDK Vertex AI Vision
Per inviare una richiesta di lettura di uno stream di output del modello, devi installare l'SDK Vertex AI Vision.
Quando utilizzi lo strumento a riga di comando vaictl
per creare una risorsa, non puoi specificare un ID risorsa o un TTL.
Apporta le seguenti sostituzioni delle variabili:
- PROJECT_NUMBER: il numero del tuo Google Cloud progetto.
- LOCATION_ID: il tuo ID posizione. Ad esempio,
us-central1
. Regioni supportate. Scopri di più. - CORPUS_ID: l'ID del magazzino di destinazione (risorsa
corpus
).
vaictl --project-id=PROJECT_NUMBER \
--location-id=LOCATION_ID \
--service-endpoint=warehouse-visionai.googleapis.com \
create asset CORPUS_ID
Dopo aver creato una risorsa, puoi importare i dati video direttamente nel magazzino della risorsa utilizzando lo strumento a riga di comando vaictl
.
Aggiornare un asset del magazzino video in streaming
Utilizza il seguente esempio di codice per aggiornare il valore TTL (time-to-live) di un asset. Puoi aggiornare solo il campo TTL.
Utilizza il parametro di query updateMask
nell'esempio di codice seguente per aggiornare il TTL di un asset. Puoi utilizzare un parametro di query per aggiornare solo il campo TTL. updateMask
funziona nel seguente modo:
- Se specificato, vengono aggiornati solo i campi in
updateMask
. - Se il valore della maschera di aggiornamento è
*
, la richiesta aggiorna tutti i campi. Se la maschera di aggiornamento non è specificata, vengono aggiornati solo i campi nell'URL della richiesta con un valore fornito nel corpo della richiesta.
REST e riga di comando
I seguenti esempi di codice modificano il TTL di una risorsa utilizzando il metodo projects.locations.corpora.assets.patch
.
Modificare un valore TTL
Questo esempio utilizza ?updateMask=ttl
nell'URL della richiesta e include un nuovo valore ttl.seconds
nel corpo della richiesta per aggiornare l'asset.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- REGIONALIZED_ENDPOINT: l'endpoint potrebbe includere un prefisso corrispondente a
LOCATION_ID
, ad esempioeurope-west4-
. Scopri di più sugli endpoint regionalizzati. - PROJECT_NUMBER: il tuo Google Cloud numero progetto.
- LOCATION_ID: la regione in cui utilizzi Vertex AI Vision. Ad esempio:
us-central1
,europe-west4
. Consulta le regioni disponibili. - CORPUS_ID: l'ID del corpus di destinazione.
- ASSET_ID: l'ID della risorsa di destinazione.
?updateMask=fieldToUpdate
: uno dei campi disponibili a cui puoi applicare unupdateMask
. Campi disponibili:- Durata (TTL):
?updateMask=ttl
- Aggiorna tutti i campi:
?updateMask=*
- Durata (TTL):
Metodo HTTP e URL:
PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl
Corpo JSON della richiesta:
{ "ttl": { "seconds": "1" } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
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
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$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
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" }
Rimuovere un valore TTL
Questo esempio utilizza ?updateMask=ttl
nell'URL della richiesta e include un corpo della richiesta vuoto per cancellare il valore TTL della risorsa.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- REGIONALIZED_ENDPOINT: l'endpoint potrebbe includere un prefisso corrispondente a
LOCATION_ID
, ad esempioeurope-west4-
. Scopri di più sugli endpoint regionalizzati. - PROJECT_NUMBER: il tuo Google Cloud numero progetto.
- LOCATION_ID: la regione in cui utilizzi Vertex AI Vision. Ad esempio:
us-central1
,europe-west4
. Consulta le regioni disponibili. - CORPUS_ID: l'ID del corpus di destinazione.
- ASSET_ID: l'ID della risorsa di destinazione.
?updateMask=fieldToUpdate
: uno dei campi disponibili a cui puoi applicare unupdateMask
. Campi disponibili:- Durata (TTL):
?updateMask=ttl
- Aggiorna tutti i campi:
?updateMask=*
- Durata (TTL):
Metodo HTTP e URL:
PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl
Corpo JSON della richiesta:
{}
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
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
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$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
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" }