Gérer les instances d'application

Une fois que vous avez créé et déployé des applications, vous pouvez gérer ces instances d'application à l'aide de la console ou de la ligne de commande Google Cloud .

Afficher les instances et les résultats de l'application déployée

Vous pouvez afficher les instances et les résultats des applications à l'aide de la console Google Cloud ou de la ligne de commande. Vous pouvez ensuite utiliser ces informations pour lire les flux de sortie du modèle et obtenir des composants.

UI Web

Affichez les instances et la sortie d'une application dans la console Google Cloud .

  1. Ouvrez l'onglet Applications du tableau de bord Vertex AI Vision.

    Accéder à l'onglet "Applications"

  2. Sélectionnez le nom de l'application que vous souhaitez afficher. Vous êtes redirigé vers la page d'informations sur l'application.

    La page de détails de l'application affiche un tableau contenant les ressources de l'application. Ce tableau liste toutes les instances en cours d'exécution de l'application. Chaque flux d'entrée vers l'application possède sa propre instance. Chaque instance possède ses propres ressources d'entrée et de sortie listées en dessous.

    Image de la page d'informations sur les ressources de l'application

  3. Pour inspecter les ressources de flux ou d'entrepôt dans le tableau des instances, cliquez sur l'ID d'entrée ou de sortie, ou sélectionnez le chemin d'accès.

    • Si vous cliquez sur une ressource stream, vous êtes redirigé vers la page d'informations du flux, où vous pouvez examiner les informations détaillées de ce flux.

      Pour savoir comment lire le flux de sortie d'un modèle à l'aide de la ligne de commande, consultez Créer et gérer des flux.

      Image détaillée de la ressource de flux

    • Cliquez sur la ressource Élément d'entrepôt pour accéder à la page d'informations sur l'élément Vision Warehouse.

      Pour obtenir un élément Vision Warehouse, consultez Gérer les ressources à l'aide de l'API Vision Warehouse.

      Image détaillée de la ressource d'entrepôt

REST

Pour lister les instances d'application, envoyez une requête GET à l'aide de la méthode projects.locations.applications.instances.list.

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

Méthode HTTP et URL :

GET https://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID/instances

Pour envoyer votre requête, choisissez l'une des options suivantes :

curl

Exécutez la commande suivante :

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

Exécutez la commande suivante :

$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

Vous devriez recevoir une réponse JSON de ce type :

{
  "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
        }
      ]
    }
  ]
}

Supprimer une instance d'application

REST

Pour supprimer des instances d'application, envoyez une requête POST à l'aide de la méthode projects.locations.applications.deleteApplicationInstances.

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • 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.
  • APPLICATION_ID : ID de votre application cible.

Méthode HTTP et URL :

POST https://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID:deleteApplicationInstances

Corps JSON de la requête :

{
  "instanceIds": [
    "INSTANCE_ID1",
    "INSTANCE_ID2",
    [...]
  ]
}

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://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID:deleteApplicationInstances"

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://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID:deleteApplicationInstances" | Select-Object -Expand Content

Vous devriez recevoir une réponse JSON de ce type :

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

Gérer des applications à grande échelle

Les méthodes de déploiement et d'annulation du déploiement sont valides pour les applications comportant moins de 20 instances. Si votre application comporte plus de 20 instances, vous devez créer et supprimer des instances de manière incrémentielle avec l'API. Le workflow recommandé est le suivant :

  1. Créez votre application.
  2. Ajoutez entre 1 et 20 instances expérimentales.
  3. Déployez votre application.
  4. Vérifiez que votre application fonctionne comme prévu.
  5. Utilisez la méthode createApplicationInstances pour ajouter progressivement des entrées à l'application déployée.
  6. Autorisez l'application à s'exécuter.
  7. Utilisez la méthode deleteApplicationInstances pour supprimer progressivement les entrées des applications déployées.
  8. Annulez le déploiement de l'application.