コード実行ツール
コード実行ツールを使用すると、Claudeは安全でサンドボックス化された環境でPythonコードを実行できます。 Claudeはデータを分析し、視覚化を作成し、複雑な計算を実行し、APIの会話内で直接アップロードされた ファイルを処理することができます。
この機能にはベータヘッダーが必要です: "anthropic-beta": "code-execution-2025-05-22"
サポートされているモデル
コード実行ツールは以下で利用可能です:
- 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
)
クイックスタート
以下は、Claudeに計算を実行するよう依頼する簡単な例です:
コード実行の仕組み
コード実行ツールをAPIリクエストに追加すると:
- Claudeは質問に答えるためにコード実行が役立つかどうかを評価します
- Claudeは安全なサンドボックス環境でPythonコードを記述して実行します
- コード実行は1つのリクエスト内で複数回発生する場合があります
- Claudeは生成されたチャート、計算、または分析を含む結果を提供します
ツール定義
コード実行ツールには追加のパラメータは必要ありません:
レスポンスフォーマット
以下はコード実行を含むレスポンスの例です:
結果
コード実行の結果には以下が含まれます:
stdout
: print文と正常実行からの出力stderr
: コード実行が失敗した場合のエラーメッセージreturn_code
(成功の場合は0、失敗の場合は0以外)
エラー
ツールの使用中にエラーが発生した場合、code_execution_tool_result_error
が表示されます
考えられるエラーには以下が含まれます
unavailable
: コード実行ツールが利用できませんcode_execution_exceeded
: 実行時間が許容される最大値を超えましたcontainer_expired
: コンテナの有効期限が切れて利用できません
pause_turn
停止理由
レスポンスには pause_turn
停止理由が含まれる場合があり、これはAPIが長時間実行されるターンを一時停止したことを示します。
Claudeにターンを続行させるために、レスポンスをそのまま後続のリクエストで提供することも、会話を中断したい場合は
内容を変更することもできます。
コンテナ
コード実行ツールは、Pythonコード実行専用に設計された安全なコンテナ化環境で実行されます。
ランタイム環境
- Pythonバージョン: 3.11.12
- オペレーティングシステム: Linuxベースのコンテナ
- アーキテクチャ: x86_64 (AMD64)
リソース制限
- メモリ: 1GiB RAM
- ディスク容量: 5GiBワークスペースストレージ
- CPU: 1 CPU
- 実行タイムアウト: 実行はメッセージリクエストごとに制限され、
max_execution_duration
パラメータで制御できます - コンテナの有効期限: 1時間の非アクティブ状態後、コンテナにはアクセスできなくなります
ネットワークとセキュリティ
- インターネットアクセス: セキュリティのために完全に無効化
- 外部接続: アウトバウンドネットワークリクエストは許可されていません
- サンドボックス分離: ホストシステムおよび他のコンテナからの完全な分離
- ファイルアクセス: ワークスペースディレクトリのみに制限
プリインストールされたライブラリ
サンドボックス化されたPython環境には、これらの一般的に使用されるライブラリが含まれています:
- データサイエンス: pandas, numpy, scipy, scikit-learn, statsmodels
- 視覚化: matplotlib, seaborn
- ファイル処理: pyarrow, openpyxl, xlrd, pillow
- 数学と計算: sympy, mpmath
- ユーティリティ: tqdm, python-dateutil, pytz, joblib
コード実行でのファイルの操作
コード実行では、Files APIを通じてアップロードされたCSVファイル、Excelファイル、その他のデータ形式などのファイルを分析できます。 これにより、Claudeはデータを読み取り、処理し、洞察を生成することができます。
コード実行でFiles APIを使用するには、2つのベータヘッダーが必要です: "anthropic-beta": "code-execution-2025-05-22,files-api-2025-04-14"
サポートされているファイルタイプ
Python環境は以下のファイルタイプを含む(ただしこれらに限定されない)ファイルタイプを処理できます
- CSV
- Excel (.xlsx, .xls)
- JSON
- XML
- 画像 (JPEG, PNG, GIF, WebP)
- テキストファイル (.txt, .md, .py, など)
例
- ファイルをアップロードする Files APIを使用
- ファイルを参照する
container_upload
コンテンツブロックを使用してメッセージ内で - コード実行ツールを含める APIリクエストに
ストリーミング
ストリーミングを有効にすると、コード実行イベントが発生した時点で受信できます:
バッチリクエスト
Messages Batches APIでコード実行ツールを含めることができます。Messages Batches APIを通じたコード実行ツールの呼び出しは、通常のMessages APIリクエストと同じ価格です。
使用量と価格
コード実行ツールの使用量はトークン使用量とは別に追跡されます。実行時間は最低5分です。 リクエストにファイルが含まれている場合、ファイルがコンテナに事前ロードされるため、ツールが使用されなくても実行時間が課金されます。
価格: セッション時間あたり$0.05。