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:
- Nutzerzugriff auf Vertex AI-Modelle konfigurieren
- Prüfen Sie, ob die aktuelle Version von
google_ml_integrationinstalliert ist.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)
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.
Wenn Sie die Funktionen der AlloyDB AI-Abfrage-Engine verwenden möchten, setzen Sie das Flag
google_ml_integration.enable_ai_query_engineaufon.- Legen Sie mit einem Texteditor das folgende Flag in der Konfigurationsdatei
postgresql.conffür Ihre Installation von AlloyDB Omni fest:google_ml_integration.enable_ai_query_engine = on
- Nachdem Sie die Datei
postgresql.confgespeichert haben, starten Sie den AlloyDB Omni-Dienst neu, damit die Änderungen wirksam werden.sudo systemctl restart alloydbomni18
- Legen Sie mit einem Texteditor das folgende Flag in der Konfigurationsdatei
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_TEXTdurch den Cloud Storage-URI des Bildes, z. B.gs://my-bucket/embeddings/flowers.jpeg, oder die Base64-Zeichenfolge des Bildes.MIMETYPEdurch 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.