Prerequisiti

Prima di configurare Claude Code con Bedrock, assicurati di avere:

  • Un account AWS con accesso Bedrock abilitato
  • Accesso ai modelli Claude desiderati (ad es., Claude Sonnet 4) in Bedrock
  • AWS CLI installato e configurato (opzionale - necessario solo se non hai un altro meccanismo per ottenere le credenziali)
  • Permessi IAM appropriati

Setup

1. Abilita l’accesso al modello

Prima, assicurati di avere accesso ai modelli Claude richiesti nel tuo account AWS:

  1. Naviga alla console Amazon Bedrock
  2. Vai a Model access nella navigazione sinistra
  3. Richiedi l’accesso ai modelli Claude desiderati (ad es., Claude Sonnet 4)
  4. Attendi l’approvazione (solitamente istantanea per la maggior parte delle regioni)

2. Configura le credenziali AWS

Claude Code utilizza la catena di credenziali predefinita dell’SDK AWS. Configura le tue credenziali utilizzando uno di questi metodi:

Opzione A: Configurazione AWS CLI

aws configure

Opzione B: Variabili d’ambiente (chiave di accesso)

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

Opzione C: Variabili d’ambiente (profilo SSO)

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

export AWS_PROFILE=your-profile-name

Opzione D: Chiavi API Bedrock

export AWS_BEARER_TOKEN_BEDROCK=your-bedrock-api-key

Le chiavi API Bedrock forniscono un metodo di autenticazione più semplice senza necessità di credenziali AWS complete. Scopri di più sulle chiavi API Bedrock.

Configurazione avanzata delle credenziali

Claude Code supporta l’aggiornamento automatico delle credenziali per AWS SSO e fornitori di identità aziendali. Aggiungi queste impostazioni al tuo file delle impostazioni di Claude Code (vedi Settings per le posizioni dei file).

Quando Claude Code rileva che le tue credenziali AWS sono scadute (sia localmente basandosi sul loro timestamp o quando Bedrock restituisce un errore di credenziali), eseguirà automaticamente i tuoi comandi configurati awsAuthRefresh e/o awsCredentialExport per ottenere nuove credenziali prima di riprovare la richiesta.

Configurazione di esempio
{
  "awsAuthRefresh": "aws sso login --profile myprofile",
  "env": {
    "AWS_PROFILE": "myprofile"
  }
}
Spiegazione delle impostazioni di configurazione

awsAuthRefresh: Usa questo per comandi che modificano la directory .aws (ad es., aggiornamento credenziali, cache SSO, o file di configurazione). L’output viene mostrato all’utente (ma l’input dell’utente non è supportato), rendendolo adatto per flussi di autenticazione basati su browser dove la CLI mostra un codice da inserire nel browser.

awsCredentialExport: Usa questo solo se non puoi modificare .aws e devi restituire direttamente le credenziali. L’output viene catturato silenziosamente (non mostrato all’utente). Il comando deve restituire JSON in questo formato:

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

3. Configura Claude Code

Imposta le seguenti variabili d’ambiente per abilitare Bedrock:

# Abilita l'integrazione Bedrock
export CLAUDE_CODE_USE_BEDROCK=1
export AWS_REGION=us-east-1  # o la tua regione preferita

# Opzionale: Sovrascrivi la regione per il modello piccolo/veloce (Haiku)
export ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION=us-west-2

Quando abiliti Bedrock per Claude Code, tieni presente quanto segue:

  • AWS_REGION è una variabile d’ambiente richiesta. Claude Code non legge dal file di configurazione .aws per questa impostazione.
  • Quando usi Bedrock, i comandi /login e /logout sono disabilitati poiché l’autenticazione è gestita tramite le credenziali AWS.
  • Puoi utilizzare file di impostazioni per variabili d’ambiente come AWS_PROFILE che non vuoi far trapelare ad altri processi. Vedi Settings per maggiori informazioni.

4. Configurazione del modello

Claude Code utilizza questi modelli predefiniti per Bedrock:

Tipo di modelloValore predefinito
Modello primarious.anthropic.claude-3-7-sonnet-20250219-v1:0
Modello piccolo/veloceus.anthropic.claude-3-5-haiku-20241022-v1:0

Per personalizzare i modelli, usa uno di questi metodi:

# Usando l'ID del profilo di inferenza
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'

# Usando l'ARN del profilo di inferenza dell'applicazione
export ANTHROPIC_MODEL='arn:aws:bedrock:us-east-2:your-account-id:application-inference-profile/your-model-id'

# Opzionale: Disabilita la cache dei prompt se necessario
export DISABLE_PROMPT_CACHING=1

Prompt caching potrebbe non essere disponibile in tutte le regioni

5. Configurazione dei token di output

Quando usi Claude Code con Amazon Bedrock, raccomandiamo le seguenti impostazioni dei token:

# Impostazioni raccomandate dei token di output per Bedrock
export CLAUDE_CODE_MAX_OUTPUT_TOKENS=4096
export MAX_THINKING_TOKENS=1024

Perché questi valori:

  • CLAUDE_CODE_MAX_OUTPUT_TOKENS=4096: La logica di throttling burndown di Bedrock imposta un minimo di 4096 token come penalità max_token. Impostare questo valore più basso non ridurrà i costi ma potrebbe tagliare l’uso di strumenti lunghi, causando il fallimento persistente del loop dell’agente Claude Code. Claude Code tipicamente usa meno di 4096 token di output senza pensiero esteso, ma potrebbe aver bisogno di questo margine per compiti che coinvolgono creazione significativa di file o uso dello strumento Write.

  • MAX_THINKING_TOKENS=1024: Questo fornisce spazio per il pensiero esteso senza tagliare le risposte dell’uso degli strumenti, mantenendo comunque catene di ragionamento focalizzate. Questo equilibrio aiuta a prevenire cambi di traiettoria che non sono sempre utili per compiti di codifica specificamente.

Configurazione IAM

Crea una policy IAM con i permessi richiesti per 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/*"
      ]
    }
  ]
}

Per permessi più restrittivi, puoi limitare la Risorsa a specifici ARN di profili di inferenza.

Per i dettagli, vedi documentazione IAM Bedrock.

Raccomandiamo di creare un account AWS dedicato per Claude Code per semplificare il tracciamento dei costi e il controllo degli accessi.

Risoluzione dei problemi

Se incontri problemi di regione:

  • Controlla la disponibilità del modello: aws bedrock list-inference-profiles --region your-region
  • Passa a una regione supportata: export AWS_REGION=us-east-1
  • Considera l’uso di profili di inferenza per l’accesso cross-regione

Se ricevi un errore “on-demand throughput isn’t supported”:

Claude Code utilizza l’API Invoke di Bedrock e non supporta l’API Converse.

Risorse aggiuntive