I gateway LLM forniscono un livello proxy centralizzato tra Claude Code e i fornitori di modelli, offrendo:

  • Autenticazione centralizzata - Punto unico per la gestione delle chiavi API
  • Monitoraggio dell’utilizzo - Monitora l’utilizzo tra team e progetti
  • Controlli dei costi - Implementa budget e limiti di velocità
  • Registrazione di audit - Traccia tutte le interazioni del modello per la conformità
  • Routing del modello - Cambia tra fornitori senza modifiche al codice

Configurazione LiteLLM

LiteLLM è un servizio proxy di terze parti. Anthropic non approva, mantiene o verifica la sicurezza o funzionalità di LiteLLM. Questa guida è fornita a scopo informativo e potrebbe diventare obsoleta. Utilizzare a propria discrezione.

Prerequisiti

  • Claude Code aggiornato all’ultima versione
  • Server Proxy LiteLLM distribuito e accessibile
  • Accesso ai modelli Claude tramite il fornitore scelto

Configurazione base di LiteLLM

Configura Claude Code:

Metodi di autenticazione

Chiave API statica

Metodo più semplice utilizzando una chiave API fissa:

# Imposta nell'ambiente
export ANTHROPIC_AUTH_TOKEN=sk-litellm-static-key

# O nelle impostazioni di Claude Code
{
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "sk-litellm-static-key"
  }
}

Questo valore verrà inviato come header Authorization e Proxy-Authorization, anche se Authorization potrebbe essere sovrascritto (vedi Vertex “Credenziali specificate dal client” di seguito).

Chiave API dinamica con helper

Per chiavi rotanti o autenticazione per utente:

  1. Crea uno script helper per la chiave API:
#!/bin/bash
# ~/bin/get-litellm-key.sh

# Esempio: Recupera chiave dal vault
vault kv get -field=api_key secret/litellm/claude-code

# Esempio: Genera token JWT
jwt encode \
  --secret="${JWT_SECRET}" \
  --exp="+1h" \
  '{"user":"'${USER}'","team":"engineering"}'
  1. Configura le impostazioni di Claude Code per utilizzare l’helper:
{
  "apiKeyHelper": "~/bin/get-litellm-key.sh"
}
  1. Imposta l’intervallo di aggiornamento del token:
# Aggiorna ogni ora (3600000 ms)
export CLAUDE_CODE_API_KEY_HELPER_TTL_MS=3600000

Questo valore verrà inviato come header Authorization, Proxy-Authorization e X-Api-Key, anche se Authorization potrebbe essere sovrascritto (vedi Google Vertex AI tramite LiteLLM). L’apiKeyHelper ha precedenza inferiore rispetto a ANTHROPIC_AUTH_TOKEN o ANTHROPIC_API_KEY.

Configurazioni specifiche per fornitore

API Anthropic tramite LiteLLM

Utilizzando endpoint pass-through:

export ANTHROPIC_BASE_URL=https://litellm-server:4000/anthropic
Amazon Bedrock tramite LiteLLM

Utilizzando endpoint pass-through:

export ANTHROPIC_BEDROCK_BASE_URL=https://litellm-server:4000/bedrock
export CLAUDE_CODE_SKIP_BEDROCK_AUTH=1
export CLAUDE_CODE_USE_BEDROCK=1
Google Vertex AI tramite LiteLLM

Utilizzando endpoint pass-through:

Raccomandato: Credenziali specificate dal proxy

export ANTHROPIC_VERTEX_BASE_URL=https://litellm-server:4000/vertex_ai/v1
export ANTHROPIC_VERTEX_PROJECT_ID=your-gcp-project-id
export CLAUDE_CODE_SKIP_VERTEX_AUTH=1
export CLAUDE_CODE_USE_VERTEX=1
export CLOUD_ML_REGION=us-east5

Alternativa: Credenziali specificate dal client

Se preferisci utilizzare le credenziali GCP locali:

  1. Autentica con GCP localmente:
gcloud auth application-default login
  1. Imposta l’ambiente di Claude Code:
export ANTHROPIC_VERTEX_BASE_URL=https://litellm-server:4000/vertex_ai/v1
export ANTHROPIC_VERTEX_PROJECT_ID=your-gcp-project-id
export CLAUDE_CODE_USE_VERTEX=1
export CLOUD_ML_REGION=us-east5
  1. Aggiorna la configurazione degli header di LiteLLM:

Assicurati che la tua configurazione LiteLLM abbia general_settings.litellm_key_header_name impostato su Proxy-Authorization, poiché il token GCP pass-through sarà localizzato sull’header Authorization.

Endpoint unificato

Utilizzando l’endpoint formato Anthropic di LiteLLM:

export ANTHROPIC_BASE_URL=https://litellm-server:4000

Selezione del modello

Per impostazione predefinita, i modelli utilizzeranno quelli specificati in Configurazione del modello.

Se hai configurato nomi di modelli personalizzati in LiteLLM, imposta le variabili d’ambiente sopra menzionate su quei nomi personalizzati.

Per informazioni più dettagliate, consulta la documentazione di LiteLLM.

Risorse aggiuntive