安裝 AlloyDB Omni with AlloyDB AI

選取文件版本:

本頁說明如何安裝 AlloyDB Omni 及整合 AlloyDB AI。

AlloyDB AI 是 AlloyDB Omni 隨附的一系列功能,可協助您建構企業生成式 AI 應用程式。如要進一步瞭解 AlloyDB 的 AI/ML 功能,請參閱「建構生成式 AI 應用程式」。

AlloyDB Omni 搭配 AlloyDB AI 可讓您使用 google_ml_integration 擴充功能查詢遠端 ML 模型,並處理 ML 模型產生的線上預測和文字嵌入項目。如果您使用 google_ml.predict_row 介面,並在查詢中自行翻譯,AlloyDB Omni 搭配 AlloyDB AI 也能處理其他內容 (例如圖片) 的向量嵌入。

設定 Google Cloud 來查詢遠端模型

如要查詢 Vertex AI 模型,請務必先使用 Vertex AI 設定 AlloyDB Omni 服務帳戶,再安裝 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:您在步驟一中建立的服務帳戶 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]

後續步驟