Modes de déploiement dans le moteur RAG sur Gemini Enterprise Agent Platform

Le moteur RAG sur la plate-forme d'agents Gemini Enterprise propose différents modes de déploiement pour faire fonctionner vos instances RAG. Le mode de déploiement que vous choisissez détermine l'emplacement de stockage de vos données, la façon dont ce stockage évolue à mesure que vos données augmentent et le niveau de gestion de l'infrastructure dont vous avez besoin. En comprenant le fonctionnement de ces modes, vous pouvez choisir le bon équilibre entre simplicité, évolutivité et coûts pour votre projet.

Le moteur RAG propose deux modes de déploiement : sans serveur et Spanner. Vous pouvez passer d'un mode à l'autre de manière fluide. Les données de chaque mode restent isolées des autres.

Modes de déploiement disponibles

Dans cette section, nous allons aborder les deux modes de déploiement disponibles pour le moteur RAG :

Mode sans serveur

Le mode sans serveur est la méthode la plus économique et la plus recommandée pour commencer à utiliser le moteur RAG. Il s'agit d'une base de données d'entreprise entièrement gérée et à l'échelle planétaire qui élimine l'ensemble du provisionnement et du scaling de la base de données.

  • Idéal pour : la plupart des utilisateurs, l'intégration rapide et le scaling fluide sans avoir à gérer les configurations d'infrastructure.
  • Fonctionnalités clés : aucune gestion des niveaux n'est requise. Il utilise automatiquement la recherche vectorielle gérée par RAG comme base de données vectorielle par défaut pour offrir une expérience RAG simplifiée et prête à l'emploi.

En mode serverless, la base de données gérée RAG permet de gérer les opérations commerciales RAG et de stocker les ressources RAG. Ces ressources incluent (sans s'y limiter) RagCorpus, RagFiles, RagMetadata, DataSchema, etc. Toutefois, elle ne peut plus être utilisée pour l'indexation des embeddings et la recherche vectorielle.

Les utilisateurs devront toujours choisir une autre base de données vectorielle séparément. En mode sans serveur, le moteur RAG provisionne par défaut une collection Vector Search 2.0 dans votre projet pour l'indexation des embeddings et la recherche vectorielle. Par rapport au mode Spanner, le provisionnement de Vector Search 2.0 dans votre projet vous offre une visibilité et un contrôle complets sur l'utilisation et les coûts de la base de données vectorielle. Pour une comparaison détaillée, consultez la section Mode Spanner et mode sans serveur.

Mode Spanner

Le mode Spanner alloue une infrastructure Spanner dédiée spécifiquement pour servir de base au déploiement de votre moteur RAG. Il est conçu pour les charges de travail qui nécessitent des fonctionnalités de conformité spécifiques (comme CMEK) ou des instances de base de données dédiées et isolées. Le mode Spanner est attribué par défaut si aucun mode n'est explicitement sélectionné.

Lorsque vous utilisez le mode Spanner, vous devez gérer votre infrastructure en sélectionnant un niveau de performances :

  • Niveau de base (par défaut) : niveau fixe, économique et à faible puissance de calcul, adapté aux expérimentations, aux petits volumes de données ou aux charges de travail insensibles à la latence.
  • Niveau évolutif : offre des performances à l'échelle de la production avec une fonctionnalité d'autoscaling. Il convient aux clients disposant de grandes quantités de données ou de charges de travail sensibles aux performances.

Isolation des données et modes de commutation

Le moteur RAG vous permet de changer le mode de déploiement de votre projet tant qu'il n'y a pas d'opérations en cours dans votre mode de déploiement actif. Vous pouvez avoir des données dans les deux modes. Toutefois, un seul mode peut être actif à la fois, et les données sont strictement isolées entre les modes de déploiement.

Pour vous aider, imaginez que votre projet se comporte comme s'il disposait de deux backends complètement distincts. Les ressources que vous créez (corpus, fichiers importés et mis en ligne, et embeddings analysés) sont définitivement liées au mode de déploiement qui était actif lors de leur création. Toutes les demandes de récupération, directement ou via Gemini, seront également limitées aux corpus et aux fichiers présents dans votre mode de déploiement actuel. Passer d'un mode à l'autre ne transfère pas vos données ni ne les supprime de l'autre mode.

/gemini-enterprise-agent-platform/images/rag-engine-deployment-modes.png

Comme illustré dans le schéma :

  • API unifiée : vous utilisez exactement les mêmes API RAG de l'Agent Platform pour créer et gérer des ressources. L'API achemine automatiquement vos requêtes vers le backend associé à votre mode de déploiement actif.
  • Visibilité : si le mode sans serveur est actif, votre application ne peut voir et interagir qu'avec RagCorpus A et B. RagCorpus C, qui a été créé en mode Spanner, reste stocké de manière sécurisée, mais est complètement masqué et inaccessible à votre application tant que vous ne repassez pas en mode Spanner pour votre projet.
  • Aucune perte de données : le changement de mode ne supprime pas vos données. Elle ne fait que modifier le "backend" que l'API examine.

Gérer votre mode de déploiement

Le mode de déploiement est un paramètre au niveau du projet. Vous pouvez afficher ou modifier votre mode actuel à l'aide des API GetRagEngineConfig et UpdateRagEngineConfig. Consultez la page Passer d'un mode à l'autre pour savoir comment passer d'un mode de déploiement à l'autre et choisir le niveau approprié pour votre mode Spanner.

Supprimer les données et arrêter la facturation

Étant donné que les données sont isolées entre les modes, les processus de nettoyage des ressources et d'arrêt de la facturation diffèrent légèrement selon l'emplacement de vos données.

  • Pour supprimer les données Serverless, assurez-vous que votre mode actif est défini sur "Serverless". Appelez l'API ListRagCorpora pour afficher vos ressources, puis supprimez manuellement chaque corpus à l'aide de l'API DeleteRagCorpus.
  • Pour supprimer des données Spanner (déprovisionnement) : assurez-vous que votre mode actif est défini sur Spanner. Mettez à jour votre RagEngineConfig et définissez le niveau Spanner sur Unprovisioned. Votre instance Spanner dédiée et toutes les données RAG qu'elle contient seront immédiatement supprimées, ce qui mettra fin à toute facturation associée au mode Spanner. Remarque : Les données supprimées à l'aide du niveau non provisionné ne peuvent pas être récupérées.

Mode Spanner et mode sans serveur

Fonctionnalité Mode sans serveur Mode Spanner
Coût
  • Sans frais pour la gestion et l'orchestration des ressources.
  • La base de données vectorielle est facturée directement en fonction du choix de l'utilisateur.
  • Les tarifs dépendent du niveau choisi. Inclut la gestion et l'orchestration des ressources.
  • Les coûts de la base de données vectorielle sont couverts pour tous les corpus avec RagManagedDb comme choix de base de données vectorielle.
  • Pour le reste des corpus, la base de données vectorielle est facturée directement en fonction de la base de données choisie par l'utilisateur.
Scaling Autoscaling entièrement géré Vous devez configurer le niveau de service, mais il propose un niveau d'autoscaling.
Isolation Le stockage n'est pas isolé Fournit une isolation du stockage et des performances.
CMEK Pas de CMEK pour le moment Compatible avec les clés CMEK
Contrôles de sécurité VPC Compatible Compatible
Bases de données vectorielles compatibles
  • Managed Vector Search 2.0 (par défaut)
  • Pinecone
  • Weaviate
  • RagManagedDb (par défaut)
  • Vector Search 2.0 géré
  • Vector Search 1.0
  • Pinecone
  • Weaviate

Étapes suivantes