Choisir un modèle de fondation Bedrock pour un cas d'utilisation.
→Raisonnement à contexte long + utilisation d'outils → Claude (Sonnet/Opus). Chat optimisé en termes de coûts → Claude Haiku ou Titan Text Lite. Code → Claude ou Llama. Embeddings → Titan Embeddings V2 ou Cohere Embed. Génération d'images → Titan Image, Stable Diffusion ou Nova Canvas. Poids ouverts avec contrôle de l'auto-hébergement → Llama, Mistral ou Custom Model Import.
Pourquoi: Aucun modèle unique n'est le meilleur en termes de coût, de latence, de capacité et de conditions de licence. Faites correspondre la classe de modèle au goulot d'étranglement.
Référence↗
La source de la base de connaissances (KB) est constituée de FAQ courtes et autonomes ou de descriptions de produits (~100 à 500 mots chacune).
→Découpage en chunks de taille fixe avec la taille de token par défaut (300) et un chevauchement (20%).
Pourquoi: Les unités autonomes ne bénéficient pas du découpage conscient des limites. La taille fixe est la plus simple et la moins chère.
Référence↗
Les documents contiennent des changements de sujet naturels au sein des paragraphes ; les divisions de taille fixe interrompent les phrases en plein milieu d'une idée.
→Découpage sémantique. Les bases de connaissances Bedrock regroupent des phrases consécutives dont les embeddings sont proches, et effectuent des divisions aux frontières de sens.
Pourquoi: Préserve les idées cohérentes à l'intérieur d'un chunk → récupération plus propre, meilleure qualité de réponse.
Référence↗
Manuels techniques longs avec des références croisées entre les sections ; les questions nécessitent une synthèse à travers un document.
→Découpage hiérarchique. Bedrock construit des chunks parents (grands) + enfants (petits) ; récupère sur les embeddings des enfants, renvoie le contexte parent.
Pourquoi: Les petits chunks permettent une récupération précise ; le contexte parent préserve les références croisées et les détails environnants.
Référence↗
Les fichiers source sont pré-découpés en chunks ou chaque fichier est intentionnellement une seule unité logique.
→Aucune stratégie de découpage. Chaque fichier devient un chunk dans la base de connaissances (KB).
Référence↗
La source PDF contient du texte + des diagrammes ; les utilisateurs posent des questions qui nécessitent de comprendre les diagrammes.
→Activer l'analyse avancée de Bedrock KB avec un modèle de fondation (Claude/Nova) comme parseur. Les diagrammes et les tableaux sont décrits via la vision, puis intégrés.
Pourquoi: L'analyse par défaut est textuelle uniquement. L'analyse multimodale convertit le contenu visuel en texte descriptif avant l'intégration.
Référence↗
Choisir Titan Embeddings G1 ou V2.
→V2 prend en charge des dimensions configurables (256/512/1024) et surpasse G1 sur les benchmarks multilingues. G1 est fixe à 1536. Choisir V2 pour les cas d'utilisation limités en stockage ou non-anglais ; G1 uniquement pour la compatibilité héritée.
Référence↗
Catalogue de 500 000 produits : titres courts (50 mots) + spécifications longues (500 mots). Optimiser la qualité de recherche + le coût.
→Intégrer chaque élément une fois (champs combinés ou séparés). Utiliser Titan Embeddings V2 avec des dimensions réduites (256 ou 512) pour le coût ; intégrer la requête et le document avec le même modèle.
Pourquoi: Mélanger les modèles d'embedding ou ignorer la normalisation perturbe la recherche de similarité. Des dimensions inférieures réduisent le coût de stockage et de requête avec une perte de qualité marginale.
Référence↗
Choisir un magasin vectoriel pour les bases de connaissances Bedrock.
→Configuration par défaut / la plus rapide → Amazon OpenSearch Serverless (autogéré). Sous-ms avec mises à jour fréquentes de schéma + jointures relationnelles → Aurora PostgreSQL avec pgvector. Client Pinecone / MongoDB Atlas / Redis existant → le conserver. KB minuscule (<10 000 documents) optimisée en termes de coûts → Aurora pgvector ou Neptune Analytics.
Pourquoi: OpenSearch Serverless est la valeur par défaut la plus simple. Aurora pgvector l'emporte lorsque vous avez besoin de transactions ou de jointures sur les métadonnées.
Référence↗
La base de connaissances (KB) renvoie des documents sémantiquement pertinents, mais ils proviennent de versions obsolètes/de mauvaise région.
→Ajouter des métadonnées aux fichiers source (`version`, `region`, `effective_date`) et appliquer des filtres de métadonnées au moment de la requête via `retrievalConfiguration.vectorSearchConfiguration.filter`.
Pourquoi: La pure similarité vectorielle ignore la récence et l'autorité. Le filtrage des métadonnées réduit le pool de candidats avant le classement.
Référence↗
RAG manque les requêtes contenant des identifiants exacts (SKU, codes d'erreur, numéros de réglementation) car la recherche sémantique surpondère le texte de sens similaire.
→Activer la recherche hybride sur la base de connaissances (sémantique + mot-clé/BM25). Combine la similarité vectorielle avec la correspondance lexicale pour les ID, les codes et les noms propres.
Référence↗
Top-k=5 récupère 5 chunks mais le plus pertinent est souvent classé 3ème ou 4ème.
→Augmenter `numberOfResults` à 20, puis activer un modèle de reranking (Cohere Rerank ou Amazon Rerank) pour réorganiser par pertinence par rapport à la requête originale.
Pourquoi: La similarité d'embedding ≠ pertinence de la tâche. Les rerankers à encodeur croisé voient la requête + le chunk ensemble et les notent précisément.
Référence↗
Les questions des utilisateurs sont conversationnelles, en plusieurs parties, ou contiennent des pronoms/suivis ; la qualité de récupération de la base de connaissances (KB) diminue.
→Activer la reformulation des requêtes de la base de connaissances (KB) Bedrock. Le modèle réécrit les requêtes complexes en plusieurs sous-requêtes ciblées avant la récupération.
Référence↗
Les documents source S3 sont mis à jour fréquemment ; la base de connaissances (KB) doit toujours refléter les dernières versions sans synchronisation manuelle.
→Configurer la source de données de la base de connaissances (KB) pour une synchronisation automatisée via les notifications d'événements S3 → EventBridge → StartIngestionJob, ou utiliser la synchronisation planifiée de la KB. Éviter de dépendre du bouton "Sync" manuel de la console.
Référence↗
Le modèle QA à document long hallucine sur les questions dont les réponses se trouvent au milieu du document.
→Ne pas passer des documents entiers dans le prompt — découper en chunks + récupérer via RAG afin que seuls les chunks pertinents atteignent le modèle. Si le document entier est obligatoire, utiliser un modèle avec une forte capacité de rappel de contexte long (Claude Sonnet 200K) et placer la question après le document.
Pourquoi: La plupart des LLM présentent une dégradation du rappel "perdu au milieu". RAG contourne ce problème ; le placement aide lorsque RAG n'est pas disponible.
Choisir la personnalisation la moins chère qui répond aux exigences de qualité.
→Essayer dans l'ordre : (1) ingénierie de prompt, (2) RAG avec base de connaissances (KB), (3) fine-tuning, (4) pré-entraînement continu, (5) Custom Model Import. S'arrêter à la première qui satisfait les exigences.
Pourquoi: L'effort et le coût continu augmentent à chaque étape. Le fine-tuning + Provisioned Throughput est beaucoup plus cher que RAG.
Référence↗
Fine-tuner un modèle Bedrock avec des exemples de tâches étiquetés.
→Fichier JSONL dans S3 avec un exemple par ligne : `{"prompt": "...", "completion": "..."}` (ou équivalent au format chat pour la famille de modèles).
Pourquoi: Chaque famille de modèles (Titan, Claude, Llama) a un schéma spécifique ; vérifier la documentation de fine-tuning du modèle avant de formater.
Référence↗
Adapter un modèle de fondation à un vocabulaire spécialisé (juridique, médical, scientifique) en utilisant de nombreux textes de domaine non étiquetés.
→Pré-entraînement continu sur le corpus de domaine non étiqueté. Différent du fine-tuning d'instructions (qui nécessite des paires prompt-complétion).
Pourquoi: Le pré-entraînement continu met à jour la compréhension du langage ; le fine-tuning d'instructions enseigne le comportement de la tâche. Forme de données différente, objectif différent.
Référence↗
Les données d'interaction client pour le fine-tuning contiennent des noms, des e-mails, des numéros de téléphone.
→Nettoyer ou tokeniser les PII avant de télécharger l'ensemble de données d'entraînement vers S3. Une fois que les poids absorbent les PII, le filtrage de sortie ne peut pas les masquer de manière fiable.
Pourquoi: Le modèle fine-tuné peut régurgiter des fragments de données d'entraînement. Le nettoyage au niveau de la couche de données est la seule atténuation durable.
Référence↗
Apporter un modèle Llama ou Mistral auto-fine-tuné et le servir via l'API unifiée de Bedrock.
→Importation de modèle personnalisé (Custom Model Import). Télécharger les poids vers S3, les enregistrer auprès de Bedrock, les invoquer via le runtime Bedrock avec IAM et logging unifiés.
Pourquoi: Permet de réutiliser les Guardrails, les bases de connaissances (KB) et les Agents Bedrock sur vos propres poids sans avoir à déployer des points de terminaison SageMaker.
Référence↗
Déployer un modèle Bedrock fine-tuné en production.
→Acheter un débit provisionné (Provisioned Throughput). Les modèles personnalisés (fine-tunés, pré-entraînés en continu, importés) ne peuvent pas être invoqués à la demande.
Référence↗
Une application Claude à fort trafic atteint les quotas par région pendant les pics ; besoin d'un débit plus élevé sans acheter de débit provisionné (Provisioned Throughput).
→Profils d'inférence inter-régions. Bedrock route les invocations à travers plusieurs régions de manière transparente pour augmenter les quotas TPM/RPM effectifs.
Pourquoi: Les quotas à la demande d'une seule région plafonnent pendant les pics ; les profils inter-régions multiplient approximativement les quotas sans modification du code de l'application au-delà de l'utilisation de l'ARN du profil d'inférence.
Référence↗
Les utilisateurs de l'APAC constatent une latence significativement plus élevée que les utilisateurs US/EU sur une application Bedrock déployée en us-east-1.
→Déployer des points de terminaison Bedrock régionaux dans ap-northeast-1 / ap-southeast-1 / ap-south-1 (là où le modèle est GA). Router les utilisateurs via la politique de latence ou de géolocalisation de Route 53.
Pourquoi: Le temps d'aller-retour des LLM domine pour les contextes longs ; le RTT trans-Pacifique seul est de 150 à 250 ms.
Référence↗
Une application réglementée par la HIPAA doit résumer des informations de santé protégées (PHI) avec Bedrock.
→Utiliser uniquement des modèles de fondation éligibles HIPAA (selon la liste des services éligibles HIPAA). Signer un BAA avec AWS. Chiffrer les prompts/réponses avec des clés KMS gérées par le client. Désactiver la journalisation des invocations de modèle ou la restreindre à un compartiment S3 privé avec un accès restreint.
Référence↗
Décider quelles données peuvent transiter vers Bedrock en fonction de leur sensibilité (publique / confidentielle / restreinte).
→Public → non restreint. Confidentiel → uniquement via les points de terminaison VPC + clés de chiffrement gérées par le client (CMK) + journalisation des invocations dans des compartiments privés. Restreint (secrets commerciaux, PHI/PCI réglementées) → bloquer entièrement l'accès à Bedrock ou utiliser un régime de conformité éligible à Bedrock + rédiger avant l'invocation.
Une organisation multi-comptes souhaite que le Compte A partage un modèle Bedrock personnalisé avec le Compte B sans copier les poids.
→Partage de modèle personnalisé via AWS RAM. Le propriétaire partage l'ARN du modèle personnalisé ; les comptes consommateurs l'invoquent via le runtime Bedrock standard avec des principaux IAM inter-comptes sur la politique de ressource.
Pourquoi: Évite les coûts de fine-tuning redondants et centralise le cycle de vie du modèle. RAM contrôle qui peut consommer la ressource partagée.
Référence↗
Besoin d'un modèle tiers de niche (par exemple, un LLM spécialisé dans la santé) qui ne figure pas dans le catalogue Bedrock standard.
→Amazon Bedrock Marketplace. S'abonner au modèle depuis le catalogue Marketplace, le déployer sur un point de terminaison Bedrock, l'invoquer via l'API runtime standard.
Pourquoi: Unifie la facturation tierce, IAM, KMS et l'observabilité avec les modèles Bedrock de première partie.
Référence↗
Une application de recherche à fort volume ré-intègre les mêmes documents à chaque rafraîchissement de requête ; le coût d'embedding domine.
→Pré-calculer les embeddings lors de l'ingestion de documents, stocker le vecteur dans DynamoDB ou OpenSearch indexé par l'ID du document + le hachage du contenu. Ré-intégrer uniquement lorsque le hachage du contenu change.
Pourquoi: L'embedding répété du même texte est le coût évitable le plus courant. Un cache basé sur le hachage permet un saut en O(1).
Droit à l'oubli GDPR sur un modèle fine-tuné : un utilisateur demande la suppression de ses PII des données d'entraînement.
→Supprimer les enregistrements du corpus d'entraînement, puis fine-tuner un nouveau modèle de base à partir de zéro. Il n'est pas possible de nettoyer de manière fiable les données des poids existants — le filtrage de sortie n'est pas suffisant.
Pourquoi: Une fois que les poids absorbent les données d'entraînement, le masquage à l'inférence n'est pas fiable. La voie défendable est le ré-entraînement complet sans les enregistrements concernés.
Une base de connaissances (KB) partagée dessert plusieurs équipes ; chaque équipe ne doit voir que ses propres documents.
→Étiqueter chaque chunk avec les métadonnées `tenant_id` / `team_id` / `clearance` lors de l'ingestion. Au moment de la requête, définir `retrievalConfiguration.vectorSearchConfiguration.filter` aux valeurs autorisées de l'appelant à partir de la session IAM ou du contexte de l'application.
Pourquoi: La similarité vectorielle ignore le contrôle d'accès ; le filtrage des métadonnées est la seule isolation durable par tenant dans une base de connaissances (KB) partagée.
Référence↗
Un client de l'UE exige que les prompts et les embeddings de la base de connaissances (KB) ne quittent jamais eu-west-1.
→Déployer Bedrock + KB + compartiment source S3 en eu-west-1. Épingler les invocations via l'ARN du profil d'inférence ciblé sur eu-west-1 ; SCP `aws:RequestedRegion` refuser sur d'autres régions pour `bedrock:*`.
Référence↗