Strumento di esecuzione del codice
Lo strumento di esecuzione del codice consente a Claude di eseguire codice Python in un ambiente sicuro e isolato. Claude può analizzare dati, creare visualizzazioni, eseguire calcoli complessi ed elaborare file caricati direttamente all’interno della conversazione API.
Questa funzionalità richiede l’header beta: "anthropic-beta": "code-execution-2025-05-22"
Modelli supportati
Lo strumento di esecuzione del codice è disponibile su:
- Claude Opus 4 (
claude-opus-4-20250514
) - Claude Sonnet 4 (
claude-sonnet-4-20250514
) - Claude Sonnet 3.7 (
claude-3-7-sonnet-20250219
) - Claude Haiku 3.5 (
claude-3-5-haiku-latest
)
Guida rapida
Ecco un semplice esempio che chiede a Claude di eseguire un calcolo:
Come funziona l’esecuzione del codice
Quando aggiungi lo strumento di esecuzione del codice alla tua richiesta API:
- Claude valuta se l’esecuzione del codice aiuterebbe a rispondere alla tua domanda
- Claude scrive ed esegue codice Python in un ambiente sandbox sicuro
- L’esecuzione del codice può avvenire più volte durante una singola richiesta
- Claude fornisce risultati con eventuali grafici, calcoli o analisi generati
Definizione dello strumento
Lo strumento di esecuzione del codice non richiede parametri aggiuntivi:
Formato della risposta
Ecco un esempio di risposta con esecuzione del codice:
Risultati
I risultati dell’esecuzione del codice includono:
stdout
: Output dalle istruzioni print e dall’esecuzione riuscitastderr
: Messaggi di errore se l’esecuzione del codice falliscereturn_code
(0 per successo, diverso da zero per fallimento)
Errori
Se si verifica un errore nell’utilizzo dello strumento, ci sarà un code_execution_tool_result_error
I possibili errori includono
unavailable
: Lo strumento di esecuzione del codice non è disponibilecode_execution_exceeded
: Il tempo di esecuzione ha superato il massimo consentitocontainer_expired
: Il container è scaduto e non è disponibile
Motivo di arresto pause_turn
La risposta può includere un motivo di arresto pause_turn
, che indica che l’API ha messo in pausa un turno di lunga durata. Puoi
fornire la risposta così com’è in una richiesta successiva per permettere a Claude di continuare il suo turno, o modificare il contenuto se
desideri interrompere la conversazione.
Container
Lo strumento di esecuzione del codice viene eseguito in un ambiente containerizzato sicuro progettato specificamente per l’esecuzione di codice Python.
Ambiente di runtime
- Versione Python: 3.11.12
- Sistema operativo: Container basato su Linux
- Architettura: x86_64 (AMD64)
Limiti di risorse
- Memoria: 1GiB RAM
- Spazio su disco: 5GiB di spazio di lavoro
- CPU: 1 CPU
- Timeout di esecuzione: L’esecuzione è limitata per richiesta di messaggi e può essere controllata con il parametro
max_execution_duration
- Scadenza del container: Dopo 1 ora di inattività, il container non può più essere accessibile
Rete e sicurezza
- Accesso a Internet: Completamente disabilitato per sicurezza
- Connessioni esterne: Nessuna richiesta di rete in uscita consentita
- Isolamento sandbox: Isolamento completo dal sistema host e da altri container
- Accesso ai file: Limitato solo alla directory di lavoro
Librerie preinstallate
L’ambiente Python sandbox include queste librerie comunemente utilizzate:
- Data Science: pandas, numpy, scipy, scikit-learn, statsmodels
- Visualizzazione: matplotlib, seaborn
- Elaborazione file: pyarrow, openpyxl, xlrd, pillow
- Matematica e calcolo: sympy, mpmath
- Utilità: tqdm, python-dateutil, pytz, joblib
Lavorare con i file nell’esecuzione del codice
L’esecuzione del codice può analizzare file caricati tramite l’API Files, come file CSV, file Excel e altri formati di dati. Questo permette a Claude di leggere, elaborare e generare approfondimenti dai tuoi dati.
L’utilizzo dell’API Files con l’esecuzione del codice richiede due header beta: "anthropic-beta": "code-execution-2025-05-22,files-api-2025-04-14"
Tipi di file supportati
L’ambiente Python è in grado di lavorare con, ma non limitato ai seguenti tipi di file
- CSV
- Excel (.xlsx, .xls)
- JSON
- XML
- Immagini (JPEG, PNG, GIF, WebP)
- File di testo (.txt, .md, .py, ecc)
Esempio
- Carica il tuo file utilizzando l’API Files
- Fai riferimento al file nel tuo messaggio utilizzando un blocco di contenuto
container_upload
- Includi lo strumento di esecuzione del codice nella tua richiesta API
Streaming
Con lo streaming abilitato, riceverai gli eventi di esecuzione del codice mentre si verificano:
Richieste batch
Puoi includere lo strumento di esecuzione del codice nell’API Messages Batches. Le chiamate allo strumento di esecuzione del codice attraverso l’API Messages Batches hanno lo stesso prezzo di quelle nelle normali richieste dell’API Messages.
Utilizzo e prezzi
L’utilizzo dello strumento di esecuzione del codice viene tracciato separatamente dall’utilizzo dei token. Il tempo di esecuzione è di minimo 5 minuti. Se i file sono inclusi nella richiesta, il tempo di esecuzione viene addebitato anche se lo strumento non viene utilizzato a causa del precaricamento dei file sul container.
Prezzo: $0.05 per ora di sessione.