サポートされている Vertex AI マルチモーダル モデル multimodalembedding@001 を使用して、AlloyDB for PostgreSQL でマルチモーダル エンベディングを生成できます。
サポートされているモデルで説明されている Vertex AI マルチモーダル エンベディング モデルを使用できます。
このページでは、AlloyDB for PostgreSQL と生成 AI のコンセプトに精通していることを前提としています。詳細については、エンベディングとはをご覧ください。
始める前に
マルチモーダル エンベディングを使用する前に、次の操作を行います。
google_ml_integration拡張機能がインストールされていることを確認します。google_ml_integration.enable_model_supportフラグがonに設定されていることを確認します。- Vertex AI と統合します。
- Cloud Storage のデータにアクセスしてマルチモーダル エンベディングを生成します。
Vertex AI と統合して拡張機能をインストールする
- Vertex AI モデルへのユーザー アクセスを構成します。
google_ml_integrationの最新バージョンがインストールされていることを確認します。インストールされているバージョンを確認するには、次のコマンドを実行します。
SELECT extversion FROM pg_extension WHERE extname = 'google_ml_integration'; extversion ------------ 1.5.2 (1 row)
拡張機能がインストールされていない場合、またはインストールされているバージョンが 1.5.2 より前の場合は、拡張機能を更新します。
CREATE EXTENSION IF NOT EXISTS google_ml_integration; ALTER EXTENSION google_ml_integration UPDATE;
上記のコマンドを実行したときに問題が発生した場合、または上記のコマンドを実行しても拡張機能がバージョン 1.5.2 にアップデートされない場合は、Google Cloud サポートにお問い合わせください。
AlloyDB AI クエリエンジンの機能を使用するには、
google_ml_integration.enable_ai_query_engineフラグをtrueに設定します。SQL
- 現在のセッションで AI クエリエンジンを有効にします。
SET google_ml_integration.enable_ai_query_engine = true;
- セッション間で特定のデータベースの機能を有効にします。
ALTER DATABASE DATABASE_NAME SET google_ml_integration.enable_ai_query_engine = 'on';
- セッションとデータベース全体で特定のユーザーに対して AI クエリエンジンを有効にします。
ALTER ROLE postgres SET google_ml_integration.enable_ai_query_engine = 'on';
コンソール
google_ml_integration.enable_ai_query_engineフラグの値を変更するには、インスタンスのデータベース フラグを構成するの手順に沿って操作します。gcloud
gcloud CLI を使用するには、Google Cloud CLI をインストールして初期化するか、Cloud Shell を使用します。
google_ml_integration.enable_ai_query_engineフラグの値を変更できます。詳細については、インスタンスのデータベース フラグを構成するをご覧ください。gcloud alloydb instances update INSTANCE_ID \ --database-flags google_ml_integration.enable_ai_query_engine=on \ --region=REGION_ID \ --cluster=CLUSTER_ID \ --project=PROJECT_ID
- 現在のセッションで AI クエリエンジンを有効にします。
Cloud Storage のデータにアクセスしてマルチモーダル エンベディングを生成する
- マルチモーダル エンベディングを生成するには、
gs://URI を使用して Cloud Storage のコンテンツを参照します。 - 現在のプロジェクトの Vertex AI サービス エージェントを介して Cloud Storage コンテンツにアクセスします。デフォルトでは、Vertex AI サービス エージェントには、同じプロジェクト内のバケットにアクセスする権限がすでに付与されています。詳細については、IAM のロールと権限のインデックスをご覧ください。
別の Google Cloud プロジェクトの Cloud Storage バケット内のデータにアクセスするには、次の gcloud CLI コマンドを実行して、AlloyDB プロジェクトの Vertex AI サービス エージェントに Storage オブジェクト閲覧者ロール(
roles/storage.objectViewer)を付与します。gcloud projects add-iam-policy-binding <ANOTHER_PROJECT_ID> \ --member="serviceAccount:service-<PROJECT_ID>@gcp-sa-aiplatform.iam.gserviceaccount.com" \ --role="roles/storage.objectViewer"詳細については、バケットでの IAM ポリシーの設定と管理をご覧ください。
マルチモーダル エンベディングを生成するには、次のいずれかのスキーマを選択します。