Vertex AI は、ML モデルと AI アプリケーションのトレーニング、チューニング、デプロイを行える機械学習(ML)プラットフォームです。既存の Cloud Run サービスに生成 AI 機能を追加するには、Vertex AI を使用して Gemini、PaLM、Imagen、Codey などの生成 AI モデルにアクセスします。
このガイドでは、Cloud Run インテグレーションを使用して、Cloud Run サービスから Vertex AI にアクセスできるようにする方法について説明します。
始める前に
- 統合する Cloud Run サービスがすでにデプロイされていることを確認します。
- Vertex AI の料金ページを確認します。インテグレーションで使用した個々のリソースに対して課金されます。
必要なロール
Cloud Run インテグレーションを使用するには、ユーザーまたは管理者が 2 つの異なるプリンシパルに IAM のロールを付与する必要があります。
クリックして Google アカウントに必要なロールを表示
Cloud Run の統合を使用するために必要な権限を取得するには、プロジェクトに対する次の IAM ロールを Google アカウントに付与するよう管理者に依頼してください。
- Cloud Run デベロッパー(
roles/run.developer
) - Compute 閲覧者(
roles/compute.viewer
) - サーバーレス インテグレーション デベロッパー(
roles/runapps.developer
) - サーバーレス インテグレーション オペレーター(
roles/runapps.operator
) - サービス アカウント ユーザー(
roles/iam.serviceAccountUser
)
クリックしてサービス アカウントに必要なロールを表示
Cloud Run サービスをデプロイするには、自動作成された Compute Engine のデフォルトのサービス アカウントを使用するか、ユーザー管理のサービス アカウントを指定します。サービス アカウントには次のロールが必要です。
- Cloud Run デベロッパー(
roles/run.developer
) - ログバケット書き込み者(
roles/logging.bucketWriter
) - サービス アカウント ユーザー(
roles/iam.serviceAccountUser
) - Storage 管理者(
roles/storage.admin
) - プロジェクト IAM 管理者(
roles/project.iamAdmin
)
サービスを Vertex AI に接続する
Cloud Run インテグレーションを使用して Vertex AI に接続すると、次の処理が行われます。
- Cloud Run サービスで Vertex AI API が有効になり、Vertex AI の生成 AI モデルにアクセスできるようになります。
- サービス ID に必要なロールが付与されます。
インテグレーションは、コンソールまたはコマンドラインから作成できます。
コンソール
Google Cloud コンソールで [Cloud Run] ページに移動します。
この統合で使用するサービスリストでサービスをクリックします。
[統合] タブをクリックします。
[統合を追加] をクリックします。
[Vertex AI] をクリックします。
デフォルト名をそのまま使用するか、任意の名前に変更します。
API のリストを有効にするように求められたら、[有効にする] をクリックし、API が有効になるまで待ちます。
[送信] をクリックし、インテグレーションが完了するまで待ちます。この処理には 1 分ほどかかることがあります。
コマンドライン
最新の Google Cloud CLI に更新します。
gcloud components update
統合を作成します。
gcloud beta run integrations create \ --type=vertex-genai \ --service=SERVICE \
次のように置き換えます。
- SERVICE: Cloud Run サービス名。
必要に応じて、
--service-account=SERVICE_ACCOUNT_EMAIL
フラグを含めます。SERVICE_ACCOUNT_EMAIL は、サービスのデプロイに使用されるユーザー管理のサービス アカウントのメールアドレス(
PROJECT_NUMBER-compute@developer.gserviceaccount.com
)に置き換えます。デフォルトのコンピューティング サービス アカウント(SERVICE_ACCOUNT_ID@PROJECT_ID.iam.gserviceaccount.com
)を使用する場合は、このフラグを省略します。Cloud Run インテグレーションをデプロイするときに、指定されたサービス アカウントを引き続き使用するには、次のコマンドを実行します。
gcloud config set runapps/deployment-service-account
1 分ほど待ちます。その間に、Vertex AI API を呼び出す権限が Cloud Run サービスに付与されます。
[vertex-genai] integration [vertex-genai-xxx] has been created successfully.
gcloud beta run integrations describe
を使用してステータスを確認できます。
Vertex AI インテグレーションを表示する
Cloud Run サービスと Vertex AI のインテグレーションの現在のステータスを表示するには:
コンソール
Google Cloud コンソールで [Cloud Run] ページに移動します。
この統合で使用するサービスリストでサービスをクリックします。
[統合] タブをクリックします。
目的の Vertex AI インテグレーションを見つけて、[詳細を表示] をクリックします。
コマンドライン
利用可能なインテグレーションのリストを取得するには、次のコマンドを使用します。
gcloud beta run integrations list
返されたリストの名前を使用して、その詳細を表示します。
gcloud beta run integrations describe INTEGRATION_NAME
INTEGRATION_NAME は、Vertex AI インテグレーションの名前に置き換えます。
Vertex AI インテグレーションを削除する
インテグレーションを削除すると、インテグレーションに関連付けられているすべての Google Cloud リソースも削除されますが、Cloud Run サービスは削除されません。
Cloud Run サービスから Vertex AI インテグレーションを削除するには:
コンソール
Google Cloud コンソールで [Cloud Run] ページに移動します。
統合を削除するサービスをクリックします。
[統合] タブをクリックします。
目的の Vertex AI インテグレーションを見つけて、その右側にある省略記号アイコンをクリックし、[削除] をクリックします。
コマンドライン
利用可能なインテグレーションのリストを取得するには、次のコマンドを使用します。
gcloud beta run integrations list
返されたリストの名前を使用して、インテグレーションを削除します。
gcloud beta run integrations delete INTEGRATION_NAME
次のように置き換えます。
- INTEGRATION_NAME は、Vertex AI インテグレーションの名前に置き換えます。
必要に応じて、次のフラグ オプションを使用できます。
オプション 説明 --service-account
削除オペレーションを実行するユーザー管理のサービス アカウントのメールアドレス。
コードで Vertex AI の生成 AI モデルにアクセスする
インテグレーションが完了したら、Vertex AI モデルの API にリクエストを送信し、Vertex AI Studio ですぐにテストしたり、アプリケーションで生成 AI モデルをカスタマイズできます。
制限事項
Cloud Run インテグレーションは、特定のリージョンでのみサポートされています。Cloud Run インテグレーションでサポートされていないリージョンを使用する必要がある場合は、Vertex AI のロケーションをご覧ください。