Retour aux articles
10 MIN READ

Claude sur Amazon Bedrock : Guide d'Intégration AWS

By Dorian Laurenceau

📅 Dernière révision : 24 avril 2026. Mise à jour avec les retours et observations d'avril 2026.

🔗 Article pilier : API Claude : Guide Complet


Pourquoi Claude sur Bedrock ?

Si votre infrastructure est déjà sur AWS, Bedrock est le moyen le plus naturel d'intégrer Claude. Voici les avantages :

AvantageDescription
Facturation unifiéeClaude apparaît sur votre facture AWS existante
IAM natifContrôle d'accès granulaire (qui peut utiliser quel modèle)
VPCLes requêtes restent dans votre réseau privé
ComplianceSOC 2, HIPAA, FedRAMP, ISO 27001
GuardrailsFiltrage de contenu intégré et configurable
Pas de gestion de clés APIUtilise les credentials AWS standard
CloudWatchMonitoring et alertes sur l'utilisation

Claude sur Bedrock vs Anthropic direct vs les autres clouds : les tradeoffs honnêtes

La conversation Bedrock-vs-direct sur r/aws, r/devops, r/ClaudeAI et r/LocalLLaMA s'est stabilisée autour de tradeoffs prévisibles. Voici ce que les équipes pèsent vraiment.

Quand Bedrock est le bon choix :

Quand l'API Anthropic directe est le bon choix :

  • Accès aux nouveaux modèles en premier. Anthropic ship typiquement les nouveaux modèles à leur API directe avant Bedrock. Si vous avez besoin de capacités frontier le jour un, direct est plus rapide.
  • Features comme prompt caching et message batching arrivent en direct en premier. Bedrock rattrape mais traîne.
  • Facturation plus simple pour individus et petites équipes. Une carte de crédit et une clé API bat la config AWS IAM pour la plupart des builders solo.
  • Friction minimum plus basse. Pour le prototypage et développement précoce, direct est plus rapide.

Contexte multi-cloud :

  • Google Cloud Vertex AI héberge aussi Claude avec une posture enterprise similaire. Choisissez le cloud sur lequel vous êtes déjà.
  • Microsoft Azure AI Foundry héberge Claude aux côtés des modèles OpenAI. Utile si vous voulez les deux dans une enveloppe de compliance.
  • OpenRouter et LiteLLM vous laissent abstraire le choix de cloud, donc vous pouvez swapper les fournisseurs sans changement de code. Vaut la peine à considérer pour les équipes qui ne veulent pas de lock-in long terme.

Gotchas opérationnels que les docs ne soulignent pas :

Le cadrage honnête : Bedrock vs direct n'est pas vraiment une question de qualité ; c'est une question de compliance, procurement et engagements cloud existants. Les équipes sur AWS avec de vrais besoins de compliance vont Bedrock ; les individus et équipes sur prototypes vont direct ; les shops multi-cloud utilisent des couches d'abstraction. Aucun n'est universellement correct. Adaptez le choix à vos vraies contraintes, pas à ce que les pages marketing soulignent.

Setup : Étape par Étape

1. Activer l'Accès au Modèle

Dans la console AWS :

  1. Naviguez vers Amazon Bedrock > Model access
  2. Cliquez Manage model access
  3. Sélectionnez les modèles Anthropic (Claude Opus, Sonnet, Haiku)
  4. Soumettez la demande (approbation généralement instantanée)

2. Configurer IAM

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "bedrock:InvokeModel",
        "bedrock:InvokeModelWithResponseStream"
      ],
      "Resource": [
        "arn:aws:bedrock:us-east-1::foundation-model/anthropic.claude-sonnet-4-20250514-v1:0",
        "arn:aws:bedrock:us-east-1::foundation-model/anthropic.claude-opus-4-20250918-v1:0"
      ]
    }
  ]
}

Bonnes pratiques IAM :

  • Utilisez le principe du moindre privilège (un modèle par rôle)
  • Créez des rôles spécifiques par application
  • Ajoutez des conditions (IP source, heures d'accès)
  • Activez CloudTrail pour l'audit

3. Installer le SDK

pip install boto3 anthropic[bedrock]

Exemples de Code

Appel Basique avec boto3

import boto3
import json

# Client Bedrock Runtime
client = boto3.client(
    service_name="bedrock-runtime",
    region_name="us-east-1"
)

# Requête Claude
body = json.dumps({
    "anthropic_version": "bedrock-2023-05-31",
    "max_tokens": 1024,
    "messages": [
        {
            "role": "user",
            "content": "Explique les avantages de l'infrastructure as code."
        }
    ]
})

response = client.invoke_model(
    modelId="anthropic.claude-sonnet-4-20250514-v1:0",
    contentType="application/json",
    accept="application/json",
    body=body
)

result = json.loads(response["body"].read())
print(result["content"][0]["text"])

Avec le SDK Anthropic (Recommandé)

import anthropic

# Utilise automatiquement les credentials AWS
client = anthropic.AnthropicBedrock(
    aws_region="us-east-1"
)

message = client.messages.create(
    model="anthropic.claude-sonnet-4-20250514-v1:0",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "Quels sont les services AWS pour le machine learning ?"}
    ]
)

print(message.content[0].text)

Streaming

import anthropic

client = anthropic.AnthropicBedrock(aws_region="us-east-1")

with client.messages.stream(
    model="anthropic.claude-sonnet-4-20250514-v1:0",
    max_tokens=2048,
    messages=[{"role": "user", "content": "Écris un guide de migration vers les microservices."}]
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)

Tarification Bedrock vs API Directe

ModèleBedrock InputBedrock OutputAPI Directe InputAPI Directe Output
Claude Opus 4.6$15.00/M$75.00/M$15.00/M$75.00/M
Claude Sonnet 4$3.00/M$15.00/M$3.00/M$15.00/M
Claude Haiku 3.5$0.80/M$4.00/M$0.80/M$4.00/M

Options de réduction Bedrock :

  • Provisioned Throughput : Débit garanti, prix réduit pour les gros volumes
  • Batch Inference : Traitement en lot avec réduction de 50%
  • Cross-Region Inference : Optimisation automatique de la région

Guardrails Bedrock

Les guardrails Bedrock ajoutent une couche de sécurité configurable autour de Claude.

# Appel avec guardrails
response = client.invoke_model(
    modelId="anthropic.claude-sonnet-4-20250514-v1:0",
    contentType="application/json",
    accept="application/json",
    body=body,
    guardrailIdentifier="my-guardrail-id",
    guardrailVersion="1"
)
Fonctionnalité GuardrailDescription
Content filtersBloquer les contenus non appropriés
Denied topicsInterdire des sujets spécifiques
Word filtersBloquer des mots ou phrases
Sensitive info filtersMasquer les PII (noms, emails, téléphones)
Contextual groundingRéduire les hallucinations avec des sources

Architecture Enterprise

Architecture Type

Loading diagram…

Lambda + Claude

import json
import boto3

bedrock = boto3.client("bedrock-runtime")

def lambda_handler(event, context):
    """Lambda function appelant Claude via Bedrock."""
    user_question = event.get("question", "")
    
    body = json.dumps({
        "anthropic_version": "bedrock-2023-05-31",
        "max_tokens": 1024,
        "messages": [{"role": "user", "content": user_question}]
    })
    
    response = bedrock.invoke_model(
        modelId="anthropic.claude-sonnet-4-20250514-v1:0",
        body=body
    )
    
    result = json.loads(response["body"].read())
    
    return {
        "statusCode": 200,
        "body": json.dumps({
            "answer": result["content"][0]["text"],
            "tokens_used": result["usage"]
        })
    }

Monitoring avec CloudWatch

import boto3

cloudwatch = boto3.client("cloudwatch")

# Créer une alarme sur le nombre d'invocations
cloudwatch.put_metric_alarm(
    AlarmName="bedrock-claude-high-usage",
    MetricName="Invocations",
    Namespace="AWS/Bedrock",
    Statistic="Sum",
    Period=3600,
    Threshold=10000,
    ComparisonOperator="GreaterThanThreshold",
    EvaluationPeriods=1,
    AlarmActions=["arn:aws:sns:us-east-1:123456:alerts"],
    Dimensions=[{
        "Name": "ModelId",
        "Value": "anthropic.claude-sonnet-4-20250514-v1:0"
    }]
)

Métriques Disponibles

MétriqueDescription
InvocationsNombre d'appels au modèle
InvocationLatencyLatence par requête (ms)
InputTokenCountTokens d'entrée consommés
OutputTokenCountTokens de sortie générés
InvocationErrorsNombre d'erreurs (4xx, 5xx)

Migration depuis l'API Directe

Si vous utilisez déjà l'API directe Anthropic, la migration vers Bedrock est simple :

ChangementAPI DirecteBedrock
Clientanthropic.Anthropic()anthropic.AnthropicBedrock()
AuthClé APICredentials AWS (IAM)
Model IDclaude-sonnet-4-20250514anthropic.claude-sonnet-4-20250514-v1:0
Endpointapi.anthropic.combedrock-runtime.{region}.amazonaws.com
Reste du codeIdentiqueIdentique
# Avant (API directe)
# client = anthropic.Anthropic(api_key="sk-ant-...")
# model = "claude-sonnet-4-20250514"

# Après (Bedrock)
client = anthropic.AnthropicBedrock(aws_region="us-east-1")
model = "anthropic.claude-sonnet-4-20250514-v1:0"

# Le reste du code est identique
message = client.messages.create(
    model=model,
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hello"}]
)

GO DEEPER — FREE GUIDE

Module 0 — Prompting Fundamentals

Build your first effective prompts from scratch with hands-on exercises.

D

Dorian Laurenceau

Full-Stack Developer & Learning Designer

Full-stack web developer and learning designer. I spent 4 years as a freelance full-stack developer and 4 years teaching React, JavaScript, HTML/CSS and WordPress to adult learners. Today I design learning paths in web development and AI, grounded in learning science. I founded learn-prompting.fr to make AI practical and accessible, and built the Bluff app to gamify political transparency.

Prompt EngineeringLLMsFull-Stack DevelopmentLearning DesignReact
Published: March 10, 2026Updated: April 24, 2026
Newsletter

Weekly AI Insights

Tools, techniques & news — curated for AI practitioners. Free, no spam.

Free, no spam. Unsubscribe anytime.

FAQ

Qu'est-ce que Amazon Bedrock ?+

Amazon Bedrock est un service AWS qui donne accès à des modèles d'IA fondamentaux (dont Claude) via une API unifiée. Il s'intègre nativement avec l'écosystème AWS (IAM, VPC, CloudWatch, S3).

Pourquoi utiliser Claude via Bedrock plutôt que l'API directe ?+

Bedrock offre une facturation unifiée AWS consolidée, la conformité enterprise (SOC2, HIPAA, FedRAMP), l'intégration VPC pour la sécurité réseau, les guardrails natifs et la gestion IAM fine des permissions.

Comment accéder à Claude sur Bedrock ?+

Activez le modèle Claude dans la console Bedrock (Model Access), configurez les rôles IAM avec les permissions bedrock:InvokeModel, et utilisez le SDK boto3 ou l'AWS SDK de votre choix.

Bedrock coûte-t-il plus cher que l'API directe Anthropic ?+

Les prix sur Bedrock sont généralement similaires ou légèrement supérieurs à l'API directe. Cependant, Bedrock offre des options de facturation AWS (Reserved Capacity, Savings Plans) qui peuvent réduire les coûts pour les gros volumes.

Quelle est la différence entre AWS Bedrock et l'API Claude directe ?+

Bedrock offre une facturation unifiée AWS, la conformité SOC2/HIPAA intégrée, les guardrails natifs, et la compatibilité avec l'écosystème AWS (IAM, CloudWatch, S3). L'API directe offre un accès aux dernières fonctionnalités en premier, des prix potentiellement plus bas, et une intégration plus simple. Bedrock est recommandé pour les entreprises déjà sur AWS.