ウェアハウス(コーパス)を管理する

Vision Warehouse API を使用すると、コマンドラインで Vision Warehouse リソースを管理できます。

データ取り込みデプロイ済みアプリの接続されたウェアハウス(corpus)は、 Google Cloud プロジェクトのリソースです。これらのリソースを管理するには、次のコマンドを使用します。

コーパス リソースを作成する

動画ストリーミング コーパス

search_capability_setting」フィールドはサポートされていませんdefault_ttl フィールドは必須です。10 年未満にする必要があります。

REST

コーパス リソースを作成するには、projects.locations.corpora.create メソッドを使用して POST リクエストを送信します。

リクエストのデータを使用する前に、次のように置き換えます。

  • REGIONALIZED_ENDPOINT: エンドポイントには、LOCATION_ID に一致する接頭辞(europe-west4- など)が含まれる場合があります。 リージョン化されたエンドポイントの詳細をご覧ください。
  • PROJECT_NUMBER: 実際の Google Cloud プロジェクト番号
  • LOCATION_ID: Vertex AI Vision を使用しているリージョン。たとえば、us-central1europe-west4 などです。利用可能なリージョンをご覧ください。
  • DISPLAY_NAME: ウェアハウスの表示名。
  • WAREHOUSE_DESCRIPTION: データ ウェアハウスの説明(corpus)。
  • TIME_TO_LIVE: コーパス内のすべてのアセットの有効期間(TTL)、または特定のアセットの TTL。たとえば、TTL が 100 日のアセットを含むコーパスの場合は、値 8640000(秒)を指定します。

HTTP メソッドと URL:

POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora

リクエストの本文(JSON):

{
  "display_name": "DISPLAY_NAME",
  "description": "WAREHOUSE_DESCRIPTION",
  "type": "STREAM_VIDEO",
  "default_ttl": {
    "seconds": TIME_TO_LIVE
  }
}

リクエストを送信するには、次のいずれかのオプションを選択します。

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

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

次のような JSON レスポンスが返されます。

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/warehouseoperations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.visionai.v1.CreateCorpusMetadata"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.visionai.v1.Corpus",
    "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID",
    "displayName": "DISPLAY_NAME",
    "description": "WAREHOUSE_DESCRIPTION",
    "type": "STREAM_VIDEO",
    "defaultTtl": "TIME_TO_LIVE"
  }
}

画像コーパス

default_ttl フィールドはサポートされていません。

REST

コーパス リソースを作成するには、projects.locations.corpora.create メソッドを使用して POST リクエストを送信します。

リクエストのデータを使用する前に、次のように置き換えます。

  • REGIONALIZED_ENDPOINT: エンドポイントには、LOCATION_ID に一致する接頭辞(europe-west4- など)が含まれる場合があります。 リージョン化されたエンドポイントの詳細をご覧ください。
  • PROJECT_NUMBER: 実際の Google Cloud プロジェクト番号
  • LOCATION_ID: Vertex AI Vision を使用しているリージョン。たとえば、us-central1europe-west4 などです。利用可能なリージョンをご覧ください。
  • DISPLAY_NAME: ウェアハウスの表示名。
  • WAREHOUSE_DESCRIPTION: データ ウェアハウスの説明(corpus)。

HTTP メソッドと URL:

POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora

リクエストの本文(JSON):

{
  "display_name": "DISPLAY_NAME",
  "description": "WAREHOUSE_DESCRIPTION",
  "type": "IMAGE",
  "search_capability_setting": {
    "search_capabilities": {
      "type": "EMBEDDING_SEARCH"
    }
  }
}

リクエストを送信するには、次のいずれかのオプションを選択します。

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

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

次のような JSON レスポンスが返されます。

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/warehouseoperations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.visionai.v1.CreateCorpusMetadata"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.visionai.v1.Corpus",
    "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID",
    "displayName": "DISPLAY_NAME",
    "description": "WAREHOUSE_DESCRIPTION",
    "type": "IMAGE",
    "search_capability_setting": {
      "search_capabilities": {
        "type": "EMBEDDING_SEARCH"
      }
    }
  }
}

バッチ動画コーパス

default_ttl フィールドはサポートされていません。

REST

コーパス リソースを作成するには、projects.locations.corpora.create メソッドを使用して POST リクエストを送信します。

リクエストのデータを使用する前に、次のように置き換えます。

  • REGIONALIZED_ENDPOINT: エンドポイントには、LOCATION_ID に一致する接頭辞(europe-west4- など)が含まれる場合があります。 リージョン化されたエンドポイントの詳細をご覧ください。
  • PROJECT_NUMBER: 実際の Google Cloud プロジェクト番号
  • LOCATION_ID: Vertex AI Vision を使用するリージョン。たとえば、us-central1europe-west4 などです。利用可能なリージョンをご覧ください。
  • DISPLAY_NAME: ウェアハウスの表示名。
  • WAREHOUSE_DESCRIPTION: データ ウェアハウスの説明(corpus)。

HTTP メソッドと URL:

POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora

リクエストの本文(JSON):

{
  "display_name": "DISPLAY_NAME",
  "description": "WAREHOUSE_DESCRIPTION",
  "type": "VIDEO_ON_DEMAND",
  "search_capability_setting": {
    "search_capabilities": {
      "type": "EMBEDDING_SEARCH"
    }
  }
}

リクエストを送信するには、次のいずれかのオプションを選択します。

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

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

次のような JSON レスポンスが返されます。

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/warehouseoperations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.visionai.v1.CreateCorpusMetadata"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.visionai.v1.Corpus",
    "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID",
    "displayName": "DISPLAY_NAME",
    "description": "WAREHOUSE_DESCRIPTION",
    "type": "VIDEO_ON_DEMAND",
    "search_capability_setting": {
      "search_capabilities": {
        "type": "EMBEDDING_SEARCH"
      }
    }
  }
}

コーパス リソースを更新する

動画ストリーミング コーパス

search_capability_setting フィールドはサポートされていません。

REST

コーパス リソースを更新するには、projects.locations.corpora.patch メソッドを使用して PATCH リクエストを送信します。

リクエストのデータを使用する前に、次のように置き換えます。

  • REGIONALIZED_ENDPOINT: エンドポイントには、LOCATION_ID に一致する接頭辞(europe-west4- など)が含まれる場合があります。 リージョン化されたエンドポイントの詳細をご覧ください。
  • PROJECT_NUMBER: 実際の Google Cloud プロジェクト番号
  • LOCATION_ID: Vertex AI Vision を使用しているリージョン。たとえば、us-central1europe-west4 などです。利用可能なリージョンをご覧ください。
  • CORPUS_ID: ターゲット コーパスの ID。
  • ?updateMask=fieldToUpdate: updateMask を適用できる使用可能なフィールドの 1 つ。リクエストの本文で、対応する新しいフィールド値を指定します。この新しい値は、既存のフィールド値を置き換えます。使用可能なフィールド:
    • 表示名: ?updateMask=display_name
    • 説明: ?updateMask=description
    • デフォルトの有効期間(TTL): ?updateMask=default_ttl
    • すべてのフィールドを更新する: ?updateMask=*
  • UPDATED_FIELD_VALUE: 指定されたフィールドの新しい値。この例では、ウェアハウス リソースのユーザー指定の新しい表示名。

HTTP メソッドと URL:

PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID?update_mask=display_name

リクエストの本文(JSON):

{
  "displayName": "UPDATED_FIELD_VALUE",
  "description": "Original description",
  "defaultTtl": {
    "seconds": "7800"
  }
}

リクエストを送信するには、次のいずれかのオプションを選択します。

curl

リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。

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?update_mask=display_name"

PowerShell

リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。

$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?update_mask=display_name" | Select-Object -Expand Content

次のような JSON レスポンスが返されます。

{
  "name": "projects/PROJECT_ID/locations/LOCATION_ID/corpora/CORPORA_ID",
  "displayName": "UPDATED_FIELD_VALUE",
  "description": "Original description",
  "defaultTtl": "7800s"
}

画像コーパス

default_ttl フィールドはサポートされていません。

REST

コーパス リソースを更新するには、projects.locations.corpora.patch メソッドを使用して PATCH リクエストを送信します。

リクエストのデータを使用する前に、次のように置き換えます。

  • REGIONALIZED_ENDPOINT: エンドポイントには、LOCATION_ID に一致する接頭辞(europe-west4- など)が含まれる場合があります。 リージョン化されたエンドポイントの詳細をご覧ください。
  • PROJECT_NUMBER: 実際の Google Cloud プロジェクト番号
  • LOCATION_ID: Vertex AI Vision を使用しているリージョン。たとえば、us-central1europe-west4 などです。利用可能なリージョンをご覧ください。
  • CORPUS_ID: ターゲット コーパスの ID。
  • ?updateMask=fieldToUpdate: updateMask を適用できる使用可能なフィールドの 1 つ。リクエストの本文で、対応する新しいフィールド値を指定します。この新しい値は、既存のフィールド値を置き換えます。使用可能なフィールド:
    • 表示名: ?updateMask=display_name
    • 説明: ?updateMask=description
    • デフォルトの有効期間(TTL): ?updateMask=default_ttl
    • すべてのフィールドを更新する: ?updateMask=*
  • UPDATED_FIELD_VALUE: 指定されたフィールドの新しい値。この例では、ウェアハウス リソースのユーザー指定の新しい表示名。

HTTP メソッドと URL:

PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID?update_mask=display_name

リクエストの本文(JSON):

{
  "displayName": "UPDATED_FIELD_VALUE",
  "description": "Original description"
}

リクエストを送信するには、次のいずれかのオプションを選択します。

curl

リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。

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?update_mask=display_name"

PowerShell

リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。

$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?update_mask=display_name" | Select-Object -Expand Content

次のような JSON レスポンスが返されます。

{
  "name": "projects/PROJECT_ID/locations/LOCATION_ID/corpora/CORPORA_ID",
  "displayName": "UPDATED_FIELD_VALUE",
  "description": "Original description"
}

バッチ動画コーパス

default_ttl フィールドはサポートされていません。

REST

コーパス リソースを更新するには、projects.locations.corpora.patch メソッドを使用して PATCH リクエストを送信します。

リクエストのデータを使用する前に、次のように置き換えます。

  • REGIONALIZED_ENDPOINT: エンドポイントには、LOCATION_ID に一致する接頭辞(europe-west4- など)が含まれる場合があります。 リージョン化されたエンドポイントの詳細をご覧ください。
  • PROJECT_NUMBER: 実際の Google Cloud プロジェクト番号
  • LOCATION_ID: Vertex AI Vision を使用しているリージョン。たとえば、us-central1europe-west4 などです。利用可能なリージョンをご覧ください。
  • CORPUS_ID: ターゲット コーパスの ID。
  • ?updateMask=fieldToUpdate: updateMask を適用できる使用可能なフィールドの 1 つ。リクエストの本文で、対応する新しいフィールド値を指定します。この新しい値は、既存のフィールド値を置き換えます。使用可能なフィールド:
    • 表示名: ?updateMask=display_name
    • 説明: ?updateMask=description
    • デフォルトの有効期間(TTL): ?updateMask=default_ttl
    • すべてのフィールドを更新する: ?updateMask=*
  • UPDATED_FIELD_VALUE: 指定されたフィールドの新しい値。この例では、ウェアハウス リソースのユーザー指定の新しい表示名。

HTTP メソッドと URL:

PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID?update_mask=display_name

リクエストの本文(JSON):

{
  "displayName": "UPDATED_FIELD_VALUE",
  "description": "Original description"
}

リクエストを送信するには、次のいずれかのオプションを選択します。

curl

リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。

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?update_mask=display_name"

PowerShell

リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。

$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?update_mask=display_name" | Select-Object -Expand Content

次のような JSON レスポンスが返されます。

{
  "name": "projects/PROJECT_ID/locations/LOCATION_ID/corpora/CORPORA_ID",
  "displayName": "UPDATED_FIELD_VALUE",
  "description": "Original description"
}

すべてのコーパスを一覧表示する

REST

すべてのコーパス(ウェアハウス)を一覧表示するには、projects.locations.corpora.list メソッドを使用して GET リクエストを送信します。

リクエストのデータを使用する前に、次のように置き換えます。

HTTP メソッドと URL:

GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora

リクエストを送信するには、次のいずれかのオプションを選択します。

curl

次のコマンドを実行します。

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora"

PowerShell

次のコマンドを実行します。

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora" | Select-Object -Expand Content

次のような JSON レスポンスが返されます。

{
  "corpora": [
   {
      "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID1",
      "displayName": "CORPUS_DISPLAYNAME1",
      "description": "CORPUS_DESCRIPTION1"
    },
    {
      "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID2",
      "displayName": "CORPUS_DISPLAYNAME2",
      "description": "CORPUS_DESCRIPTION2",
      "defaultTtl": "8640000s"
    },
  ],
  "nextPageToken": "ChM3MDk3NTk3Nzc2OTk3NDA3OTkzEAo"
}

コーパス リソースを取得する

REST

コーパス(ウェアハウス)の詳細を取得するには、projects.locations.corpora.get メソッドを使用して GET リクエストを送信します。

リクエストのデータを使用する前に、次のように置き換えます。

HTTP メソッドと URL:

GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID

リクエストを送信するには、次のいずれかのオプションを選択します。

curl

次のコマンドを実行します。

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID"

PowerShell

次のコマンドを実行します。

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID" | Select-Object -Expand Content

次のような JSON レスポンスが返されます。

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID",
  "displayName": "CORPUS_DISPLAYNAME",
  "description": "CORPUS_DESCRIPTION",
  "defaultTtl": "8640000s"
}

コーパス リソースを削除する

次のコードサンプルを使用してコーパスを削除します。コーパスを削除するには、まずそのすべてのアセットを削除する必要があります。

REST とコマンドライン

次のコードサンプルでは、projects.locations.corpora.delete メソッドを使用して corpus リソースを削除します。

リクエストのデータを使用する前に、次のように置き換えます。

HTTP メソッドと URL:

DELETE https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID

リクエストを送信するには、次のいずれかのオプションを選択します。

curl

次のコマンドを実行します。

curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID"

PowerShell

次のコマンドを実行します。

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID" | Select-Object -Expand Content

次のような JSON レスポンスが返されます。

{}