產生多模態嵌入

本頁面說明如何使用支援的 Vertex AI 多模態模型 multimodalembedding@001,生成多模態嵌入。

您可以使用「支援的模型」一節中提及的 Vertex AI 多模態嵌入模型。

本頁面假設您熟悉 AlloyDB for PostgreSQL 和生成式 AI 概念。如要進一步瞭解嵌入,請參閱「什麼是嵌入」。

事前準備

使用多模態嵌入功能前,請先完成下列步驟:

與 Vertex AI 整合並安裝擴充功能

  1. 與 Vertex AI 整合
  2. 確認已安裝最新版 google_ml_integration
    1. 如要檢查已安裝的版本,請執行下列指令:

              SELECT extversion FROM pg_extension WHERE extname = 'google_ml_integration';
              extversion
              ------------
              1.4.3
              (1 row)
            
    2. 如果未安裝擴充功能,或安裝的版本低於 1.4.3,請執行下列指令更新擴充功能:

              CREATE EXTENSION IF NOT EXISTS google_ml_integration;
              ALTER EXTENSION google_ml_integration UPDATE;
            

      如果您在執行上述指令時遇到問題,或執行上述指令後,擴充功能未更新至 1.4.3 版,請與 AlloyDB 支援團隊聯絡。

    3. 確認版本為最新後,請執行 upgrade_to_preview_version 程序,安裝預覽功能:

              CALL google_ml.upgrade_to_preview_version();
              SELECT extversion FROM pg_extension WHERE extname = 'google_ml_integration';
              extversion
              ------------
              1.4.4
              (1 row)
            

存取 Cloud Storage 中的資料,產生多模態嵌入內容

  • 如要生成多模態嵌入,請使用 gs:// URI 參照 Cloud Storage 中的內容。
  • 透過目前專案的 Vertex AI 服務代理人存取 Cloud Storage 內容。根據預設,Vertex AI 服務代理已具備存取相同專案中值區的權限。詳情請參閱 IAM 角色和權限索引
  • 如要存取其他專案中 Cloud Storage bucket 的資料,請執行下列 gcloud CLI 指令,將儲存空間物件檢視者角色 (roles/storage.objectViewer) 授予 AlloyDB 專案的 Vertex AI 服務代理程式。 Google Cloud

    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 政策」。

如要生成多模態嵌入,請選取下列其中一個結構定義。

生成多模態嵌入

如要為 multimodalembedding@001 模型端點生成文字嵌入,請執行下列陳述式:

SELECT
  ai.text_embedding(
    model_id => 'multimodalembedding@001',
    content => 'TEXT');

TEXT 替換為要生成嵌入的文字。

如要為已註冊的 multimodalembedding@001 模型端點生成圖片嵌入,且圖片 MIME 類型為預設 image/jpeg,請執行下列陳述式:

SELECT
  ai.image_embedding(
    model_id => 'multimodalembedding@001',
    image => 'IMAGE_PATH_OR_TEXT',
    mimetype => MIMETYPE');

更改下列內容:

  • IMAGE_PATH_OR_TEXT,並提供圖片的 Cloud Storage URI,例如 gs://my-bucket/embeddings/flowers.jpeg,或是圖片的 base64 字串。
  • MIMETYPE 替換為圖片的 mimetype,例如 image/jpeg。如需支援的完整 MIME 類型清單,請參閱多模態嵌入 API

如要為已註冊的 multimodalembedding@001 模型端點生成影片嵌入內容,請執行下列陳述式:

SELECT
  ai.video_embedding(
    model_id => 'multimodalembedding@001',
    video => 'VIDEO_URI');

VIDEO_URI 替換為目標影片的 Cloud Storage URI,例如 gs://my-bucket/embeddings/supermarket-video.mp4,或是影片的 Base64 字串。

後續步驟