アプリをビルドしてデプロイしたら、 Google Cloud コンソールまたはコマンドラインを使用して、これらのアプリ インスタンスを管理できます。
デプロイされたアプリ インスタンスと出力を表示する
アプリ インスタンスと出力は、 Google Cloud コンソールまたはコマンドラインで確認できます。この情報を使用して、モデル出力ストリームを読み取り、アセットを取得できます。
ウェブ UI
Google Cloud コンソールでアプリのインスタンスと出力を表示します。
Vertex AI Vision ダッシュボードの [アプリケーション] タブを開きます。
表示するアプリの名前を選択します。アプリケーションの詳細ページが表示されます。
アプリケーションの詳細ページに、アプリケーション リソースの表が表示されます。この表には、アプリケーションの実行中のインスタンスがすべて一覧表示されます。アプリケーションへの各入力ストリームには独自のインスタンスがあります。各インスタンスには、その下に独自の入力リソースと出力リソースがリストされています。

インスタンス テーブルでストリームまたはウェアハウスのアセット リソースを検査するには、入力または出力 ID をクリックするか、パスを選択します。
ストリーム リソースをクリックすると、ストリームの詳細ページにリダイレクトされ、そのストリームの詳細情報を確認できます。
コマンドラインを使用してモデルの出力ストリームを読み取る方法については、ストリームを作成して管理するをご覧ください。

ウェアハウス アセット リソースをクリックすると、Vision Warehouse アセットの詳細ページに移動します。
Vision Warehouse アセットを取得するには、Vision Warehouse API を使用してリソースを管理するをご覧ください。

REST
アプリ インスタンスを一覧表示するには、projects.locations.applications.instances.list メソッドを使用して GET リクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT: Google Cloud プロジェクト ID またはプロジェクト番号。
- LOCATION_ID: Vertex AI Vision を使用しているリージョン。たとえば、
us-central1、europe-west4などです。利用可能なリージョンをご覧ください。 - APPLICATION_ID: ターゲット アプリケーションの ID。
HTTP メソッドと URL:
GET https://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID/instances
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
次のコマンドを実行します。
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
次のコマンドを実行します。
$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
次のような JSON レスポンスが返されます。
{
"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
}
]
}
]
}
アプリ インスタンスを削除する
REST
アプリケーション インスタンスを削除するには、projects.locations.applications.deleteApplicationInstances メソッドを使用して POST リクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_NUMBER: 実際の Google Cloud プロジェクト番号。
- LOCATION_ID: Vertex AI Vision を使用しているリージョン。たとえば、
us-central1、europe-west4などです。利用可能なリージョンをご覧ください。 - APPLICATION_ID: ターゲット アプリケーションの ID。
HTTP メソッドと URL:
POST https://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID:deleteApplicationInstances
リクエストの本文(JSON):
{
"instanceIds": [
"INSTANCE_ID1",
"INSTANCE_ID2",
[...]
]
}
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。
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
リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。
$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
次のような JSON レスポンスが返されます。
{
"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
}
大規模なアプリを管理する
デプロイ メソッドとデプロイ解除メソッドは、インスタンスが 20 個未満のアプリケーションで有効です。アプリに 20 個を超えるインスタンスがある場合は、API を使用してインスタンスを増分的に作成および削除する必要があります。推奨されるワークフローは次のとおりです。
- アプリを作成します。
- 試験運用版インスタンスを 1 ~ 20 個追加します。
- アプリケーションをデプロイします。
- アプリが想定どおりに動作することを確認します。
createApplicationInstancesメソッドを使用して、デプロイされたアプリケーションにインクリメンタルにインプットを追加します。- アプリの実行を許可します。
deleteApplicationInstancesメソッドを使用して、デプロイされたアプリケーションから入力を段階的に削除します。- アプリケーションのデプロイを解除します。