AlloyDB AI と AlloyDB Omni をインストールする

ドキュメントのバージョンを選択してください。

このページでは、AlloyDB Omni をインストールして AlloyDB AI を統合する方法について説明します。

AlloyDB AI は、エンタープライズ生成 AI アプリケーションを構築できる AlloyDB Omni に含まれる一連の機能です。AlloyDB の AI / ML 機能の詳細については、生成 AI アプリケーションを作成するをご覧ください。

AlloyDB Omni で AlloyDB AI を使用すると、google_ml_integration 拡張機能を使用してリモート ML モデルをクエリし、ML モデルから生成されたオンライン予測とテキスト エンベディングを操作できます。また、google_ml.predict_row インターフェースを使用してクエリ内で変換を行うなど、画像などの他のコンテンツからベクトル エンベディングを処理することもできます。

リモートモデルをクエリするように Google Cloud を設定する

Vertex AI モデルをクエリする場合は、AlloyDB Omni をインストールする前に、Vertex AI で AlloyDB Omni サービス アカウントを構成する必要があります。

リモートモデルをクエリするようにサービス アカウントを設定する手順は次のとおりです。

  1. Google Cloudを使用してサービス アカウントを作成します。このサービス アカウントには、後の手順で Vertex AI へのアクセス権を付与します。

  2. JSON 形式でサービス アカウント キーを作成し、private-key.json ファイルに保存してダウンロードします。

  3. 作成したサービス アカウント キーを KEY_PATH にコピーします。鍵のパスは、AlloyDB Omni を実行するユーザーがアクセスして所有できるホスト上のパスである必要があります。

  4. Google Cloud プロジェクトで Vertex AI API を有効にします。

    gcloud services enable aiplatform.googleapis.com
    
  5. 適切なプロジェクトとサービス アカウントに Vertex AI Identity and Access Management(IAM)権限を追加します。

    gcloud projects add-iam-policy-binding PROJECT_ID \
        --member="serviceAccount:SERVICE_ACCOUNT_ID" \
        --role="roles/aiplatform.user"
    

    次のように置き換えます。

    • PROJECT_ID: Google Cloud プロジェクトの ID。

    • SERVICE_ACCOUNT_ID: 手順 1 で作成したサービス アカウントの ID。これには、@PROJECT_ID.iam.gserviceaccount.com 接尾辞全体が含まれます例: my-service@my-project.iam.gserviceaccount.com

  1. AlloyDB Omni RPM パッケージをインストールします。

AlloyDB Omni 用に AlloyDB AI を構成する

AlloyDB Omni RPM パッケージをインストールしたら、次の手順に沿って AlloyDB AI を統合します。

  1. リモートモデルをクエリするように Google Cloud を設定するに記載されているすべての手順を完了します。

  2. サービス アカウント キーを AlloyDB Omni のデータ ディレクトリに移動します。

    sudo mv KEY_PATH DATA_DIR/private-key.json

    次の変数を置き換えます。

    • KEY_PATH: サービス アカウント キー ファイルのパス。
    • DATA_DIR: データが保存されているホスト ディレクトリ パス。
  3. サービス アカウント キーのオーナーを postgres に、権限を 600 に設定します。

    sudo chown postgres:postgres DATA_DIR/private-key.json
    sudo chmod 600 DATA_DIR/private-key.json
  4. postgresql.conf ファイルに次のオプションを追加して、AlloyDB Omni 構成を更新します。

    sudo tee -a DATA_DIR/postgresql.conf << EOF
    omni_enable_ml_agent_process = 'on'
    omni_google_cloud_private_key_file_path = 'DATA_DIR/private-key.json'
    EOF
  5. AlloyDB Omni サービスを再起動します。

    sudo systemctl restart alloydbomni18

psql を使用して接続

AlloyDB Omni データベースに接続するには、次のコマンドを実行します。

sudo -u postgres /usr/lib/postgresql/18/bin/psql -U postgres

AlloyDB AI のインストールで AlloyDB Omni を確認する

インストールが正常に完了し、モデル予測が使用されていることを確認するには、次のコマンドを入力します。

CREATE EXTENSION IF NOT EXISTS google_ml_integration CASCADE;

SELECT array_dims(embedding('text-embedding-005', 'AlloyDB AI')::real[]);

出力は次のようになります。

array_dims
------------
[1:768]
(1 row)

上のクエリでは、embedding() 呼び出しによって入力テキスト AlloyDB AI のエンベディングが生成されます。array_dims は、embedding() によって返される配列のディメンションを返します。text-embedding-005 モデルは 768 次元の出力を返すため、出力は [768] です。

次のステップ