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, die unter Unterstützte Modelle aufgeführt sind.

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

Hinweis

Führen Sie die folgenden Schritte aus, bevor Sie multimodale Einbettungen verwenden:

  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. Verwenden Sie einen Texteditor, um das folgende Flag in der Konfigurationsdatei postgresql.conf für Ihre Installation von AlloyDB Omni festzulegen:
      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.
      docker restart CONTAINER_NAME
  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-Agenten des 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 MIME-Typ des Bildes 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 den Base64-String 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. Dies sind zweidimensionale Arrays, auf die mit einer Syntax wie my_array[0][5] zugegriffen werden kann. Weitere Informationen finden Sie unter Arrays.

Nächste Schritte