Проблема: Дороговизна промежуточных решений
В традиционных архитектурах AI-агентов каждый шаг рассуждения требует отдельного вызова LLM. Если агенту нужно проверить статус заказа, найти склад, сравнить доставку и проверить политику, это 4-5 раундов взаимодействия с моделью. Каждый раунд добавляет задержку (latency) и стоимость. Часто эти промежуточные решения тривиальны: агент просто выбирает очевидный следующий шаг на основе предыдущего ответа.
Решение: Паттерн Decision-Model-as-a-Tool
Авторы предлагают встроить модель принятия решений (decision model) внутрь одного инструмента. Агент делает только один вызов к инструменту order_specialist(). Внутри этого инструмента цикл работает автономно:
- Модель анализирует контекст и доступные действия.
- Выбирает следующую функцию (API-вызов).
- Получает результат и добавляет его в пул доказательств (evidence).
- Повторяет цикл, пока не соберет достаточно данных или не достигнет состояния
done(готово) илиblocked(невозможно).
В результате основной LLM-агент тратит ресурсы только на понимание запроса клиента и формирование итогового ответа, а рутинные логические шаги делегируются легкой модели.
Техническая реализация на примере
В кейсе используется Decision-1 (запущенная через Azure) и OpenAI Agents SDK. Инструмент order_specialist() скрывает от агента сложность бэкенда. Агенту доступны только 6 базовых функций, но он не видит их напрямую — он видит только один интерфейс.
| Функция | Назначение | Пример использования в цикле |
|---|---|---|
get_order_details() |
Статус, товар, склад, ID отслеживания | Первый шаг: получение базовых данных по ORD-1042 |
get_tracking_events() |
События перевозчика, оценка доставки | Проверка, почему заказ задержан |
get_fulfillment_notes() |
Заметки склада о причинах задержки | Анализ внутренних проблем логистики |
get_alternative_inventory() |
Наличие товара на других складах | Поиск альтернативных вариантов отгрузки |
get_shipping_options() |
Сроки доставки, доплаты, дедлайны | Сравнение скорости и стоимости экспресс-доставки |
get_fulfillment_policy() |
Правила перенаправления, отмена сборов | Проверка возможности бесплатной смены склада |
Почему это важно для индустрии
Использование специализированных моделей для принятия решений (decision models) позволяет обрабатывать рутинные шаги за долю времени и стоимости по сравнению с вызовами больших языковых моделей. Это снижает нагрузку на основную LLM, позволяя ей фокусироваться на сложном рассуждении и генерации ответа, а не на механическом переборе вариантов. Паттерн демонстрирует переход от «агент рассуждает, инструменты выполняют» к «агент делегирует, инструмент управляет шагами».
Источник: Towards Data Science ↗
