Dopo aver generato e eseguito il deployment delle app, puoi gestire queste istanze utilizzando la console o la riga di comando Google Cloud.
Visualizzare le istanze e l'output delle app di cui è stato eseguito il deployment
Puoi visualizzare le istanze e l'output dell'app utilizzando la console Google Cloud o la riga di comando. Puoi quindi utilizzare queste informazioni per leggere gli stream di output del modello e ricevere gli asset.
UI web
Visualizza le istanze e l'output di un'app nella console Google Cloud.
Apri la scheda Applicazioni della dashboard di Vertex AI Vision.
Seleziona il nome dell'app che vuoi visualizzare. Viene visualizzata la pagina dei dettagli dell'applicazione.
La pagina dei dettagli dell'applicazione mostra una tabella con le risorse dell'applicazione. Questa tabella elenca tutte le istanze in esecuzione dell'applicazione. Ogni stream di input all'applicazione ha la propria istanza. Sotto ogni istanza sono elencate le relative risorse di input e output.
Per ispezionare le risorse delle risorse dello stream o del magazzino nella tabella delle istanze, fai clic sull'ID di input o di output o seleziona il percorso.
Se fai clic sulla risorsa stream, viene visualizzata la pagina dei dettagli dello stream, in cui puoi esaminare le informazioni dettagliate dello stream.
Per scoprire come leggere lo stream di output di un modello utilizzando la riga di comando, consulta Creare e gestire gli stream.
Se fai clic sulla risorsa asset del warehouse, viene visualizzata la pagina dei dettagli dell'asset del magazzino Vision.
Per ottenere una risorsa Vision Warehouse, consulta Gestire le risorse con l'API Vision Warehouse.
REST
Per elencare le istanze dell'app, invia una richiesta GET utilizzando il metodo projects.locations.applications.instances.list.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT: il tuo Google Cloud ID progetto o numero di progetto.
- LOCATION_ID: la regione in cui utilizzi Vertex AI Vision. Ad esempio:
us-central1
,europe-west4
. Consulta le regioni disponibili. - APPLICATION_ID: l'ID dell'applicazione di destinazione.
Metodo HTTP e URL:
GET https://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID/instances
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID/instances"
PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID/instances" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "instances": [ { "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID/instances/INSTANCE_ID", "createTime": "2022-03-01T20:05:45.863836157Z", "inputResources": [ { "inputResource": "input-stream", "consumerNode": "builtin-input-stream" } ], "outputResources": [ { "outputResource": "sample-resource-1", "producerNode": "builtin-occupancy-count", "isTemporary": true }, { "outputResource": "sample-resource-2", "producerNode": "builtin-input-stream" }, { "outputResource": "sample-resource-3", "producerNode": "builtin-input-stream", "isTemporary": true }, { "outputResource": "sample-resource-4", "producerNode": "builtin-input-stream", "isTemporary": true } ] } ] }
Eliminare un'istanza dell'app
REST
Per eliminare le istanze dell'applicazione, invia una richiesta POST utilizzando il metodo projects.locations.applications.deleteApplicationInstances.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- 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. - APPLICATION_ID: l'ID dell'applicazione di destinazione.
Metodo HTTP e URL:
POST https://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID:deleteApplicationInstances
Corpo JSON della richiesta:
{ "instanceIds": [ "INSTANCE_ID1", "INSTANCE_ID2", [...] ] }
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://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID:deleteApplicationInstances"
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://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID:deleteApplicationInstances" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.visionai.v1.OperationMetadata", "createTime": "[...]", "Target": "projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID" "Verb": "update" "apiVersion": "v1" }, "done": false }
Gestire app su larga scala
I metodi di deployment e undeployment sono validi per le applicazioni con meno di 20 istanze. Se la tua app ha più di 20 istanze, devi crearle e rimuoverle in modo incrementale con l'API. Il flusso di lavoro consigliato è il seguente:
- Crea la tua app.
- Aggiungi 1-20 istanze sperimentali.
- Esegui il deployment dell'applicazione.
- Verifica che l'app funzioni come previsto.
- Utilizza il metodo
createApplicationInstances
per aggiungere gradualmente altri input all'applicazione di cui è stato eseguito il deployment. - Consenti l'esecuzione dell'app.
- Utilizza il metodo
deleteApplicationInstances
per rimuovi in modo incrementale gli input dalle applicazioni di cui è stato eseguito il deployment. - Annullare il deployment dell'applicazione.