Подсчет и цена токенов

Тема дорожной карты · Claude от Anthropic

API подсчёта токенов позволяет измерить размер промпта до отправки платного запроса: вызовите POST /v1/messages/count_tokens с тем же телом, что и обычный запрос к Messages API, и получите input_tokens без генерации ответа. В SDK это client.messages.count_tokens(...) (Python) или client.messages.countTokens(...) (TypeScript). Ключевой принцип: подсчёт всегда специфичен для модели, поэтому передавайте тот же идентификатор модели, что и в боевых запросах. Никогда не используйте tiktoken — это токенизатор OpenAI, который занижает счёт токенов Claude на 15–20% и больше, особенно на коде и неанглийском тексте.

Как это работает

Эндпоинт stateless: он принимает model, messages, а также опциональные system и tools, и возвращает точное число входных токенов — включая системный промпт, историю разговора и определения инструментов. Важный нюанс миграции: Opus 4.7+ считает токены иначе, чем Opus 4.6, — один и тот же текст даёт другое (более высокое) число. Поэтому при переходе на новую модель перезамерьте типовые промпты через count_tokens, а не применяйте «универсальный множитель». Экономика на июль 2026 (за 1 млн токенов, ввод/вывод): Fable 5 — $10/$50, Opus 4.8/4.7/4.6 — $5/$25, Sonnet 4.6 — $3/$15, Haiku 4.5 — $1/$5. Чтение из кеша промптов стоит около 0,1× цены ввода, запись — 1,25× (TTL 5 минут) или 2× (TTL 1 час), а Batch API даёт скидку 50%.

Когда применять

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

Типичные ошибки

Худшая ошибка — оценивать токены Claude сторонними токенизаторами вроде tiktoken: систематическое занижение на 15–20%+ ломает и бюджеты, и проверки на переполнение контекста. Вторая — считать токены одной моделью, а запросы слать другой: числа не совпадут. Третья — после перехода на Opus 4.7+ применять к старым замерам общий множитель вместо честного перезамера через count_tokens. Четвёртая — игнорировать экономику кеша и батчей: чтение кеша за ~0,1× цены и 50% скидка Batch API часто снижают счёт сильнее любых ухищрений с промптом; при этом не забывайте, что запись в кеш стоит дороже обычного ввода (1,25× или 2×).

Связанные понятия

Полезные ресурсы

Проверить знания (2)

Загрузка вопросов…