Anwendungsinstanzen verwalten

Nachdem Sie Apps erstellt und bereitgestellt haben, können Sie diese App-Instanzen über die Google Cloud -Konsole oder die Befehlszeile verwalten.

Bereitgestellte App-Instanzen und ‑Ausgabe ansehen

Sie können App-Instanzen und die Ausgabe über die Google Cloud -Konsole oder die Befehlszeile aufrufen. Anschließend können Sie diese Informationen verwenden, um Modellausgabestreams zu lesen und Assets abzurufen.

Web-UI

Instanzen und Ausgaben einer App in der Google Cloud Console ansehen

  1. Öffnen Sie den Tab Anwendungen des Vertex AI Vision-Dashboards.

    Zum Tab „Anwendungen“

  2. Wählen Sie den Namen der App aus, die Sie aufrufen möchten. Sie werden zur Seite mit den Anwendungsdetails weitergeleitet.

    Auf der Seite mit den Anwendungsdetails wird eine Tabelle mit Anwendungsressourcen angezeigt. In dieser Tabelle sind alle laufenden Instanzen der Anwendung aufgeführt. Jeder Eingabestream für die Anwendung hat eine eigene Instanz. Jede Instanz hat eigene Ein- und Ausgaberessourcen, die darunter aufgeführt sind.

    Bild auf der Detailseite für App-Ressourcen

  3. Wenn Sie die Stream- oder Warehouse-Asset-Ressourcen in der Instanztabelle untersuchen möchten, klicken Sie auf die Eingabe- oder Ausgabedaten-ID oder wählen Sie den Pfad aus.

    • Wenn Sie auf eine Stream-Ressource klicken, werden Sie zur Seite mit den Streamdetails weitergeleitet, auf der Sie die detaillierten Informationen zu diesem Stream aufrufen können.

      Informationen zum Lesen des Ausgabestreams eines Modells über die Befehlszeile finden Sie unter Streams erstellen und verwalten.

      Detailbild der Streamressource

    • Wenn Sie auf die Ressource Warehouse-Asset klicken, gelangen Sie zur Detailseite des Vision Warehouse-Assets.

      Informationen zum Abrufen eines Vision Warehouse-Assets finden Sie unter Ressourcen mit der Vision Warehouse API verwalten.

      Bild mit Details zur Warehouse-Ressource

REST

Senden Sie zum Auflisten von App-Instanzen eine GET-Anfrage mit der Methode projects.locations.applications.instances.list.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

HTTP-Methode und URL:

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

Senden Sie die Anfrage mithilfe einer der folgenden Optionen:

curl

Führen Sie folgenden Befehl aus:

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

Führen Sie folgenden Befehl aus:

$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

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

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

App-Instanz löschen

REST

Senden Sie zum Löschen von Anwendungsinstanzen eine POST-Anfrage mit der Methode projects.locations.applications.deleteApplicationInstances.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • PROJECT_NUMBER: Ihre Google Cloud Projektnummer.
  • LOCATION_ID: Die Region, in der Sie Vertex AI Vision verwenden. Beispiele: us-central1, europe-west4. Verfügbare Regionen
  • APPLICATION_ID: Die ID Ihrer Zielanwendung.

HTTP-Methode und URL:

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

JSON-Text der Anfrage:

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

Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

curl

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

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

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

$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

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

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

Apps in großem Umfang verwalten

Die Methoden „deploy“ und „undeploy“ sind für Anwendungen mit weniger als 20 Instanzen gültig. Wenn Ihre App mehr als 20 Instanzen hat, müssen Sie Instanzen inkrementell mit der API erstellen und entfernen. Der empfohlene Workflow sieht so aus:

  1. Erstellen Sie Ihre App.
  2. Fügen Sie 1 bis 20 Testinstanzen hinzu.
  3. Stellen Sie Ihre App bereit.
  4. Prüfen Sie, ob Ihre App wie erwartet funktioniert.
  5. Mit der Methode createApplicationInstances können Sie der bereitgestellten Anwendung nach und nach weitere Eingaben hinzufügen.
  6. App darf ausgeführt werden.
  7. Mit der Methode deleteApplicationInstances können Sie Eingaben schrittweise aus bereitgestellten Anwendungen entfernen.
  8. Heben Sie die Bereitstellung der Anwendung auf.