Skip to content
Déployer les bases de connaissances Amazon Bedrock avec Terraform pour les applications IA génératives basées sur le RAG
Source: aws.amazon.com

Déployer les bases de connaissances Amazon Bedrock avec Terraform pour les applications IA génératives basées sur le RAG

Sources: https://aws.amazon.com/blogs/machine-learning/deploy-amazon-bedrock-knowledge-bases-using-terraform-for-rag-based-generative-ai-applications, https://aws.amazon.com/blogs/machine-learning/deploy-amazon-bedrock-knowledge-bases-using-terraform-for-rag-based-generative-ai-applications/, AWS ML Blog

TL;DR

  • Automatisez le déploiement d’une base de connaissances Amazon Bedrock et de ses connexions aux sources de données via IaC Terraform. AWS Blog
  • La solution crée et configure les composants de services AWS concernés, permettant de démarrer rapidement des flux RAG avec peu de configuration initiale. AWS Blog
  • Elle prend en charge des stratégies de fragmentation (chunking) personnalisables et des dimensions vectorielles OpenSearch, Titan Text Embeddings V2 étant le modèle par défaut. AWS Blog
  • L’audit du plan Terraform avant application aide à réduire les risques en production. AWS Blog
  • Les étapes de nettoyage après test permettent d’éviter des coûts inutiles. AWS Blog

Contexte et arrière-plan

Retrieval Augmented Generation (RAG) associe des modèles de fond à l’accès à des données externes pertinentes pour améliorer la qualité et la transparence des réponses, tout en maîtrisant les coûts. De nombreuses organisations utilisent Bedrock Knowledge Bases d’AWS pour soutenir les flux RAG, et l’installation peut se faire en quelques clics dans AWS Management Console pour un développement initial. En passant d’un environnement console à une solution IaC pour la production, il est utile de partir d’un modèle IaC existant, car des détails de configuration supplémentaires sont abstraits dans la console. Bien que des templates CDK existent déjà pour Bedrock Knowledge Bases, Terraform est largement utilisé par les organisations. Cet article propose une solution IaC Terraform pour déployer une Bedrock knowledge base et établir une connexion avec des sources de données afin de lancer rapidement des flux RAG avec Terraform. Vous pouvez trouver la solution dans le répertoire AWS Samples sur GitHub. AWS Blog La solution automatise la création et la configuration des composants de services AWS nécessaires pour les flux RAG basés sur Bedrock Knowledge Bases. Un diagramme accompagne l’article pour illustrer l’intégration des services et montre que plusieurs politiques IAM gouvernent les permissions. Déployer les ressources via IaC permet une gestion d’infrastructure programmable, permettant de commencer à interroger vos données peu après la mise en place et de faciliter la maintenance continue de l’application RAG. AWS Blog Les prérequis incluent l’activation de l’accès à un modèle de base (FM) dans Bedrock pour générer les embeddings. La solution utilise Titan Text Embeddings V2 comme modèle par défaut. Pour activer l’accès au modèle, assurez-vous que l’environnement dispose de Git et que votre clé SSH est configurée pour accéder au dépôt. Les entrées du module et les paramètres fins (par ex. taille des embeddings et comportement de chunking) sont documentés dans modules/variables.tf. Vous pouvez vérifier le plan généré avec terraform init et terraform plan -out pour l’appliquer ensuite avec terraform apply. AWS Blog

Quoi de neuf

La solution IaC présentée automatise le déploiement de Bedrock knowledge base et de la connexion à la source de données pour les flux RAG. Elle est conçue comme un point de départ prêt pour la production, permettant aux équipes de personnaliser le déploiement via des modules Terraform. Un élément clé est le diagramme d’architecture qui met en évidence les services intégrés et les politiques IAM associées. AWS Blog Vous pouvez retrouver la solution dans AWS Samples sur GitHub, qui offre une base reproductible pour développer et tester des charges RAG avec Bedrock. L’article insiste sur l’important rôle du plan avant l’application et sur l’utilisation de terraform init et terraform plan -out pour capturer les modifications proposées. AWS Blog

Pourquoi c’est important (impact pour les développeurs/entreprises)

Pour les développeurs et les entreprises qui construisent des applications IA génératives basées sur RAG, cette solution Terraform offre un chemin reproductible, traçable et conforme aux meilleures pratiques d’IaC. En codifiant le déploiement de la base de connaissances et de ses connexions aux sources de données, les équipes obtiennent des environnements cohérents, réduisent les erreurs de configuration manuelle et simplifient la maintenance au fur et à mesure que les workloads RAG évoluent. L’approche facilite aussi l’itération rapide en permettant d’interroger les données presque immédiatement après la configuration des embeddings FM. AWS Blog Cette automatisation s’aligne sur les meilleures pratiques de l’IaC, notamment la vérification du plan avant application et les changements explicites qui décrivent les ressources créées, modifiées ou détruites. Cela aide les opérateurs à comprendre et approuver les modifications d’infrastructure avant leur mise en œuvre, ce qui est particulièrement utile pour les équipes gérant de grandes sources de données et des configurations d’embeddings en production. AWS Blog

Détails techniques ou Implémentation

Le module Terraform de la solution automatise la création et la configuration des composants de services AWS nécessaires à une Bedrock knowledge base et à la connexion avec des sources de données. Il prend en charge des stratégies de chunking configurables et des dimensions vectorielles OpenSearch, ce qui influence la manière dont le contenu est segmenté et indexé pour la récupération. Titan Text Embeddings V2 est le modèle par défaut, et les paramètres du module sont exposés dans modules/variables.tf pour ajuster la taille des embeddings et le comportement de chunking selon le cas d’utilisation. AWS Blog Le processus de déploiement implique de vérifier le plan Terraform avant d’appliquer les changements, en utilisant typiquement :

  • terraform init
  • terraform plan -out
  • terraform apply Cela garantit que seules les ressources prévues sont créées, modifiées ou supprimées, réduisant les risques de perturbation. Le post souligne aussi la possibilité d’ajuster les dimensions des vecteurs et la configuration de chunking via variables dans variables.tf. AWS Blog Les options de chunking à disposition incluent trois approches:
  • FIXED_SIZE : personnaliser le chunking de taille fixe (optionnel)
  • HIERARCHICAL : personnaliser le chunking hiérarchique (optionnel)
  • SEMANTIC : personnaliser le chunking sémantique (optionnel)
Chunking strategyNotes
FIXED_SIZEpersonnaliser le chunking de taille fixe (optionnel)
HIERARCHICALpersonnaliser le chunking hiérarchique (optionnel)
SEMANTICpersonnaliser le chunking sémantique (optionnel)
La dimension vectorielle influence la précision de la récupération et les compromis entre stockage et performance. La variable vector_dimension dans variables.tf contrôle ce paramètre. Vous pouvez l’augmenter pour plus de précision ou le réduire pour optimiser le stockage et les requêtes. AWS Blog
Pour tester et valider la connaissance de l’interaction avec le modèle FM, l’article recommande l’utilisation d’un document de test, comme le guide AWS Well-Architected Framework, téléchargeable en PDF, afin d’exercer le flux embedding et la base de connaissances avant la production. Il est aussi nécessaire d’activer l’accès au FM dans Bedrock pour générer les embeddings. AWS Blog

Remarques sur l’implémentation

  • Environnement : Git installé; clés SSH configurées pour accéder au dépôt. AWS Blog
  • Les entrées du module sont documentées dans modules/variables.tf, y compris des réglages fins comme la taille des embeddings et le comportement du chunking. AWS Blog
  • Le diagramme d’architecture illustre les services intégrés et les politiques IAM associées. AWS Blog

Points clés à retenir

  • Terraform IaC peut accélérer et standardiser les déploiements Bedrock Knowledge Bases pour les flux RAG.
  • La personnalisation du chunking et des embeddings OpenSearch peut améliorer la récupération et les performances.
  • La vérification du plan et les étapes de nettoyage aident à réduire les risques et les coûts en développement et en production.
  • Titan Text Embeddings V2 est utilisé par défaut et l’accès FM sur Bedrock doit être activé.
  • La documentation du blog AWS et le dépôt GitHub fournissent le point de départ pour les tests et le déploiement en production. AWS Blog

FAQ

  • Que automatise le module Terraform ?

    Il automatise la création et la configuration des composants de service AWS nécessaires au déploiement d’une Bedrock knowledge base et à la connexion à une source de données pour les flux RAG. [AWS Blog](https://aws.amazon.com/blogs/machine-learning/deploy-amazon-bedrock-knowledge-bases-using-terraform-for-rag-based-generative-ai-applications/)

  • uels sont les prérequis pour utiliser cette solution ?

    ccès Bedrock pour générer des embeddings, un environnement équipé de Git, et des clés SSH configurées pour accéder au dépôt. Les entrées du module sont dans modules/variables.tf. [AWS Blog](https://aws.amazon.com/blogs/machine-learning/deploy-amazon-bedrock-knowledge-bases-using-terraform-for-rag-based-generative-ai-applications/)

  • Comment valider la déploiement avant d’appliquer les changements ?

    Exécuter terraform init et terraform plan -out pour générer et vérifier le plan d’exécution. [AWS Blog](https://aws.amazon.com/blogs/machine-learning/deploy-amazon-bedrock-knowledge-bases-using-terraform-for-rag-based-generative-ai-applications/)

  • Comment nettoyer les ressources après les tests ?

    Utiliser terraform destroy pour supprimer l’infrastructure et nettoyer éventuellement les contenus des buckets S3. [AWS Blog](https://aws.amazon.com/blogs/machine-learning/deploy-amazon-bedrock-knowledge-bases-using-terraform-for-rag-based-generative-ai-applications/)

Références

More news

aws.amazon.com

Utiliser les AWS Deep Learning Containers avec SageMaker AI géré MLflow

Découvrez comment les AWS Deep Learning Containers (DLCs) s’intègrent à SageMaker AI géré par MLflow pour équilibrer le contrôle de l’infrastructure et une gouvernance ML robuste. Un flux TensorFlow pour la prédiction de l’âge des abalones illustre le suivi de bout en bout et la traçabilité des modè