Содержание
Короткая функция из пяти строк иногда укладывается в один дешёвый запрос. Перенос модуля в чужом репозитории с тестами, линтером и тремя кругами исправлений уже совсем другой счёт: в контекст уходят правила проекта, найденные файлы, логи и история диалога, а модель вызывается снова и снова. Ниже — практическая модель, как считать стоимость AI-разработки: не только «сколько стоит миллион токенов», а сколько стоит довести задачу до рабочего результата нужного качества.

Ключевые выводы
Токен — единица учёта модели, не единица ценности. Платите за то, что модель прочитала и сгенерировала; ценность появляется, когда изменение принято, проверено и не развалило сборку.
Контекст часто дороже короткого промпта. Системные инструкции, правила, история, файлы и ответы инструментов суммируются во вход; пользовательская фраза из двух предложений может запустить килотонны токенов.
Дешёвая модель не всегда дешевле. Много циклов исправления и ручной доработки легко обгоняют один дорогой, но точный проход.
Кэш и окно контекста — разные вещи. Большое окно даёт возможность; кэш снижает цену повторного префикса; фактически переданные токены решают счёт.
Подписка редактора и API по токенам не взаимозаменяемы. Квоты, кредиты и прямая тарификация живут по разным правилам; не переводите лимит подписки в «эквивалентные» доллары API без оговорок.
Агенту нужна экономика цикла. Считайте сумму всех вызовов модели и прочих операций до критериев готовности, а не один ответ в чате.

Что такое токен и как модель считает текст и код
Токен — кусок представления текста, которым оперирует языковая модель. Он не равен слову, символу или строке кода. Частые слова и фрагменты часто укладываются в один токен; редкие имена, длинные идентификаторы, JSON и трассировка стека разбиваются на несколько. Отступы, скобки и пунктуация тоже входят в счёт. Разные семейства моделей используют разные токенизаторы: один и тот же фрагмент TypeScript в двух API может дать разное число токенов.
Грубая оценка «четыре символа ≈ один токен» иногда работает на простом английском тексте и почти всегда врёт на коде, логах и смешанных языках. Перед отправкой важного запроса считайте токены токенизатором выбранного семейства или счётчиком в документации API. Небольшие учебные контрасты: короткий комментарий на русском; TypeScript-функция с длинными именами; компактный JSON; трассировка стека на два экрана — последний почти всегда «тяжелее», чем кажется глазу.
Какие токены оплачиваются
Входные токены (input) — всё, что модель получает: системные инструкции, ваш запрос, история диалога, переданные файлы и фрагменты репозитория, ответы инструментов, вставленные обратно в контекст. Выходные (output) — видимый ответ: план, объяснение, код, JSON. У части моделей отдельно учитывают токены рассуждения (reasoning): внутренняя работа может тарифицироваться иначе, чем видимый текст, и «весь output = то, что вы прочитали» уже неверно. Кэшированный вход (cached input) — повторяющийся префикс, который API обслуживает по сниженной цене при выполнении условий провайдера; это не «весь контекст бесплатно».
Названия полей в usage, единицы и правила меняются между OpenAI, Anthropic, Google и другими. Перед бюджетом сверяйте официальную страницу тарифов на дату расчёта. Корпоративный контур учёта по проектам и шлюзам разобран в FinOps для шлюза LLM и в бюджетах токенов и разнесении затрат.
Формула стоимости запроса
Общая схема:
стоимость ≈ input × цена_input + output × цена_output + cached_input × цена_cached + прочие операции
Если тариф указан за миллион токенов, переводите количество в миллионы. Вход и выход почти всегда стоят по-разному. В итог задачи входит не один вызов, а серия: уточнения, повтор после красных тестов, второй агентный проход.
Учебный пример (цены вымышленные, не тариф 2026 года). Пусть input = 0,0005 $/1K, output = 0,0015 $/1K, cached input = 0,0001 $/1K. Один вызов: 40 000 input + 10 000 cached + 3 000 output → 40×0,0005 + 10×0,0001 + 3×0,0015 = 0,0255 $. Пять таких циклов исправления без роста кэша — уже около 0,13 $ только на модели, без времени человека.
Добавьте слой человека. Если каждый цикл занимает десять минут ревью, пять циклов — почти час. При внутренней ставке команды даже скромный час легко перекрывает счёт API. Поэтому «сэкономить два предложения в промпте» почти никогда не главный рычаг: важнее сократить число бесполезных кругов и объём шума во входе. Подставляйте числа из своего биллинга и табеля; смысл упражнения — увидеть множители.
Почему контекст — главный скрытый расход

Модель решает по тому, что ей передали. В AI-разработке туда попадают системные инструкции редактора, правила репозитория, история, открытые файлы, результаты поиска по коду, ошибки сборки и выводы инструментов. По мере усложнения задачи контекст растёт; некоторые контуры при каждом шаге снова отправляют большой префикс.
Разведите четыре понятия. Окно контекста — верхний предел, который модель может обработать за вызов. Фактически переданные токены — что ушло в этот запрос. Стоимость контекста — сколько из этого тарифицировали (включая кэш). Качество контекста — насколько данные помогли решить задачу. Большое окно — возможность, не обязанность скармливать монолит. Лишний файл и устаревший лог повышают счёт и иногда ухудшают ответ. Как IDE и агенты собирают контекст под капотом — в разборе AI IDE.
Куда уходят токены в Cursor и похожих редакторах

Типичный цикл (инструменты отличаются деталями, не копируйте это как спецификацию Cursor): вы формулируете задачу → редактор добавляет систему и правила → выбирает файлы или фрагменты → модель планирует → агент читает ещё файлы или вызывает инструменты → результаты возвращаются в контекст → генерируется или правится код → гоняются тесты или линтер → ошибки снова идут в модель → цикл повторяется.
Короткое сообщение пользователя может развернуть большой суммарный контекст. Агент часто делает несколько модельных вызовов на одну «кнопку». Открытый огромный файл и длинная история дорожают шаг. Подписочная квота, внутренние кредиты и прямой API — разные миры оплаты; не смешивайте их в одной таблице без сносок.
Практический приём наблюдения: для одной задачи запишите, сколько раз «думающая» модель вызывалась, какие файлы явно ушли в контекст, были ли прогоны тестов с обратной подачей лога. Даже без полной телеметрии редактора такой дневник за неделю показывает, где команда сжигает бюджет — на исследовании репозитория, на бесконечном фиксе стиля или на генерации больших диффов без критериев. Подробнее про агентные контуры — в агентной инженерии.
Почему одна и та же «фича» стоит по-разному

| Тип задачи | Основной источник расхода | Что обычно снижает счёт |
|---|---|---|
| Простая функция | Короткий вывод | Чёткое ТЗ без лишнего контекста |
| UI-компонент | Требования и соседние файлы | Нужные интерфейсы и примеры, не весь экран |
| Баг по трассировке стека | Логи и повторы | Минимальный воспроизводимый пример |
| Рефакторинг модуля | Несколько файлов | Поэтапная декомпозиция |
| Разбор чужого репозитория | Поиск и чтение | Индекс и релевантные куски |
| Автономный агент | Циклы инструментов | Лимит итераций и критерии стопа |
Чем шире контекст, чем больше вызовов и чем слабее критерии приёмки, тем выше хвост стоимости. Ручная доработка после «почти готово» — тоже часть экономики, даже если биллинг API её не видит.
Кэширование промпта: когда повтор контекста дешевеет

Там, где API поддерживает кэш префикса, повторяющийся стабильный кусок (система, правила, длинная спецификация) может тарифицироваться как cached input. Стабильный префикс полезнее, чем постоянно меняющееся начало: динамика в первых токенах часто ломает попадание в кэш. Кэширование не заменяет сокращение мусора: вы всё равно платите (меньше) и всё равно тратите окно. Минимальный размер, срок жизни (TTL) и структура зависят от провайдера — проверяйте документацию перед тем, как строить на кэше бюджет.
Учебное сравнение (снова вымышленные цены). Один и тот же логический контекст 50 000 токенов: без кэша как обычный input; с кэшем 40 000 cached + 10 000 «свежего» input. При цене cached в несколько раз ниже обычного input разница на серии одинаковых вызовов становится заметной. Цифры берите из своего биллинга.
Окно, история и управление «памятью»
Окно контекста — лимит одного вызова. Долговременная память продукта (заметки, правила, векторный индекс) живёт отдельно и попадает во вход только когда инструмент её подмешивает. На практике держите в истории актуальное и суммируйте закрытые этапы. Правила и архитектурные заметки удобнее вне чата. Передавайте контракты вместо целого модуля, ищите фрагменты вместо чтения репозитория целиком, режьте задачу на этапы и выкидывайте устаревшие логи.
Компромисс честный: слишком агрессивная обрезка рождает пропуски требований и новые циклы — суммарный счёт растёт. Цель — минимум суммарной стоимости до принятого результата, а не самый короткий промпт в логе.
Почему самая дешёвая модель не всегда экономит

Две стратегии. Дешёвая модель с пятью кругами правок и часом вашего ревью. Более дорогая модель, которая чаще закрывает критерии с первого-второго прохода. Сравнивайте: стоимость вызова; стоимость задачи; долю успехов; число повторов; время человека; долю кода, принятого без переписывания. Главная метрика — стоимость успешного результата. Победитель зависит от класса задач, качества инструкций и приёмки; не объявляйте одну модель «лучшей для всего». Сдвиг роли инженера рядом с моделями — в программисте в эпоху ИИ.
Подписка или API: как сравнивать честно

Подписка с квотой, кредиты внутри продукта, оплата API по факту, отдельные лимиты на модели и режимы, корпоративные планы — разные контракты. Сравнивайте месячный факт, число людей, интенсивность, доступ к нужным моделям, правила обновления лимитов, инструменты вокруг, возможность разнести затраты по проектам, цену превышения. Нельзя автоматически сказать: «лимит подписки = N миллионов API-токенов на сумму X». Поставщики считают квоты по-своему. Локальные модели снимают облачный счёт, но переносят цену на железо и эксплуатацию — см. локальные MoE и железо.
Практический эксперимент: одна задача — несколько моделей
Не заполняйте таблицу выдуманными победителями. Используйте её как протокол.
Задача-пример: добавить фильтрацию и сортировку в React-компонент существующего ERP-модуля, не сломав типы, API-контракты и тесты.
- Одна и та же стартовая ревизия проекта.
- Одинаковые критерии готовности.
- Зафиксированы модель, версия, настройки, инструмент.
- Собираются доступные usage и стоимость.
- Считаются вызовы и циклы исправления.
- Одинаковые тесты, линтер, сборка.
- Независимая оценка качества.
- Повтор при нестабильности.
- Раздельно: деньги модели, время стены, ручная доработка.
| Модель и режим | Input | Cached | Output | Вызовы | Стоимость | Тесты | Ручная доработка |
|---|---|---|---|---|---|---|---|
| A | — | — | — | — | — | — | — |
| B | — | — | — | — | — | — | — |
| C | — | — | — | — | — | — | — |
Без такого протокола «у нас Claude дешевле GPT» — анекдот, не измерение.
Экономика агента: цена цикла

Агент многократно вызывает модель и инструменты: поиск, чтение, правки, тесты, разбор логов, снова правки. Модель оценки:
стоимость задачи = сумма стоимости всех модельных вызовов + прочие тарифицируемые операции
Ограничения расхода: лимит итераций; явные критерии завершения; бюджет на задачу; потолок размера логов; только релевантные тесты; стоп при зацикленной ошибке; обязательный отчёт об изменениях. Запуск кода и внешние сервисы могут стоить отдельно от токенов.
Пример мышления бюджетом цикла. Исследование: три вызова поиска и чтения, умеренный input. Реализация: два вызова с генерацией патча. Проверка: один вызов с урезанным логом падающего теста. Итого шесть модельных шагов вместо «агент крутился сорок минут, пока не упёрся в лимит». Если на третьем круге одна и та же ошибка линтера, дешевле остановить агента и поправить правило проекта, чем жечь ещё десять попыток. Инженерия таких контуров — снова агентная практика.
Как снизить расход без потери качества

В запросе фиксируйте результат, критерии готовности, ограничения и известные интерфейсы — без тройного копипаста требований и с минимальным воспроизводимым примером. В проекте держите актуальные правила, короткое описание архитектуры и команд проверки; шум из контекста убирайте, большие изменения режьте на этапы. У агента задайте потолок циклов и стоп по критериям; не кормите гигантскими логами «на всякий случай»; ищите вместо чтения всего; отделяйте исследование от реализации, когда это режет повторы. Модель выбирайте по классу работы: лёгкую на формальные мелочи, сильную на архитектуру и запутанный анализ — и смотрите свои замеры с учётом кэша в тарифе.
Принцип: не экономить токены ценой новых ошибок. Обрезка, которая плодит циклы, дороже щедрого, но точного контекста.
Бюджет команды
Параметры шаблона: число разработчиков; задач в день; среднее число вызовов на задачу; средний input/output; доля cached; тарифы; запас на повторы; прочие инструменты. Грубая оценка:
месяц ≈ число задач × средняя стоимость задачи
Точнее — сумма факта по usage и моделям плюс резерв на тяжёлые агентные хвосты. Смотрите не только среднее: медиана и p95 важны, потому что несколько дорогих задач уносят бюджет. Разнос затрат по командам — снова в материалах про разнесении затрат на токены.
Типичные ошибки оценки
Типичные ловушки: считать токены словами или строками; учитывать только видимый ответ и забывать повторы; путать окно контекста с фактически переданным объёмом; верить, что «всегда уходит весь репозиторий»; считать кэш бесплатным; сравнивать модели только по цене input; ставить знак равенства между подпиской и API; судить по одному удачному прогону; игнорировать тесты и ручную доработку; брать устаревшие прайсы; путать счёт за токены с полной стоимостью разработки.
От токенов к экономике AI-инженерии
Инструменты всё чаще сами управляют контекстом. Выигрыш даёт маршрутизация задач между моделями, кэш и повторное использование артефактов, наблюдаемость затрат на уровне задачи и проекта. Оценка смещается от «цены вызова» к стоимости принятого изменения и сэкономленного времени. Без обещаний «через год всё будет даром»: считайте то, что можете измерить сегодня.
Частые вопросы
Сколько примерно стоит один запрос в IDE?
Короткий ответ: от долей цента до долларов за одну задачу — зависит от контекста и числа циклов, а не от длины вашей фразы.
Смотрите usage и число вызовов агента; сравнивайте задачи одного класса.
Нужно ли всегда включать prompt caching?
Короткий ответ: нет.
Имеет смысл при стабильном большом префиксе и серии похожих вызовов. На одноразовом коротком запросе выигрыш мал.
Почему счёт растёт, хотя я пишу мало?
Короткий ответ: во вход уходят правила, файлы, история и ответы инструментов.
Откройте метрики usage: там обычно видно раздутый input.
Можно ли сравнивать тариф Cursor и прямой API по «цене токена»?
Короткий ответ: только с большими оговорками.
Это разные продукты: квоты, модели, лимиты и упаковка функций не сводятся к одной строке прайса.
Какую метрику поставить на дашборд команды?
Короткий ответ: стоимость успешной задачи и p95 стоимости задачи по классам работ.
Дополнительно — доля принятого кода и время до зелёных проверок.
Что почитать дальше
Заключение
Токены измеряют использование модели. Ценность измеряется принятым, проверенным изменением. Контекст и циклы часто дороже короткого вопроса. Тарифы берите с официальных страниц на дату расчёта; учебные цифры в статье — только для структуры формулы. Модели сравнивайте на одинаковых задачах. Главная метрика — стоимость корректно выполненной работы с учётом проверки и доработки. Экономичная AI-разработка — инженерия контекста, инструментов, выбора модели и приёмки, а не спорт по укорачиванию промпта.
На этой неделе достаточно одного шага: взять одну реальную задачу из бэклога, выписать число вызовов и доступный usage и посчитать стоимость до зелёных тестов — без усреднения «на глаз».



Комментарии