Cette page présente l'intégration de Vertex AI Search au moteur de RAG Vertex AI.
Vertex AI Search fournit une solution pour récupérer et gérer les données dans vos applications RAG Vertex AI. En utilisant Vertex AI Search comme backend de récupération, vous pouvez améliorer les performances, la scalabilité et la facilité d'intégration.
Performances et évolutivité améliorées: Vertex AI Search est conçu pour gérer de grands volumes de données avec une latence exceptionnellement faible. Cela se traduit par des temps de réponse plus rapides et de meilleures performances pour vos applications de génération de texte automatique, en particulier lorsque vous travaillez avec des bases de connaissances complexes ou étendues.
Gestion simplifiée des données: importez vos données à partir de diverses sources, telles que des sites Web, des ensembles de données BigQuery et des buckets Cloud Storage, ce qui peut simplifier votre processus d'ingestion de données.
Intégration fluide: Vertex AI offre une intégration intégrée à Vertex AI Search, ce qui vous permet de sélectionner Vertex AI Search comme backend de corpus pour votre application RAG. Cela simplifie le processus d'intégration et permet de garantir une compatibilité optimale entre les composants.
Amélioration de la qualité des sorties LLM: en utilisant les fonctionnalités de récupération de Vertex AI Search, vous pouvez vous assurer que votre application RAG récupère les informations les plus pertinentes de votre corpus, ce qui génère des sorties LLM plus précises et informatives.
Vertex AI Search
Vertex AI Search combine la récupération approfondie d'informations, le traitement du langage naturel et les dernières fonctionnalités de traitement des grands modèles de langage (LLM), ce qui permet de comprendre l'intention de l'utilisateur et de renvoyer les résultats les plus pertinents pour lui.
Avec Vertex AI Search, vous pouvez créer une application de recherche de qualité Google à l'aide de données que vous contrôlez.
Configurer Vertex AI Search
Pour configurer une recherche Vertex AI, procédez comme suit:
Utiliser Vertex AI Search comme backend de récupération pour le moteur de RAG Vertex AI
Une fois Vertex AI Search configuré, procédez comme suit pour le définir comme backend de récupération de l'application RAG.
Définir Vertex AI Search comme backend de récupération pour créer un corpus RAG
Ces exemples de code vous expliquent comment configurer Vertex AI Search comme backend de récupération pour un corpus RAG.
REST
Pour créer un corpus RAG à l'aide de la ligne de commande, procédez comme suit:
Créer un corpus de RAG
Remplacez les variables suivantes utilisées dans l'exemple de code:
- PROJECT_ID: ID de votre Google Cloud projet.
- LOCATION: région dans laquelle traiter la requête.
- DISPLAY_NAME: nom à afficher du corpus RAG que vous souhaitez créer.
- ENGINE_NAME: nom complet de la ressource du moteur de recherche Vertex AI ou du data store Vertex AI Search.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora" \ -d '{ "display_name" : "DISPLAY_NAME", "vertex_ai_search_config" : { "serving_config": "ENGINE_NAME/servingConfigs/default_search" } }'
Surveiller la progression
Remplacez les variables suivantes utilisées dans l'exemple de code:
- PROJECT_ID: ID de votre Google Cloud projet.
- LOCATION: région dans laquelle traiter la requête.
- OPERATION_ID: ID de l'opération de création du corpus RAG.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID"
Python
Avant d'essayer cet exemple, suivez les instructions de configuration pour Python décrites dans le guide de démarrage rapide de Vertex AI à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI Python.
Pour vous authentifier auprès de Vertex AI, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Récupérer des contextes à l'aide de l'API RAG
Une fois le corpus RAG créé, les contextes pertinents peuvent être récupérés à partir de Vertex AI Search via l'API RetrieveContexts
.
REST
Cet exemple de code montre comment récupérer des contextes à l'aide de REST.
Remplacez les variables suivantes utilisées dans l'exemple de code:
- PROJECT_ID: ID de votre Google Cloud projet.
- LOCATION: région dans laquelle traiter la requête.
- RAG_CORPUS_RESOURCE: nom de la ressource du corpus RAG.
Format :
projects/{project}/locations/{location}/ragCorpora/{rag_corpus}.
- TEXT: texte de requête permettant d'obtenir des contextes pertinents.
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION:retrieveContexts" \
-d '{
"vertex_rag_store": {
"rag_resources": {
"rag_corpus": "RAG_CORPUS_RESOURCE"
}
},
"query": {
"text": "TEXT"
}
}'
Python
Pour savoir comment installer ou mettre à jour le SDK Vertex AI pour Python, consultez la section Installer le SDK Vertex AI pour Python. Pour en savoir plus, consultez la documentation de référence de l'API Python.
Générer du contenu à l'aide de l'API Vertex AI Gemini
REST
Pour générer du contenu à l'aide de modèles Gemini, appelez l'API GenerateContent
Vertex AI. En spécifiant RAG_CORPUS_RESOURCE
dans la requête, les données sont automatiquement récupérées à partir de Vertex AI Search.
Remplacez les variables suivantes utilisées dans l'exemple de code:
- PROJECT_ID: ID de votre Google Cloud projet.
- LOCATION: région dans laquelle traiter la requête.
- MODEL_ID: modèle LLM pour la génération de contenu. Exemple :
gemini-1.5-flash-002
. - GENERATION_METHOD: méthode LLM pour la génération de contenu.
Par exemple,
generateContent
,streamGenerateContent
. - INPUT_PROMPT: texte envoyé au LLM pour la génération de contenu. Essayez d'utiliser une requête pertinente pour les documents dans Vertex AI Search.
- RAG_CORPUS_RESOURCE: nom de la ressource du corpus RAG. Format :
projects/{project}/locations/{location}/ragCorpora/{rag_corpus}
. SIMILARITY_TOP_K : (facultatif) nombre de contextes principaux à récupérer.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:GENERATION_METHOD" \ -d '{ "contents": { "role": "user", "parts": { "text": "INPUT_PROMPT" } }, "tools": { "retrieval": { "disable_attribution": false, "vertex_rag_store": { "rag_resources": { "rag_corpus": "RAG_CORPUS_RESOURCE" }, "similarity_top_k": SIMILARITY_TOP_K } } } }'
Python
Pour savoir comment installer ou mettre à jour le SDK Vertex AI pour Python, consultez la section Installer le SDK Vertex AI pour Python. Pour en savoir plus, consultez la documentation de référence de l'API Python.