gcloud CLI または Vertex AI API を使用してモデルをデプロイするには、まず公開エンドポイントを作成する必要があります。
既存のパブリック エンドポイントがある場合は、この手順をスキップして、gcloud CLI または Vertex AI API を使用してモデルをデプロイするに進みます。
このドキュメントでは、新しい公開エンドポイントを作成するプロセスについて説明します。
専用パブリック エンドポイントを作成する(推奨)
専用パブリック エンドポイントのデフォルトのリクエスト タイムアウトは 10 分です。Vertex AI API API と Vertex AI SDK for Python では、次の例に示すように、新しい inferenceTimeout
値を含む clientConnectionConfig
オブジェクトを追加することで、別のリクエスト タイムアウトを指定できます。タイムアウトの最大値は 3,600 秒(1 時間)です。
Google Cloud コンソール
-
Google Cloud コンソールの [Vertex AI] セクションで、[オンライン予測] ページに移動します。
[オンライン予測] ページに移動 - [ 作成] をクリックします。
- [新しいエンドポイント] ペインで、次の操作を行います。
- エンドポイント名を入力します。
- アクセスの種類として [標準] を選択します。
- [Enable dedicated DNS] チェックボックスをオンにします。
- [続行] をクリックします。
- [完了] をクリックします。
REST
リクエストのデータを使用する前に、次のように置き換えます。
- LOCATION_ID: 使用するリージョン。
- PROJECT_ID: 実際のプロジェクト ID。
- ENDPOINT_NAME: エンドポイントの表示名。
- INFERENCE_TIMEOUT_SECS: (省略可)省略可能な
inferenceTimeout
フィールドの秒数。
HTTP メソッドと URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/endpoints
リクエストの本文(JSON):
{ "display_name": "ENDPOINT_NAME" "dedicatedEndpointEnabled": true, "clientConnectionConfig": { "inferenceTimeout": { "seconds": INFERENCE_TIMEOUT_SECS } } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/endpoints/ENDPOINT_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateEndpointOperationMetadata", "genericMetadata": { "createTime": "2020-11-05T17:45:42.812656Z", "updateTime": "2020-11-05T17:45:42.812656Z" } } }
"done":
true
が含まれるまで、オペレーションのステータスをポーリングできます。
Python
このサンプルを試す前に、Vertex AI クイックスタート: クライアント ライブラリの使用にある Python の設定手順を完了してください。詳細については、Vertex AI Python API のリファレンス ドキュメントをご覧ください。
Vertex AI に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のように置き換えます。
- PROJECT_ID: プロジェクト ID。
- LOCATION_ID: Vertex AI を使用するリージョン。
- ENDPOINT_NAME: エンドポイントの表示名。
- INFERENCE_TIMEOUT_SECS: (省略可)オプションの
inference_timeout
値の秒数。
from google.cloud import aiplatform
PROJECT_ID = "PROJECT_ID"
LOCATION = "LOCATION_ID"
ENDPOINT_NAME = "ENDPOINT_NAME"
INFERENCE_TIMEOUT_SECS = "INFERENCE_TIMEOUT_SECS"
aiplatform.init(
project=PROJECT_ID,
location=LOCATION,
api_endpoint=ENDPOINT_NAME,
)
dedicated_endpoint = aiplatform.Endpoint.create(
display_name=DISPLAY_NAME,
dedicated_endpoint_enabled=True,
sync=True,
inference_timeout=INFERENCE_TIMEOUT_SECS,
)
共有公開エンドポイントを作成する
Google Cloud コンソール
-
Google Cloud コンソールの [Vertex AI] セクションで、[オンライン予測] ページに移動します。
[オンライン予測] ページに移動 - [ 作成] をクリックします。
- [新しいエンドポイント] ペインで、次の操作を行います。
- エンドポイント名を入力します。
- アクセスの種類として [標準] を選択します。
- [続行] をクリックします。
- [完了] をクリックします。
gcloud
次の例では、gcloud ai endpoints create
コマンドを使用します。
gcloud ai endpoints create \
--region=LOCATION_ID \
--display-name=ENDPOINT_NAME
次のように置き換えます。
- LOCATION_ID: Vertex AI を使用するリージョン。
- ENDPOINT_NAME: エンドポイントの表示名。
Google Cloud CLI ツールがエンドポイントを作成するまでに数秒かかる場合があります。
REST
リクエストのデータを使用する前に、次のように置き換えます。
- LOCATION_ID: 使用するリージョン。
- PROJECT_ID: 実際のプロジェクト ID。
- ENDPOINT_NAME: エンドポイントの表示名。
HTTP メソッドと URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/endpoints
リクエストの本文(JSON):
{ "display_name": "ENDPOINT_NAME" }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/endpoints/ENDPOINT_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateEndpointOperationMetadata", "genericMetadata": { "createTime": "2020-11-05T17:45:42.812656Z", "updateTime": "2020-11-05T17:45:42.812656Z" } } }
"done":
true
が含まれるまで、オペレーションのステータスをポーリングできます。
Terraform
次のサンプルでは、google_vertex_ai_endpoint
Terraform リソースを使用してエンドポイントを作成します。
Terraform 構成を適用または削除する方法については、基本的な Terraform コマンドをご覧ください。
Java
このサンプルを試す前に、Vertex AI クイックスタート: クライアント ライブラリの使用にある Java の設定手順を完了してください。詳細については、Vertex AI Java API のリファレンス ドキュメントをご覧ください。
Vertex AI に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Node.js
このサンプルを試す前に、Vertex AI クイックスタート: クライアント ライブラリの使用にある Node.js の設定手順を完了してください。詳細については、Vertex AI Node.js API のリファレンス ドキュメントをご覧ください。
Vertex AI に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Vertex AI SDK for Python
Vertex AI SDK for Python のインストールまたは更新の方法については、Vertex AI SDK for Python をインストールするをご覧ください。詳細については、Vertex AI SDK for Python API のリファレンス ドキュメントをご覧ください。