En mode de déploiement Spanner, le moteur RAG utilise RagManagedDb, qui est une instance Spanner Google Cloud entièrement gérée et adaptée aux entreprises. Elle est utilisée pour le stockage des ressources par le moteur RAG sur la plate-forme d'agents Gemini Enterprise. Vous pouvez également l'utiliser comme base de données vectorielle de votre choix pour vos corpus RAG.
Grâce à Spanner, le moteur RAG offre une base de données dédiée, cohérente, disponibilité élevée et évolutive pour prendre en charge votre application. Pour en savoir plus sur Google Cloud Spanner, consultez Spanner.
Stockage de données et recherche vectorielle
Le moteur RAG stocke les métadonnées de votre corpus RAG et de vos ressources de fichiers RAG dans RagManagedDb, quelle que soit la base de données vectorielle que vous choisissez. Les bases de données vectorielles ne sont utilisées que pour le stockage et la récupération des embeddings. En plus du stockage des ressources, RagManagedDb peut également être utilisé pour stocker et gérer les représentations vectorielles de vos documents. La base de données vectorielle est ensuite utilisée pour récupérer les documents pertinents en fonction de leur similarité sémantique avec une requête donnée.
Niveaux disponibles
Le moteur RAG vous permet de faire évoluer votre instance RagManagedDb en fonction de vos besoins en termes d'utilisation et de performances, en choisissant l'un des deux niveaux proposés. Vous pouvez également l'utiliser pour supprimer vos données RAG Engine avec un niveau tiers.
Le niveau est un paramètre au niveau du projet disponible dans la ressource RagEngineConfig qui a un impact sur les corpus RAG utilisant RagManagedDb. Les niveaux suivants sont disponibles dans RagEngineConfig :
Niveau évolutif : ce niveau offre des performances à l'échelle de la production ainsi qu'une fonctionnalité d'autoscaling. Il convient aux clients disposant de grandes quantités de données ou de charges de travail sensibles aux performances. En interne, ce niveau définit l'instance Spanner sur une configuration d'autoscaling avec un minimum de 1 nœud (1 000 unités de traitement) et un maximum de 10 nœuds (10 000 unités de traitement).
Niveau de base (par défaut) : ce niveau offre un niveau de calcul économique et faible, qui peut convenir dans certains des cas suivants :
- Tester
RagManagedDb - Petite taille des données
- Charges de travail insensibles à la latence
- Utiliser le moteur RAG avec d'autres bases de données vectorielles uniquement
- Tester
Pour proposer le niveau de base, RagManagedDb définit l'instance Spanner sous-jacente sur une configuration fixe de 100 unités de traitement, ce qui équivaut à 0,1 nœud.
- Niveau non provisionné : ce niveau supprime le
RagManagedDbet son instance Spanner sous-jacente. Le niveau "Non provisionné" désactive le service RAG Engine et supprime les données qu'il contient, quelle que soit la base de données vectorielles utilisée pour votreRagCorpora. La facturation du service s'arrête. Pour en savoir plus sur la facturation, consultez Facturation du moteur RAG.
Une fois les données supprimées, vous ne pourrez plus les récupérer. Pour recommencer à utiliser le moteur RAG, vous devez modifier le niveau en appelant l'API UpdateRagEngineConfig ou passer au mode sans serveur.
Gérer les niveaux
Pour lire et mettre à jour vos niveaux, utilisez les API GetRagEngineConfig et UpdateRagEngineConfig. Consultez la page Passer d'un mode à l'autre pour obtenir des exemples de code sur l'utilisation de ces API.