Vision Warehouse インデックス エンドポイントは、Vision Warehouse インデックスを提供するマネージド環境です。インデックス エンドポイントは、検索リクエストを送信するための単一のアクセス ポイントを提供します。Vision Warehouse のコーパスを検索するには、まず indexEndpoint
リソースを作成し、それにインデックスをデプロイする必要があります。
インデックス エンドポイントを作成する
REST
インデックス エンドポイントを作成するには、projects.locations.indexEndpoints.create
メソッドを使用して POST リクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
- REGIONALIZED_ENDPOINT: エンドポイントには、
LOCATION_ID
に一致する接頭辞(europe-west4-
など)が含まれる場合があります。 リージョン化されたエンドポイントの詳細をご覧ください。 - PROJECT_NUMBER: 実際の Google Cloud プロジェクト番号。
- LOCATION_ID: Vertex AI Vision を使用しているリージョン。たとえば、
us-central1
、europe-west4
などです。利用可能なリージョンをご覧ください。 - INDEX_ENDPOINT_ID:(省略可)インデックス エンドポイント ID のユーザー指定の値。このリクエストでは、値は次の形式でリクエスト URL に追加されます。
- https://REGIONALIZED_ENDPOINT/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints?index_endpoint_id=INDEX_ENDPOINT_ID
HTTP メソッドと URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints
リクエストの本文(JSON):
{ "display_name": "DISPLAY_NAME", "description": "DESCRIPTION", }
リクエストを送信するには、次のいずれかのオプションを選択します。
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/indexEndpoints"
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/indexEndpoints" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.visionai.v1.CreateIndexEndpointMetadata" } }
インデックス エンドポイントを更新する
UpdateIndexEndpoint API を使用すると、display_name
や description
などのインデックス エンドポイントのメタデータ フィールドを更新できます。インデックス エンドポイントの labels
フィールドを更新することはできません。
リクエストの update_mask
フィールド(フィールド マスクとも呼ばれます)は、更新によって indexEndpoint
リソースで上書きするフィールドを指定するために使用されます。update_mask
フィールドで指定されたフィールドは、リクエスト全体ではなく、リソースに対する相対フィールドです。マスクに含まれるリソースのフィールドは上書きされます。空のフィールド マスクは許可されていません。マスクが「*」の場合、インデックス エンドポイントの完全な更新がトリガーされます。
REST
インデックス エンドポイントを更新するには、projects.locations.indexEndpoints.patch
メソッドを使用して PATCH リクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
- REGIONALIZED_ENDPOINT: エンドポイントには、
LOCATION_ID
に一致する接頭辞(europe-west4-
など)が含まれる場合があります。 リージョン化されたエンドポイントの詳細をご覧ください。 - PROJECT_NUMBER: 実際の Google Cloud プロジェクト番号。
- LOCATION_ID: Vertex AI Vision を使用しているリージョン。たとえば、
us-central1
、europe-west4
などです。利用可能なリージョンをご覧ください。 - INDEX_ENDPOINT_ID: ターゲット インデックス エンドポイントの ID。
?update_mask=fieldToUpdate
: 更新を適用する使用可能なフィールドのリスト。リクエストの本文で、新しいフィールドに対応する値を指定します。この新しい値は、既存のフィールド値を置き換えます。複数のフィールドをカンマ区切り値として指定できます。使用可能なフィールド:- 表示名:
?update_mask=display_name
- 説明:
?update_mask=description
- すべてのフィールドを更新する:
?update_mask=*
- 表示名:
HTTP メソッドと URL:
PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID?update_mask=display_name
リクエストの本文(JSON):
{ "display_name": "DISPLAY_NAME" }
リクエストを送信するには、次のいずれかのオプションを選択します。
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/indexEndpoints/INDEX_ENDPOINT_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/indexEndpoints/INDEX_ENDPOINT_ID?update_mask=display_name" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.visionai.v1.UpdateIndexEndpointMetadata" } }
インデックス エンドポイントを一覧表示する
REST
Vision Warehouse プロジェクトのインデックス エンドポイントを一覧表示するには、projects.locations.indexEndpoints.list
メソッドを使用して GET リクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
- REGIONALIZED_ENDPOINT: エンドポイントには、
LOCATION_ID
に一致する接頭辞(europe-west4-
など)が含まれる場合があります。 リージョン化されたエンドポイントの詳細をご覧ください。 - PROJECT_NUMBER: 実際の Google Cloud プロジェクト番号。
- LOCATION_ID: Vertex AI Vision を使用しているリージョン。たとえば、
us-central1
、europe-west4
などです。利用可能なリージョンをご覧ください。
HTTP メソッドと URL:
GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
次のコマンドを実行します。
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints"
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/indexEndpoints" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "indexEndpoints": [ { "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID_1", "displayName": "DISPLAY_NAME_1", "description": "DESCRIPTION_1", "state": "CREATED" }, { "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID_2", "displayName": "DISPLAY_NAME_2", "description": "DESCRIPTION_2", "state": "CREATED" } ] }
インデックス エンドポイントを取得する
REST
インデックス エンドポイントの詳細を取得するには、projects.locations.indexEndpoints.get
メソッドを使用して GET リクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
- REGIONALIZED_ENDPOINT: エンドポイントには、
LOCATION_ID
に一致する接頭辞(europe-west4-
など)が含まれる場合があります。 リージョン化されたエンドポイントの詳細をご覧ください。 - PROJECT_NUMBER: 実際の Google Cloud プロジェクト番号。
- LOCATION_ID: Vertex AI Vision を使用しているリージョン。たとえば、
us-central1
、europe-west4
などです。利用可能なリージョンをご覧ください。 - INDEX_ENDPOINT_ID: ターゲット インデックス エンドポイントの ID。
HTTP メソッドと URL:
GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_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/indexEndpoints/INDEX_ENDPOINT_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/indexEndpoints/INDEX_ENDPOINT_ID" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID", "displayName": "DISPLAY_NAME", "description": "DESCRIPTION", "state": "CREATED" }
インデックスをデプロイする
REST
インデックスをインデックス エンドポイントにデプロイするには、projects.locations.indexEndpoints.deployIndex
メソッドを使用して POST リクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
- REGIONALIZED_ENDPOINT: エンドポイントには、
LOCATION_ID
に一致する接頭辞(europe-west4-
など)が含まれる場合があります。 リージョン化されたエンドポイントの詳細をご覧ください。 - PROJECT_NUMBER: 実際の Google Cloud プロジェクト番号。
- LOCATION_ID: Vertex AI Vision を使用しているリージョン。たとえば、
us-central1
、europe-west4
などです。利用可能なリージョンをご覧ください。 - INDEX_ENDPOINT_ID: ターゲット インデックス エンドポイントの ID。
- CORPUS_ID: ターゲット コーパスの ID。
- INDEX_ID: ターゲット インデックスの ID。
HTTP メソッドと URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:deployIndex
リクエストの本文(JSON):
{ "deployedIndex": { "index": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID" } }
リクエストを送信するには、次のいずれかのオプションを選択します。
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/indexEndpoints/INDEX_ENDPOINT_ID:deployIndex"
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/indexEndpoints/INDEX_ENDPOINT_ID:deployIndex" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.visionai.v1.DeployIndexMetadata", "deployedIndex": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID" } }
インデックスのデプロイ解除
REST
インデックス エンドポイントからインデックスのデプロイを解除するには、projects.locations.indexEndpoints.undeployIndex
メソッドを使用して POST リクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
- REGIONALIZED_ENDPOINT: エンドポイントには、
LOCATION_ID
に一致する接頭辞(europe-west4-
など)が含まれる場合があります。 リージョン化されたエンドポイントの詳細をご覧ください。 - PROJECT_NUMBER: 実際の Google Cloud プロジェクト番号。
- LOCATION_ID: Vertex AI Vision を使用しているリージョン。たとえば、
us-central1
、europe-west4
などです。利用可能なリージョンをご覧ください。 - INDEX_ENDPOINT_ID: ターゲット インデックス エンドポイントの ID。
HTTP メソッドと URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:undeployIndex
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:undeployIndex"
PowerShell
次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:undeployIndex" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.visionai.v1.UndeployIndexMetadata" } }
インデックス エンドポイントを削除する
インデックス エンドポイントを削除できるのは、index
がデプロイされていない場合のみです。インデックスがデプロイされているエンドポイントを削除する前に、インデックスのデプロイを解除します。
REST
インデックス リソースを削除するには、projects.locations.indexEndpoints.delete
メソッドを使用して DELETE リクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
- REGIONALIZED_ENDPOINT: エンドポイントには、
LOCATION_ID
に一致する接頭辞(europe-west4-
など)が含まれる場合があります。 リージョン化されたエンドポイントの詳細をご覧ください。 - PROJECT_NUMBER: 実際の Google Cloud プロジェクト番号。
- LOCATION_ID: Vertex AI Vision を使用しているリージョン。たとえば、
us-central1
、europe-west4
などです。利用可能なリージョンをご覧ください。 - INDEX_ENDPOINT_ID: ターゲット インデックス エンドポイントの ID。
HTTP メソッドと URL:
DELETE https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_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/indexEndpoints/INDEX_ENDPOINT_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/indexEndpoints/INDEX_ENDPOINT_ID" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID/operations/OPERATION_ID" }