
Я разрабатываю Datarim, фреймворк для конвейеров AI-агентов и автоматизаций, и два дня назад добавил в стек DeepSeek как третью модель рядом с Claude и Kimi K2.6. Один думает, второй пишет, третий читает и обобщает.
Да, я знаю: после объединения Anthropic и SpaceX лимиты в Claude подняли, упереться в недельный потолок стало сложнее. Но экономика токенов никуда не делась. Бюджет на чтение длинных журналов или генерацию шаблонного кода не должен расходоваться по тарифу reasoning-модели, даже при щедрых лимитах. Уменьшение стоимости вызова остаётся одной из главных задач при проектировании архитектуры с большими языковыми моделями.
За два дня живого использования через конвейер Datarim DeepSeek уже взял на себя разовые чтения и обобщения; Kimi K2.6 остался на длинных задачах генерации. Медианная задержка ответа у DeepSeek: 49 секунд, у Kimi K2.6: 160. Окно наблюдения короткое, выводы предварительные. Но первый замер на идентичном промпте чтения дал DeepSeek $0.00083 за вызов и 1549 мс против $0.00636 и 6217 мс у Kimi K2.6. Разница 7.7× по стоимости и 4× по задержке при сопоставимом качестве вывода. Этот замер и стал триггером для статьи: смешивание задач разных классов в одной модели не вкусовщина, а арифметическая ошибка.
Класс задачи определяет класс модели
Три класса задач устроены принципиально по-разному с точки зрения экономики токенов.
Первый класс: рассуждение и оркестрация. Компромиссы между архитектурными решениями, отладка состояний гонки, планирование с зависимостями. Здесь нужна модель, которая удерживает контекст принятия решений и выдаёт компактный, но точный результат. Стоимость входных токенов вторична: их немного, зато выходные критичны по качеству.
Второй класс: структурированная генерация. Длинные артефакты с предсказуемой формой: спецификации, код, документация. Входные токены немногочисленны (задание, схема, контекст), выходные достигают нескольких тысяч с высокими требованиями к консистентности. Цена выходных токенов доминирует в счёте.
Третий класс: массовый ввод-вывод. Чтение больших корпусов, обобщение, ингестия данных. Вход огромный, выход компактный. Стоимость входных токенов здесь главный фактор счёта.
Стек в агентах Арканада строится по этой логике. Claude закрывает рассуждение и оркестрацию. Kimi K2.6 берёт структурированную генерацию за премиум-тариф на выходных токенах. DeepSeek (chat и v4-flash) берёт массовый ввод-вывод и арбитраж по стоимости с окном контекста 1M токенов против ~262K у Kimi K2.6.
FrugalGPT (Stanford, 2023) формально обосновывает эту логику: каскадное использование больших языковых моделей по классам задач снижает стоимость без потери качества. На практике подтверждается: на промпте чтения DeepSeek дал сопоставимый вывод за 7.7× меньшие деньги и в 4× быстрее. Тарифы задокументированы на странице DeepSeek API Pricing.
Ключевое архитектурное следствие: решение о маршрутизации принимается по классу задачи до запроса к модели, а не по факту дорогого счёта после. Это маршрутизация, встроенная в операционную логику стека, а не ретроспективный аудит.
В Datarim это реализовано через профили: каждый класс задачи имеет рекомендуемого провайдера в конфиге. Профиль code (разовые запросы, чтение, массовое обобщение) и social (короткие тексты) идут на DeepSeek. Профиль write (длинные структурированные артефакты, генерируемые конвейером) остаётся на Kimi K2.6, где премиум-качество вывода окупает свой тариф. Явный выбор провайдера всегда побеждает дефолт профиля.
Бюджеты токенов с явной иерархией приоритетов
Единый глобальный лимит не работает, когда несколько моделей используются параллельно. Чтение нормально потребляет тысячи входных токенов за вызов; запись генерирует тысячи выходных. Один потолок на всё либо душит массовое чтение там, где это разрушает качество ингестии, либо жжёт бюджет генерации там, где достаточно краткого ответа.
Рабочая схема: раздельные бюджеты с явной иерархией переопределений. Флаг командной строки перекрывает переменную окружения, та перекрывает совместимый запасной вариант. Один флаг поднимает лимит для конкретного эксперимента, не трогая дефолтное поведение.
Anthropic prompt caching добавляет инструмент снижения стоимости для повторных чтений: при повторном запросе того же документа или системного промпта попадание в кеш снижает цену. Разница тарифа на кеш показательна: DeepSeek $0.0028 за 1M токенов, Moonshot $0.16 за 1M. 57× сохраняется и на кеше.
Делегация по умолчанию: запрет, а не вопрос
Защитное правило для делегирования массовых операций существует в трёх режимах, и два из них не работают на практике.
ask — модель запрашивает разрешение перед массовым чтением. Поток прерывается, оператор становится узким местом в ночных или автономных сценариях.
allow — делегация разрешена, но остаётся опциональной. На практике модель выбирает путь наименьшего сопротивления и делает вызов к reasoning-модели, не переходя к более дешёвой альтернативе.
deny с указанием причины — единственный режим с детерминированным поведением. Правило блокирует вызов к reasoning-модели для массовых задач и возвращает причину отказа. Повтор идёт через делегата. Сообщение-причина становится сигналом: паттерн «такой класс задачи → такая модель» закрепляется в рабочем контексте.
Правила должны блокировать, а не спрашивать. OpenRouter публикует тарифы по всем моделям. Разница в цене между моделями одного назначения достигает порядка и выше, достаточный аргумент, чтобы маршрутизация была принудительной.
Громкий сбой, а не молчаливый
Reasoning-модели с режимом размышления (Anthropic extended thinking, DeepSeek R1) тратят бюджет ответа на цепочку рассуждений до того, как выдают видимый вывод. При низком max_tokens результат неочевиден: модель не упала с ошибкой, но вернула пустой ответ. Бюджет ответа ушёл в скрытую цепочку рассуждений, видимый вывод: ноль токенов.
Предварительное наблюдение по DeepSeek: на задачах генерации с тонким бюджетом ответа модель в первом замере вернула 2 выходных токена: технически успешный вызов, практически пустой ответ. Митигация прямая: для генерации использовать варианты flash без режима размышления либо закладывать 2–3× запаса к ожидаемому выводу.
Реальная задержка на двухдневном корпусе живых вызовов отличается от синтетического всплеска. Пробный замер дал 1.5 секунды, но медиана на живых вызовах: 49 секунд, на крупных выводах (2000–5000 токенов): до 78. Пропускная способность DeepSeek ниже, чем у Kimi K2.6, где медиана на задачах генерации 160 секунд из-за ещё большего вывода. Маленький синтетический промпт даёт оптимистичный замер; единичное измерение не заменяет наблюдение в живой среде.
Любой молчаливый сбой должен падать громко: пустой вывод, обрезанный ответ, вход сверх контекста, отсутствие ключа доступа.
Нужно наблюдать полученный файл, а не PID процесс
Длительные генерации (массовое обобщение, большие задачи записи) выполняются в фоне. Отслеживать их завершение через PID — это гонка: родительский процесс мог упасть и перезапуститься, дочерний живёт, PID переиспользован, результат ложный.
Надёжнее опрашивать выходной файл. Задача завершена тогда и только тогда, когда файл материализовался. Вызывающий процесс может упасть и подняться заново без потери прогресса. Жизненный цикл задачи и жизненный цикл процесса разделены.
Claude Code — хороший пример долгоживущих агентных сессий, где сигнал завершения через артефакт надёжнее состояния процесса: файл либо есть, либо нет.
Цена токена как параметр стека
Цена за 1M входных и выходных токенов, размер окна контекста, тариф на кеш — такие же конструктивные параметры стека, как RPS и p99 задержки. Игнорировать их не аскетизм и не «преждевременная оптимизация», это инженерная небрежность. Стек, в котором каждый класс задачи попадает на свою модель, — не оптимизация поверх работающей системы, а обязательное требование при проектировании архитектуры.
Сухой остаток
Замер на идентичном промпте чтения:
- Стоимость вызова: 7.7× дешевле — $0.00083 на DeepSeek против $0.00636 на Kimi K2.6.
- Задержка: 4× быстрее — 1549 мс против 6217 мс.
Картина за два дня живого использования через конвейер Datarim (медианы):
- DeepSeek deepseek-chat — медианная задержка 49 секунд на разовых запросах с компактным выводом; стоимость вызова копеечная.
- Moonshot Kimi K2.6 — медианная задержка 160 секунд на длинных задачах генерации с большим выводом.
- DeepSeek используется при явном выборе профиля
code/social; дефолтный профильwriteконвейера остаётся на Kimi K2.6.
Опорные тарифы за 1M токенов:
- DeepSeek v4-flash — $0.14 входных / $0.28 выходных, кеш $0.0028 за 1M, окно контекста 1M токенов.
- Kimi K2.6 — $0.95 входных / $4.00 выходных, кеш $0.16 за 1M, окно контекста ~262K.
- Выходные токены премиум-модели в 29× дороже — достаточный аргумент, чтобы не отправлять туда массовое чтение. Кеш на DeepSeek в 57× дешевле, разница сохраняется на любом сценарии повторного чтения.
Маршрутизация по классу задачи превращает эти числа из результата замера в стандартное поведение стека. По мере того как профильная маршрутизация будет уводить разовые чтения на DeepSeek, его доля по числу вызовов вырастет, а по сумме упадёт: разовые чтения копеечные.