Alat eksekusi kode
Alat eksekusi kode memungkinkan Claude untuk menjalankan kode Python dalam lingkungan yang aman dan terisolasi. Claude dapat menganalisis data, membuat visualisasi, melakukan perhitungan kompleks, dan memproses file yang diunggah langsung dalam percakapan API.
Fitur ini memerlukan header beta: "anthropic-beta": "code-execution-2025-05-22"
Model yang didukung
Alat eksekusi kode tersedia pada:
- 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
)
Mulai cepat
Berikut contoh sederhana yang meminta Claude untuk melakukan perhitungan:
Bagaimana eksekusi kode bekerja
Ketika Anda menambahkan alat eksekusi kode ke permintaan API Anda:
- Claude mengevaluasi apakah eksekusi kode akan membantu menjawab pertanyaan Anda
- Claude menulis dan mengeksekusi kode Python dalam lingkungan sandbox yang aman
- Eksekusi kode dapat terjadi beberapa kali selama satu permintaan
- Claude memberikan hasil dengan grafik, perhitungan, atau analisis yang dihasilkan
Definisi alat
Alat eksekusi kode tidak memerlukan parameter tambahan:
Format respons
Berikut contoh respons dengan eksekusi kode:
Hasil
Hasil eksekusi kode mencakup:
stdout
: Output dari pernyataan print dan eksekusi yang berhasilstderr
: Pesan kesalahan jika eksekusi kode gagalreturn_code
(0 untuk sukses, bukan nol untuk kegagalan)
Kesalahan
Jika terjadi kesalahan saat menggunakan alat, akan ada code_execution_tool_result_error
Kemungkinan kesalahan meliputi
unavailable
: Alat eksekusi kode tidak tersediacode_execution_exceeded
: Waktu eksekusi melebihi maksimum yang diizinkancontainer_expired
: Kontainer kedaluwarsa dan tidak tersedia
Alasan berhenti pause_turn
Respons mungkin menyertakan alasan berhenti pause_turn
, yang menunjukkan bahwa API menjeda giliran yang berjalan lama. Anda dapat
memberikan respons kembali apa adanya dalam permintaan berikutnya untuk membiarkan Claude melanjutkan gilirannya, atau memodifikasi konten jika Anda
ingin mengganggu percakapan.
Kontainer
Alat eksekusi kode berjalan dalam lingkungan terkontainer yang aman yang dirancang khusus untuk eksekusi kode Python.
Lingkungan runtime
- Versi Python: 3.11.12
- Sistem operasi: Kontainer berbasis Linux
- Arsitektur: x86_64 (AMD64)
Batasan sumber daya
- Memori: 1GiB RAM
- Ruang disk: 5GiB penyimpanan workspace
- CPU: 1 CPU
- Batas waktu eksekusi: Eksekusi dibatasi per permintaan pesan dan dapat dikontrol dengan parameter
max_execution_duration
- Kedaluwarsa Kontainer: Setelah 1 jam tidak aktif, kontainer tidak dapat diakses lagi
Jaringan dan keamanan
- Akses internet: Dinonaktifkan sepenuhnya untuk keamanan
- Koneksi eksternal: Tidak ada permintaan jaringan keluar yang diizinkan
- Isolasi sandbox: Isolasi penuh dari sistem host dan kontainer lain
- Akses file: Terbatas hanya pada direktori workspace
Pustaka yang telah diinstal
Lingkungan Python yang terisolasi mencakup pustaka yang umum digunakan ini:
- Data Science: pandas, numpy, scipy, scikit-learn, statsmodels
- Visualisasi: matplotlib, seaborn
- Pemrosesan File: pyarrow, openpyxl, xlrd, pillow
- Matematika & Komputasi: sympy, mpmath
- Utilitas: tqdm, python-dateutil, pytz, joblib
Bekerja dengan File dalam Eksekusi Kode
Eksekusi kode dapat menganalisis file yang diunggah melalui API Files, seperti file CSV, file Excel, dan format data lainnya. Ini memungkinkan Claude untuk membaca, memproses, dan menghasilkan wawasan dari data Anda.
Menggunakan API Files dengan Eksekusi Kode memerlukan dua header beta: "anthropic-beta": "code-execution-2025-05-22,files-api-2025-04-14"
Jenis file yang didukung
Lingkungan Python mampu bekerja dengan tetapi tidak terbatas pada jenis file berikut
- CSV
- Excel (.xlsx, .xls)
- JSON
- XML
- Gambar (JPEG, PNG, GIF, WebP)
- File teks (.txt, .md, .py, dll)
Contoh
- Unggah file Anda menggunakan API Files
- Referensikan file dalam pesan Anda menggunakan blok konten
container_upload
- Sertakan alat eksekusi kode dalam permintaan API Anda
Streaming
Dengan streaming diaktifkan, Anda akan menerima peristiwa eksekusi kode saat terjadi:
Permintaan batch
Anda dapat menyertakan alat eksekusi kode dalam API Messages Batches. Panggilan alat eksekusi kode melalui API Messages Batches dihargai sama dengan yang ada dalam permintaan API Messages biasa.
Penggunaan dan harga
Penggunaan alat eksekusi kode dilacak secara terpisah dari penggunaan token. Waktu eksekusi minimal 5 menit. Jika file disertakan dalam permintaan, waktu eksekusi ditagih meskipun alat tidak digunakan karena file telah dimuat sebelumnya ke kontainer.
Harga: $0,05 per jam sesi.