Multimodale Einbettungen generieren

Wählen Sie eine Dokumentationsversion aus:

Sie können multimodale Einbettungen in AlloyDB Omni mit dem unterstützten multimodalen Vertex AI-Modell multimodalembedding@001 generieren.

Sie können die multimodalen Vertex AI-Einbettungsmodelle verwenden, auf die in Unterstützte Modelle verwiesen wird.

Auf dieser Seite wird davon ausgegangen, dass Sie mit AlloyDB Omni und Konzepten für generative KI vertraut sind. Weitere Informationen finden Sie unter Was sind Einbettungen?.

Hinweis

Bevor Sie multimodale Einbettungen verwenden, müssen Sie Folgendes tun:

  1. Nutzerzugriff auf Vertex AI-Modelle konfigurieren
  2. Prüfen Sie, ob die aktuelle Version von google_ml_integration installiert ist.
    1. Führen Sie den folgenden Befehl aus, um die installierte Version zu prüfen:

      SELECT extversion FROM pg_extension WHERE extname = 'google_ml_integration';
      extversion
      ------------
      1.5.2
      (1 row)
    2. Wenn die Erweiterung nicht installiert ist oder die installierte Version älter als 1.5.2 ist, aktualisieren Sie die Erweiterung.

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

      Wenn beim Ausführen der vorherigen Befehle Probleme auftreten oder die Erweiterung nach dem Ausführen der vorherigen Befehle nicht auf Version 1.5.2 aktualisiert wird, wenden Sie sich an den Google Cloud-Support.

  3. Wenn Sie die Funktionen der AlloyDB AI-Abfrage-Engine verwenden möchten, setzen Sie das Flag google_ml_integration.enable_ai_query_engine auf on.

    1. Legen Sie mit einem Texteditor das folgende Flag in der Konfigurationsdatei postgresql.conf für Ihre Installation von AlloyDB Omni fest:
      google_ml_integration.enable_ai_query_engine = on
    2. Nachdem Sie die Datei postgresql.conf gespeichert haben, starten Sie den AlloyDB Omni-Dienst neu, damit die Änderungen wirksam werden.
      sudo systemctl restart alloydbomni18
  4. Auf Daten in Cloud Storage zugreifen, um multimodale Einbettungen zu generieren

Auf Daten in Cloud Storage zugreifen, um multimodale Einbettungen zu generieren

  • Wenn Sie multimodale Einbettungen generieren möchten, verweisen Sie mit einem gs://-URI auf Inhalte in Cloud Storage.
  • Über den Vertex AI-Dienst-Agent Ihres aktuellen Projekts auf Cloud Storage-Inhalte zugreifen. Standardmäßig hat der Vertex AI-Dienst-Agent bereits die Berechtigung, auf den Bucket im selben Projekt zuzugreifen. Weitere Informationen finden Sie im Index für IAM-Rollen und -Berechtigungen.
  • Wenn Sie auf Daten in einem Cloud Storage-Bucket in einem anderen Google Cloud Projekt zugreifen möchten, führen Sie den folgenden gcloud CLI-Befehl aus, um dem Vertex AI-Dienst-Agent IhresGoogle Cloud Projekts die Rolle „Storage-Objekt-Betrachter“ (roles/storage.objectViewer) zuzuweisen.

    gcloud projects add-iam-policy-binding <ANOTHER_PROJECT_ID> \
    --member="serviceAccount:service-<PROJECT_ID>@gcp-sa-aiplatform.iam.gserviceaccount.com" \
    --role="roles/storage.objectViewer"

    Weitere Informationen finden Sie unter IAM-Richtlinien für Buckets festlegen und verwalten.

Wählen Sie eines der folgenden Schemas aus, um multimodale Einbettungen zu generieren.

Multimodale Einbettungen generieren

Führen Sie die folgende Anweisung aus, um Texteinbettungen für einen multimodalembedding@001-Modellendpunkt zu generieren:

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

Ersetzen Sie TEXT durch den Text, für den die Einbettung generiert werden soll.

Führen Sie die folgende Anweisung aus, um Bildeinbettungen für einen registrierten multimodalembedding@001-Modellendpunkt zu generieren, bei dem der Bild-MIME-Typ standardmäßig image/jpeg ist:

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

Ersetzen Sie Folgendes:

  • IMAGE_PATH_OR_TEXT durch den Cloud Storage-URI des Bildes, z. B. gs://my-bucket/embeddings/flowers.jpeg, oder die Base64-Zeichenfolge des Bildes.
  • MIMETYPE durch den MIME-Typ des Bildes, z. B. image/jpeg. Eine vollständige Liste der unterstützten MIME-Typen finden Sie in der Multimodal Embeddings API.

Führen Sie die folgende Anweisung aus, um Videoeinbettungen für einen registrierten multimodalembedding@001-Modellendpunkt zu generieren:

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

Ersetzen Sie VIDEO_URI durch den Cloud Storage-URI des Zielvideos, z. B. gs://my-bucket/embeddings/supermarket-video.mp4, oder den base64-String des Videos. Das sind zweidimensionale Arrays, auf die wie auf my_array[0][5] zugegriffen werden kann. Weitere Informationen finden Sie unter Arrays.

Nächste Schritte