
Amazon подробно описала, как реализовать Programmatic Tool Calling (PTC) на платформе Bedrock и предложила три конкретных варианта внедрения: контейнерную Docker‑песочницу в Amazon ECS, управляемый AgentCore Code Interpreter и прокси‑путь для совместимости с Anthropic SDK. Это важно потому, что PTC уменьшает задержки и расход токенов, переводя тяжёлую логику и агрегацию данных из контекста модели в изолированное исполнение кода.
Суть PTC-модель один раз генерирует фрагмент Python‑кода, содержащий циклы, условия, параллельные вызовы и логику агрегации; этот код исполняется в песочнице, которая обращается к внешним API и функциям, а в контекст модели возвращается только итоговый результат. Авторы подчёркивают, что паттерн по природе модель‑агностичен и особенно полезен для задач с большими объёмами данных, требовательных вычислений, многошаговой оркестрации и сценариев с повышенными требованиями приватности.
Авторы контрастируют PTC с традиционным подходом последовательных вызовов инструментов на примере аудита расходов: модель запрашивает список из 20 сотрудников, затем делает 20 последовательных запросов расходов (по 50 — 100 строк на запрос), получая свыше 2 000 записей в контекст и затем фильтруя их в естественном языке. По мнению авторов, такой поток работы приводит к трём ключевым проблемам — избыточному потреблению токенов, накоплению задержки из‑за последовательных инференсов и высокой вероятности ошибок при обработке больших табличных объёмов средствами НЛП.
PTC решает эти проблемы тем, что модель генерирует исполняемый код, который в песочнице параллельно собирает данные и выполняет фильтрацию и агрегацию локально. В примере показан подход с использованием asyncio.gather для параллельных вызовов и последующей фильтрации расходов по категориям и порогам бюджета: модель вызывается один раз для генерации кода, среда исполнения возвращает уже готовый список сотрудников с превышением лимита.
На Bedrock авторы предлагают три реализации с разными компромиссами. Первый — собственная Docker‑песочница в Amazon ECS, дающая максимальный контроль над окружением и зависимостями; второй — управляемый AgentCore Code Interpreter, который снижает операционные издержки; третий — прокси, обеспечивающий совместимость с Anthropic SDK для команд, ориентированных на этот инструментарий. Во всех трёх вариантах сохраняется базовая идея: код генерируется моделью, исполняется в изоляции, в контекст возвращается только финал.
Для инженеров и архитекторов это означает практический выбор между гибкостью и контролем безопасности (собственный контейнер), простотой эксплуатации (управляемый интерпретатор) и лёгкой интеграцией с существующими SDK (Anthropic‑совместимый прокси). В результате применение PTC на Bedrock обещает снизить задержки и затраты токенов, повысить точность агрегирования данных и упростить обработку приватной информации без помещения сырых данных в контекст модели.
Источники
Ответы (0)
Пока нет ответов в этой теме.