Vous pouvez générer des embeddings multimodaux dans AlloyDB Omni à l'aide du modèle multimodal Vertex AI compatible, multimodalembedding@001.
Vous pouvez utiliser les modèles d'embedding multimodaux Vertex AI mentionnés dans Modèles compatibles.
Sur cette page, nous partons du principe que vous connaissez AlloyDB Omni et les concepts d'IA générative. Pour en savoir plus, consultez Que sont les embeddings ?
Avant de commencer
Avant d'utiliser les embeddings multimodaux, procédez comme suit :
- Configurer l'accès des utilisateurs aux modèles Vertex AI
- Vérifiez que la dernière version de
google_ml_integrationest installée.Pour vérifier la version installée, exécutez la commande suivante :
SELECT extversion FROM pg_extension WHERE extname = 'google_ml_integration'; extversion ------------ 1.5.2 (1 row)
Si l'extension n'est pas installée ou si la version installée est antérieure à la version 1.5.2, mettez-la à jour.
CREATE EXTENSION IF NOT EXISTS google_ml_integration; ALTER EXTENSION google_ml_integration UPDATE;
Si vous rencontrez des problèmes lors de l'exécution des commandes précédentes ou si l'extension n'est pas mise à jour vers la version 1.5.2 après l'exécution des commandes précédentes, contactez l'assistance Google Cloud.
Pour utiliser la fonctionnalité du moteur de requêtes AlloyDB/AI, définissez l'indicateur
google_ml_integration.enable_ai_query_enginesuron.- Utilisez un éditeur de texte pour définir le flag suivant dans le fichier de configuration
postgresql.confpour votre installation d'AlloyDB Omni :google_ml_integration.enable_ai_query_engine = on
- Après avoir enregistré le fichier
postgresql.conf, redémarrez le service AlloyDB Omni pour que les modifications prennent effet.sudo systemctl restart alloydbomni18
- Utilisez un éditeur de texte pour définir le flag suivant dans le fichier de configuration
Accédez aux données dans Cloud Storage pour générer des embeddings multimodaux.
Accéder aux données dans Cloud Storage pour générer des embeddings multimodaux
- Pour générer des embeddings multimodaux, référencez le contenu dans Cloud Storage à l'aide d'un URI
gs://. - Accédez au contenu Cloud Storage via l'agent de service Vertex AI de votre projet actuel. Par défaut, l'agent de service Vertex AI est déjà autorisé à accéder au bucket du même projet. Pour en savoir plus, consultez l'index des rôles et autorisations IAM.
Pour accéder aux données d'un bucket Cloud Storage dans un autre projet Google Cloud , exécutez la commande gcloud CLI suivante pour attribuer le rôle Lecteur des objets de l'espace de stockage (
roles/storage.objectViewer) à l'agent de service Vertex AI de votre projetGoogle 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"Pour en savoir plus, consultez Définir et gérer des stratégies IAM sur des buckets.
Pour générer des embeddings multimodaux, sélectionnez l'un des schémas suivants.
Générer des embeddings multimodaux
Pour générer des embeddings textuels pour un point de terminaison de modèle multimodalembedding@001, exécutez l'instruction suivante :
SELECT
ai.text_embedding(
model_id => 'multimodalembedding@001',
content => 'TEXT');
Remplacez TEXT par le texte pour lequel générer l'embedding.
Pour générer des embeddings d'image pour un point de terminaison de modèle multimodalembedding@001 enregistré où le type MIME de l'image est image/jpeg par défaut, exécutez l'instruction suivante :
SELECT
ai.image_embedding(
model_id => 'multimodalembedding@001',
image => 'IMAGE_PATH_OR_TEXT',
mimetype => 'MIMETYPE');
Remplacez les éléments suivants :
IMAGE_PATH_OR_TEXTavec l'URI Cloud Storage de l'image, par exemplegs://my-bucket/embeddings/flowers.jpeg, ou la chaîne base64 de l'image.MIMETYPEpar le type MIME de l'image, par exempleimage/jpeg. Pour obtenir la liste complète des types MIME compatibles, consultez l'API Multimodal Embeddings.
Pour générer des embeddings vidéo pour un point de terminaison de modèle multimodalembedding@001 enregistré, exécutez l'instruction suivante :
SELECT
ai.video_embedding(
model_id => 'multimodalembedding@001',
video => 'VIDEO_URI');
Remplacez VIDEO_URI par l'URI Cloud Storage de la vidéo cible (par exemple, gs://my-bucket/embeddings/supermarket-video.mp4) ou par la chaîne base64 de la vidéo.
Il s'agit de tableaux bidimensionnels auxquels vous pouvez accéder en utilisant une syntaxe de type my_array[0][5].
Pour en savoir plus, consultez Tableaux.
Étapes suivantes
Enregistrez un point de terminaison de modèle avec la gestion des points de terminaison de modèle.
Interrogez vos données à l'aide d'opérateurs SQL optimisés par l'IA.