Как анализировать файл использования LLM

За каждым счётом LLM стоит файл: экспорт использования, который ваш провайдер вам отдаст, строка за строкой, модель за моделью, день за днём. Большинство людей никогда его не открывают, потому что сырой экспорт — это стена подсчётов токенов без итогов и без вердиктов. Это руководство показывает, где взять этот файл, что в нём на самом деле, и три паттерна, которые стоит искать, когда вы наконец сможете его ясно увидеть, — с помощью анализатора использования LLM на этом сайте, который читает файл в вашем браузере и нигде больше.

Откуда экспортировать использование

Начните там, где провайдер хранит числа. OpenAI предоставляет использование в двух местах: на странице использования консоли провайдера, которая суммирует активность по дням и моделям за текущий расчётный период, и через API использования, который возвращает те же данные как JSON — временные интервалы, каждый из которых содержит результаты по моделям с контекстными токенами, сгенерированными токенами и подсчётами запросов. Эту форму JSON стоит знать, потому что именно её вы можете архивировать, сравнивать и скармливать инструментам без скриншотов. Привычка, которую стоит начать сегодня: тяните ответ API раз в месяц и сохраняйте его. Провайдеры держат в консоли только ограниченное окно истории; ваш собственный архив — единственная полная запись того, что вы на самом деле потратили, месяц за месяцем.

Anthropic предоставляет отчёты об использовании и стоимости через свою консоль и свои API отчётности в том же духе: агрегированные по дням и моделям, экспортируемые как табличные данные. Другие провайдеры различаются отделкой, но не родом — скачивание CSV со страницы использования или биллинга, или конечная точка API, возвращающая датированные строки. Общая форма — всё, что нужно любому анализу: дата, имя модели, входные токены, выходные токены и, если повезёт, кэшированные токены, подсчёты запросов и столбец стоимости. Если ваш провайдер предлагает несколько экспортов, берите самый гранулярный из предлагаемых — ежедневный по моделям бьёт ежемесячный по проектам, потому что агрегацию, которую вы сделали сами, всегда можно отменить, а ту, что сделал провайдер, нельзя.

Что файл на самом деле содержит

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

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

Что искать: три паттерна

Во-первых, доля кэшированных токенов. Делите кэшированный ввод на общий ввод, по моделям. Нагрузки с любой повторяющейся структурой — системный промпт, префикс документа, фиксированная схема инструментов — должны кэшировать большую часть своего ввода, потому что этот префикс идентичен при каждом вызове. Доля, близкая к нулю, при такой нагрузке означает, что кэширование выключено, кэш истекает между вызовами, или что-то в префиксе меняется при каждом запросе — временная метка, случайный id, переупорядоченное поле — и молча его побеждает. Исправление этого одного числа рутинно стоит больше, чем пересмотр модели, потому что кэшированный ввод выставляется по доле полного тарифа у каждого крупного провайдера.

Во-вторых, состав моделей. Сортируйте модели по стоимости, а не по запросам: состав здоров, когда доля стоимости дорогого уровня примерно соответствует доле работы, которой он действительно нужен. Дрейф, за которым стоит наблюдать, — это доля стоимости флагманской модели, растущая месяц за месяцем, в то время как её доля запросов остаётся ровной — более длинные промпты, более длинные выводы, или новый трафик, молча маршрутизируемый к большой модели через умолчание, о настройке которого никто не помнит. В-третьих, концентрация и всплески: один ключ API, проект или модель, доминирующий в файле, — это факт о радиусе поражения в той же мере, что и о стоимости, а дневной всплеск — особенно в выходные или ночью, когда никто не работал, — это подпись цикла повторов, вышедшего из-под контроля агента или используемого утёкшего ключа. Дневная таблица существует, чтобы этот всплеск было невозможно пропустить.

Оценка файла, который не несёт затрат

У многих экспортов вообще нет столбца стоимости, и тогда анализу приходится оценивать сам файл. Анализатор делает это прозрачным способом: каждая строка оценивается по таблице цен LLM на этом сайте — проверенным прейскурантным тарифам, которые также использует калькулятор стоимости, — по собственной формуле провайдера: некэшированный ввод по входному тарифу, кэшированный ввод по тарифу кэша, где он существует, вывод по выходному тарифу. Имена моделей сопоставляются строго: точно, после снятия префикса провайдера, или после снятия завершающего суффикса даты или «latest». Эта строгость и есть суть. Более свободное, нечёткое сопоставление в конце концов оценило бы дообученную модель как её базовую, а превью как релиз, и итог обрёл бы уверенность, которой не заслужил.

Именно поэтому модели, которые ни с чем не совпадают, перечисляются, а не угадываются. Их токены и запросы по-прежнему считаются — вы можете видеть их объём и судить, важен ли пробел, — но их стоимость оставляется пустой, и результат помечается тем, откуда взялись его деньги: из самого файла, вычислено из таблицы, смесь, или никак. Держите любой вычисленный итог по этому стандарту, когда читаете его: это прейскурантная арифметика без знания ваших скидок, кредитов, пакетных тарифов или многоуровневого ценообразования длинного контекста, поэтому она не сойдётся до цента со счётом. Что она надёжно делает — это ранжирует: какие модели, какие дни, какие паттерны доминируют в счёте. В работе со стоимостью ранжирование обычно и есть та часть, что релевантна решению.

Конфиденциальность, и ежемесячная рутина

Файл использования не содержит текста промптов, но он по-прежнему операционно чувствителен: он называет каждую модель, которую вы запускаете, ваши объёмы по дням, вашу кривую роста и ваши расходы — конкурентный и релевантный безопасности отпечаток того, как построена система. Именно поэтому анализатор использования LLM анализирует файл локально в вашем браузере и никогда его не загружает. Общее правило путешествует далеко за пределы этого одного инструмента: чем больше файл суммирует вашу инфраструктуру, тем хуже идея вставлять его в размещённый чат или неизвестный конвертер, даже когда файл не содержит секретов в буквальном смысле. Агрегаты тоже утекают, только тише.

Завершите рутиной, достаточно маленькой, чтобы действительно происходить. Раз в месяц: экспортируйте файл, проанализируйте его и запишите четыре числа — общую стоимость и её источник, долю стоимости топ-модели, долю кэшированных токенов и самый большой отдельный день. Сравните их с четырьмя числами прошлого месяца. Эта пятиминутная разница ловит дрейф, всплеск и побеждённый кэш, пока они ещё дёшевы, и за год строит архив, который никакая консоль провайдера не сохранит за вас. Счета удивляют людей, которые читают только счета. Они редко удивляют людей, которые читают использование.

Часто задаваемые вопросы

Какой экспорт использовать — CSV консоли или JSON API использования?

Любой; они описывают одну и ту же активность. CSV консоли быстрее всего получить, и его достаточно для разового взгляда. JSON API — лучшая привычка: он полон, скриптуем, архивируем и несёт поля токенов по моделям (контекст, сгенерированные, кэш, где присутствует, и подсчёты запросов) в стабильной форме. Если они расходятся, сначала проверьте диапазоны дат и часовые пояса — виды консоли часто показываются по местному времени, в то время как интервалы API — UTC, что сдвигает границу дня и перемещает расходы между соседними днями, не меняя итога.

Моя доля кэшированных токенов близка к нулю. Что ломает кэширование промптов?

Обычные причины, по порядку: кэширование не включено или не предлагается на маршруте, который принимает трафик; разрыв между вызовами превышает срок жизни кэша, поэтому каждая запись истекает до повторного использования; или префикс промпта не является на самом деле идентичным между вызовами — внедрённая временная метка, id на запрос, перемешанный список инструментов или первое сообщение, специфичное для пользователя, — всё это меняет префикс и промахивается мимо кэша. Сравните два сырых запроса побайтно в начале: то, что отличается первым, — это место, где кэш перестаёт совпадать. Исправление — переместить всё переменное после стабильного, общего префикса.

Почему инструмент не оценит цену для некоторых моих моделей?

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