Code Interpreter
Примечание
Функциональность находится на стадии Preview.
Code Interpreter — это встроенный инструмент Yandex AI Studio, позволяющий модели писать и выполнять Python-код в изолированной тестовой среде. Он используется в задачах, где одних текстовых рассуждений недостаточно и требуется фактическое выполнение вычислений.
Инструмент исполнения кода особенно полезен в следующих сценариях:
- анализ данных;
- программирование и отладка логики;
- математические вычисления;
- работа с файлами и изображениями.
Примечание
Сессии с Code Interpreter являются контекстно-нагруженными (код, данные, результаты выполнения). Для них рекомендуется использовать модели с большим контекстным окном, например Qwen.
Основные возможности
Выполнение Python-кода
Code Interpreter предоставляет модели полноценную среду выполнения Python, встроенную в процесс рассуждения. В рамках одной сессии модель может:
- писать Python-код для решения задачи;
- выполнять код в изолированной среде;
- получать точные и детерминированные результаты;
- анализировать возникающие ошибки;
- вносить изменения в код и повторно запускать его до получения корректного результата.
Ключевая особенность инструмента — итеративность. Выполнение кода не является разовым действием: модель может последовательно уточнять логику, исправлять ошибки и усложнять решение, опираясь на результаты предыдущих запусков. Благодаря этому Code Interpreter особенно хорошо подходит для задач, в которых важны проверка гипотез вычислениями, пошаговый анализ, высокая точность и воспроизводимость результатов.
Работа с файлами и данными
Code Interpreter интегрирован с Files API и использует его как основной механизм передачи и хранения файлов.
С помощью инструмента агент может:
- загружать и обрабатывать файлы различных форматов (CSV, JSON, XLSX, TXT и др.);
- создавать в процессе выполнения кода новые файлы — таблицы, датасеты, отчеты, графики и изображения;
- использовать файлы, переданные пользователем во входных данных запроса, как исходные данные для анализа и вычислений.
Все файлы, переданные в запросе через Files API, сохраняются в контейнер и остаются доступны модели на протяжении всего жизненного цикла этого контейнера без необходимости повторной загрузки.
Созданные моделью файлы возвращаются как аннотации, содержащие имя файла и его идентификатор (file_id). Полученный идентификатор может быть использован для скачивания файла через Files API.
Генерация изображений и графиков
Code Interpreter позволяет не только выполнять вычисления, но и визуализировать результаты работы. Инструмент может использоваться для:
- построения различных типов графиков;
- визуализации числовых и категориальных данных;
- наглядного представления промежуточных и финальных результатов;
- сохранения визуализаций в виде файлов изображений.
Результаты работы модели сохраняются в полноценные визуальные артефакты, которые можно скачать и использовать на следующих шагах обработки или отображать в интерфейсе клиента.
Контейнеры
Контейнер — это полностью изолированная виртуальная среда, в которой Code Interpreter выполняет Python-код. Он не имеет доступа к внешним ресурсам и самостоятельно хранит временные данные и состояние выполнения вычислений.
Контейнер можно создать двумя способами:
-
Автоматический режим (Auto) — контейнер создается при вызове Responses API с инструментом Code Interpreter и доступен по адресу
/v1/containers. При создании можно указать список файлов для загрузки.Время жизни — 20 минут после последней активности. При перезапуске вычислений данные предыдущего запроса удаляются.
-
Ручное создание контейнера (Explicit) — контейнер создается заранее через эндпоинт
/v1/containers, после чего его идентификатор (container_id) передается в конфигурации инструмента.Время жизни после последней активности настраивается пользователем через параметр
expire_after, но не может составлять более 20 минут. При перезапуске вычислений данные предыдущего запроса не удаляются.
Данные всех видов контейнеров автоматически выгружаются во внешнее хранилище через Files API. Ссылки на файлы доступны в аннотации container_file_citation.