Prérequis

Avant de configurer Claude Code avec Bedrock, assurez-vous d’avoir :

  • Un compte AWS avec l’accès Bedrock activé
  • Accès aux modèles Claude souhaités (par exemple, Claude Sonnet 4) dans Bedrock
  • AWS CLI installé et configuré (optionnel - nécessaire uniquement si vous n’avez pas d’autre mécanisme pour obtenir des identifiants)
  • Permissions IAM appropriées

Configuration

1. Activer l’accès au modèle

Tout d’abord, assurez-vous d’avoir accès aux modèles Claude requis dans votre compte AWS :

  1. Naviguez vers la console Amazon Bedrock
  2. Allez dans Accès au modèle dans la navigation de gauche
  3. Demandez l’accès aux modèles Claude souhaités (par exemple, Claude Sonnet 4)
  4. Attendez l’approbation (généralement instantanée pour la plupart des régions)

2. Configurer les identifiants AWS

Claude Code utilise la chaîne d’identifiants par défaut du SDK AWS. Configurez vos identifiants en utilisant l’une de ces méthodes :

Option A : Configuration AWS CLI

aws configure

Option B : Variables d’environnement (clé d’accès)

export AWS_ACCESS_KEY_ID=your-access-key-id
export AWS_SECRET_ACCESS_KEY=your-secret-access-key
export AWS_SESSION_TOKEN=your-session-token

Option C : Variables d’environnement (profil SSO)

aws sso login --profile=<your-profile-name>

export AWS_PROFILE=your-profile-name

Option D : Clés API Bedrock

export AWS_BEARER_TOKEN_BEDROCK=your-bedrock-api-key

Les clés API Bedrock fournissent une méthode d’authentification plus simple sans avoir besoin d’identifiants AWS complets. En savoir plus sur les clés API Bedrock.

Configuration avancée des identifiants

Claude Code prend en charge l’actualisation automatique des identifiants pour AWS SSO et les fournisseurs d’identité d’entreprise. Ajoutez ces paramètres à votre fichier de paramètres Claude Code (voir Paramètres pour les emplacements de fichiers).

Lorsque Claude Code détecte que vos identifiants AWS ont expiré (soit localement basé sur leur horodatage ou lorsque Bedrock retourne une erreur d’identifiants), il exécutera automatiquement vos commandes awsAuthRefresh et/ou awsCredentialExport configurées pour obtenir de nouveaux identifiants avant de réessayer la requête.

Exemple de configuration
{
  "awsAuthRefresh": "aws sso login --profile myprofile",
  "env": {
    "AWS_PROFILE": "myprofile"
  }
}
Paramètres de configuration expliqués

awsAuthRefresh : Utilisez ceci pour les commandes qui modifient le répertoire .aws (par exemple, mise à jour des identifiants, cache SSO, ou fichiers de configuration). La sortie est affichée à l’utilisateur (mais la saisie utilisateur n’est pas prise en charge), ce qui la rend appropriée pour les flux d’authentification basés sur navigateur où la CLI affiche un code à saisir dans le navigateur.

awsCredentialExport : Utilisez ceci uniquement si vous ne pouvez pas modifier .aws et devez retourner directement les identifiants. La sortie est capturée silencieusement (non affichée à l’utilisateur). La commande doit sortir du JSON dans ce format :

{
  "Credentials": {
    "AccessKeyId": "value",
    "SecretAccessKey": "value",
    "SessionToken": "value"
  }
}

3. Configurer Claude Code

Définissez les variables d’environnement suivantes pour activer Bedrock :

# Activer l'intégration Bedrock
export CLAUDE_CODE_USE_BEDROCK=1
export AWS_REGION=us-east-1  # ou votre région préférée

# Optionnel : Remplacer la région pour le modèle petit/rapide (Haiku)
export ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION=us-west-2

Lors de l’activation de Bedrock pour Claude Code, gardez à l’esprit les points suivants :

  • AWS_REGION est une variable d’environnement requise. Claude Code ne lit pas depuis le fichier de configuration .aws pour ce paramètre.
  • Lors de l’utilisation de Bedrock, les commandes /login et /logout sont désactivées car l’authentification est gérée via les identifiants AWS.
  • Vous pouvez utiliser des fichiers de paramètres pour des variables d’environnement comme AWS_PROFILE que vous ne voulez pas divulguer à d’autres processus. Voir Paramètres pour plus d’informations.

4. Configuration du modèle

Claude Code utilise ces modèles par défaut pour Bedrock :

Type de modèleValeur par défaut
Modèle principalus.anthropic.claude-3-7-sonnet-20250219-v1:0
Modèle petit/rapideus.anthropic.claude-3-5-haiku-20241022-v1:0

Pour personnaliser les modèles, utilisez l’une de ces méthodes :

# Utilisation de l'ID de profil d'inférence
export ANTHROPIC_MODEL='us.anthropic.claude-opus-4-1-20250805-v1:0'
export ANTHROPIC_SMALL_FAST_MODEL='us.anthropic.claude-3-5-haiku-20241022-v1:0'

# Utilisation de l'ARN de profil d'inférence d'application
export ANTHROPIC_MODEL='arn:aws:bedrock:us-east-2:your-account-id:application-inference-profile/your-model-id'

# Optionnel : Désactiver la mise en cache des prompts si nécessaire
export DISABLE_PROMPT_CACHING=1

La mise en cache des prompts peut ne pas être disponible dans toutes les régions

5. Configuration des jetons de sortie

Lors de l’utilisation de Claude Code avec Amazon Bedrock, nous recommandons les paramètres de jetons suivants :

# Paramètres de jetons de sortie recommandés pour Bedrock
export CLAUDE_CODE_MAX_OUTPUT_TOKENS=4096
export MAX_THINKING_TOKENS=1024

Pourquoi ces valeurs :

  • CLAUDE_CODE_MAX_OUTPUT_TOKENS=4096 : La logique de limitation de débit de Bedrock définit un minimum de 4096 jetons comme pénalité max_token. Définir cela plus bas ne réduira pas les coûts mais peut couper les utilisations d’outils longues, causant l’échec persistant de la boucle d’agent Claude Code. Claude Code utilise généralement moins de 4096 jetons de sortie sans réflexion étendue, mais peut avoir besoin de cette marge pour les tâches impliquant une création de fichiers significative ou l’utilisation de l’outil Write.

  • MAX_THINKING_TOKENS=1024 : Cela fournit de l’espace pour une réflexion étendue sans couper les réponses d’utilisation d’outils, tout en maintenant des chaînes de raisonnement focalisées. Cet équilibre aide à prévenir les changements de trajectoire qui ne sont pas toujours utiles pour les tâches de codage spécifiquement.

Configuration IAM

Créez une politique IAM avec les permissions requises pour Claude Code :

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "bedrock:InvokeModel",
        "bedrock:InvokeModelWithResponseStream",
        "bedrock:ListInferenceProfiles"
      ],
      "Resource": [
        "arn:aws:bedrock:*:*:inference-profile/*",
        "arn:aws:bedrock:*:*:application-inference-profile/*"
      ]
    }
  ]
}

Pour des permissions plus restrictives, vous pouvez limiter la Ressource à des ARN de profil d’inférence spécifiques.

Pour plus de détails, voir Documentation IAM Bedrock.

Nous recommandons de créer un compte AWS dédié pour Claude Code afin de simplifier le suivi des coûts et le contrôle d’accès.

Dépannage

Si vous rencontrez des problèmes de région :

  • Vérifiez la disponibilité du modèle : aws bedrock list-inference-profiles --region your-region
  • Basculez vers une région prise en charge : export AWS_REGION=us-east-1
  • Considérez l’utilisation de profils d’inférence pour l’accès inter-régions

Si vous recevez une erreur “le débit à la demande n’est pas pris en charge” :

Claude Code utilise l’API Invoke de Bedrock et ne prend pas en charge l’API Converse.

Ressources supplémentaires