← Все статьи

Токеномика AI-разработки: сколько на самом деле стоит программирование с помощью LLM

Практический разбор стоимости токенов в AI-программировании: input/output, контекст, кэширование, агентные циклы, Cursor и API, измерение цены работающего кода — не только тарифа за миллион токенов.

Абстрактная иллюстрация экономики токенов: потоки данных и весы кода против светящихся кубиков на тёмном фоне
Содержание

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

Экономика 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 её не видит.

Кэширование промпта: когда повтор контекста дешевеет

Промах кэша против попадания: 50K свежего ввода или 40K кэшированных плюс 10K свежих при стабильном префиксе.

Там, где API поддерживает кэш префикса, повторяющийся стабильный кусок (система, правила, длинная спецификация) может тарифицироваться как cached input. Стабильный префикс полезнее, чем постоянно меняющееся начало: динамика в первых токенах часто ломает попадание в кэш. Кэширование не заменяет сокращение мусора: вы всё равно платите (меньше) и всё равно тратите окно. Минимальный размер, срок жизни (TTL) и структура зависят от провайдера — проверяйте документацию перед тем, как строить на кэше бюджет.

Учебное сравнение (снова вымышленные цены). Один и тот же логический контекст 50 000 токенов: без кэша как обычный input; с кэшем 40 000 cached + 10 000 «свежего» input. При цене cached в несколько раз ниже обычного input разница на серии одинаковых вызовов становится заметной. Цифры берите из своего биллинга.

Окно, история и управление «памятью»

Окно контекста — лимит одного вызова. Долговременная память продукта (заметки, правила, векторный индекс) живёт отдельно и попадает во вход только когда инструмент её подмешивает. На практике держите в истории актуальное и суммируйте закрытые этапы. Правила и архитектурные заметки удобнее вне чата. Передавайте контракты вместо целого модуля, ищите фрагменты вместо чтения репозитория целиком, режьте задачу на этапы и выкидывайте устаревшие логи.

Компромисс честный: слишком агрессивная обрезка рождает пропуски требований и новые циклы — суммарный счёт растёт. Цель — минимум суммарной стоимости до принятого результата, а не самый короткий промпт в логе.

Почему самая дешёвая модель не всегда экономит

Дешёвая модель с циклами правок и часом ревью против более дорогой с быстрой приёмкой.

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

Подписка или API: как сравнивать честно

Подписка с квотами и лимитами против API с оплатой по факту — разные финансовые инструменты.

Подписка с квотой, кредиты внутри продукта, оплата API по факту, отдельные лимиты на модели и режимы, корпоративные планы — разные контракты. Сравнивайте месячный факт, число людей, интенсивность, доступ к нужным моделям, правила обновления лимитов, инструменты вокруг, возможность разнести затраты по проектам, цену превышения. Нельзя автоматически сказать: «лимит подписки = N миллионов API-токенов на сумму X». Поставщики считают квоты по-своему. Локальные модели снимают облачный счёт, но переносят цену на железо и эксплуатацию — см. локальные MoE и железо.

Практический эксперимент: одна задача — несколько моделей

Не заполняйте таблицу выдуманными победителями. Используйте её как протокол.

Задача-пример: добавить фильтрацию и сортировку в React-компонент существующего ERP-модуля, не сломав типы, API-контракты и тесты.

  1. Одна и та же стартовая ревизия проекта.
  2. Одинаковые критерии готовности.
  3. Зафиксированы модель, версия, настройки, инструмент.
  4. Собираются доступные usage и стоимость.
  5. Считаются вызовы и циклы исправления.
  6. Одинаковые тесты, линтер, сборка.
  7. Независимая оценка качества.
  8. Повтор при нестабильности.
  9. Раздельно: деньги модели, время стены, ручная доработка.
Модель и режим 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 и посчитать стоимость до зелёных тестов — без усреднения «на глаз».

Комментарии

Загрузка комментариев…