Инструмент выполнения кода
Инструмент выполнения кода позволяет 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 в безопасной изолированной среде
- Выполнение кода может происходить несколько раз в рамках одного запроса
- Claude предоставляет результаты с любыми сгенерированными графиками, вычислениями или анализом
Определение инструмента
Инструмент выполнения кода не требует дополнительных параметров:
Формат ответа
Вот пример ответа с выполнением кода:
Результаты
Результаты выполнения кода включают:
stdout
: Вывод из операторов print и успешного выполненияstderr
: Сообщения об ошибках, если выполнение кода не удалосьreturn_code
(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)
Ограничения ресурсов
- Память: 1 ГБ ОЗУ
- Дисковое пространство: 5 ГБ рабочего хранилища
- ЦП: 1 ЦП
- Тайм-аут выполнения: Выполнение ограничено для каждого запроса сообщений и может контролироваться параметром
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 с выполнением кода требует двух бета-заголовков: "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-запрос
Потоковая передача
При включенной потоковой передаче вы будете получать события выполнения кода по мере их возникновения:
Пакетные запросы
Вы можете включить инструмент выполнения кода в API пакетной обработки сообщений. Вызовы инструмента выполнения кода через API пакетной обработки сообщений тарифицируются так же, как и в обычных запросах API сообщений.
Использование и ценообразование
Использование инструмента выполнения кода отслеживается отдельно от использования токенов. Минимальное время выполнения составляет 5 минут. Если в запрос включены файлы, время выполнения тарифицируется, даже если инструмент не используется, из-за предварительной загрузки файлов в контейнер.
Цена: $0.05 за сессию-час.