В гайде по миграции для Claude Opus 4.7 написано: новый токенайзер использует «примерно в 1.0–1.35 раза больше токенов», чем 4.6. Я замерил и получил 1.47x на технической документации, и 1.45x на реальном CLAUDE.md-файле.
Цены те же. Квоты те же. Токенов в промпте больше. Max-план сгорает быстрее. Кешированный префикс стоит дороже за каждую итерацию. Рейтлимит наступает раньше.
Значит, Anthropic что-то получили в обмен. Что именно — и стоит ли оно того?
Я провёл два эксперимента: первый измерил стоимость, второй проверил заявленные преимущества. Вот что получилось.
Сколько это стоит?
Для измерения я использовал POST /v1/messages/count_tokens — бесплатный счётчик токенов Anthropic без инференса. Один и тот же контент, обе модели, одно число на каждую. Разница чисто в токенайзере.
Два набора образцов.
-
Первый: семь образцов реального контента, который пользователь Claude Code реально отправляет — CLAUDE.md-файл, пользовательский промпт, пост в блоге, git log, вывод терминала, stack trace, code diff.
-
Второй: двенадцать синтетических образцов разных типов — английская проза, код, структурированные данные, CJK (Chinese, Japanese, Korean), emoji, математические символы — чтобы посмотреть, как соотношение меняется в зависимости от контента.
Основной цикл — три строки Python:
from anthropic import Anthropicclient = Anthropic()for model in ["claude-opus-4-6", "claude-opus-4-7"]: r = client.messages.count_tokens( model=model, messages=[{"role": "user", "content": sample_text}], ) print(f"{model}: {r.input_tokens} tokens")
Реальный контент Claude Code
Семь образцов из реальных файлов, которые пользователь Claude Code действительно отправляет:
|
Тип контента |
символов |
токенов 4.6 |
токенов 4.7 |
коэффициент |
|---|---|---|---|---|
|
CLAUDE.md (реальный файл, 5 КБ) |
5 000 |
1 399 |
2 021 |
1.445 |
|
Пользовательский промпт (типичная задача в Claude Code) |
4 405 |
1 122 |
1 541 |
1.373 |
|
Отрывок из поста в блоге (Markdown) |
5 000 |
1 209 |
1 654 |
1.368 |
|
Git commit log |
2 853 |
910 |
1 223 |
1.344 |
|
Вывод терминала (запуск pytest) |
2 210 |
652 |
842 |
1.291 |
|
Python stack trace |
5 255 |
1 736 |
2 170 |
1.250 |
|
Code diff |
4 540 |
1 226 |
1 486 |
1.212 |
Взвешенный ratio по всем семи образцам: 1.325x (8 254 → 10 937 токенов).
Базовые показатели по типам контента (12 синтетических образцов)
|
Тип контента |
символов |
4.6 |
4.7 |
ratio |
|---|---|---|---|---|
|
Техническая документация (английский) |
2 541 |
478 |
704 |
1.47 |
|
Shell script |
2 632 |
1 033 |
1 436 |
1.39 |
|
TypeScript код |
4 418 |
1 208 |
1 640 |
1.36 |
|
Испанская проза |
2 529 |
733 |
986 |
1.35 |
|
Markdown с блоками кода |
2 378 |
604 |
812 |
1.34 |
|
Python код |
3 182 |
864 |
1 112 |
1.29 |
|
Английская проза |
2 202 |
508 |
611 |
1.20 |
|
JSON (dense) |
48 067 |
13 939 |
15 706 |
1.13 |
|
Определения инструментов (JSON Schema) |
2 521 |
738 |
826 |
1.12 |
|
CSV (числовые данные) |
9 546 |
5 044 |
5 414 |
1.07 |
|
Японская проза |
993 |
856 |
866 |
1.01 |
|
Китайская проза |
750 |
779 |
789 |
1.01 |
Взвешенный ratio для английского и кода: 1.345x. CJK (Chinese, Japanese, Korean): 1.01x в обоих случаях.
Если статья понравится — приглашаю в канал AI for Devs. Каждый день публикую похожие материалы: модели, агенты, практические кейсы и новости из мира AI.
Что изменилось в токенайзере
Из данных видно три паттерна.
CJK, emoji и символы сдвинулись на 1.005–1.07x. Если бы словарь был полностью новым, сдвиг был бы равномерным. Этого не произошло — значит, не-латинская часть словаря изменилась меньше.
Английский и код сдвинулись на 1.20–1.47x на естественном контенте. Это согласуется с тем, что в 4.7 используются более короткие или менее частые sub-word merges для распространённых паттернов в английском и коде.
Код пострадал сильнее, чем уникальная проза (1.29–1.39x против 1.20x). В коде больше повторяющихся высокочастотных строк — ключевые слова, импорты, идентификаторы — именно те паттерны, которые BPE, обученный на коде, сворачивает в длинные merges.
Символов на токен в английском упало с 4.33 до 3.60. В TypeScript — с 3.66 до 2.69. Словарь представляет тот же текст более мелкими кусками.
Это гипотеза, не доказательство. Подсчёт токенов не говорит о том, какие конкретно записи в проприетарном словаре Anthropic изменились.
Зачем выпускать токенайзер, который использует больше токенов
Из гайда по миграции от Anthropic: «более буквальное следование инструкциям, особенно на низких уровнях effort. Модель не будет молча обобщать инструкцию с одного элемента на другой.»
Меньшие токены заставляют attention работать над отдельными словами. Это задокументированный механизм для более точного следования инструкциям, задач на уровне символов и точности вызовов инструментов. Партнёры (Notion, Warp, Factory) сообщают о меньшем количестве ошибок в инструментах на длинных сессиях.
Токенайзер — один из возможных факторов. Веса и пост-обучение тоже изменились. Подсчёт токенов не позволяет их разделить.
Действительно ли 4.7 лучше следует инструкциям
Цену мы выяснили. Теперь вопрос: что Anthropic получили взамен?
Их заявление — «более буквальное следование инструкциям». Правдоподобно, но данные по токенам это не доказывают. Я провёл прямой тест.
IFEval (Zhou et al., Google, 2023) — бенчмарк из промптов с верифицируемыми ограничениями: «ответь ровно N слов», «включи слово X дважды», «без запятых», «всё заглавными». У каждого ограничения есть Python-грейдер. Бинарный pass/fail.
IFEval содержит 541 промпт. Я взял 20 с фиксированным seed, прогнал через обе модели и оценил с помощью официального чекера IFEval.
|
Метрика |
4.6 |
4.7 |
Delta |
|---|---|---|---|
|
Strict, prompt-level (все прошли) |
17/20 (85%) |
18/20 (90%) |
+5pp |
|
Strict, instruction-level |
25/29 (86%) |
26/29 (90%) |
+4pp |
|
Loose, prompt-level |
18/20 (90%) |
18/20 (90%) |
0 |
|
Loose, instruction-level |
26/29 (90%) |
26/29 (90%) |
0 |
Небольшое, но направленно согласованное улучшение на strict instruction following. Loose-оценка не изменилась. Обе модели уже следуют инструкциям на высоком уровне — разрыв в strict-режиме объясняется тем, что 4.6 иногда спотыкается на точном форматировании там, где 4.7 справляется.
Материально изменился только один тип инструкций: change_case:english_capital (0/1 → 1/1). Всё остальное — ничья. Промпт, который реально разделил модели — цепочка из четырёх ограничений, где 4.6 провалила одно, а 4.7 прошла все четыре.
Несколько оговорок.
N=20, тогда как в IFEval всего 541 промпт. Выборки хватает, чтобы увидеть направление, но не оценить размер эффекта. Delta +5pp при такой выборке совместима с чем угодно — от нулевой разницы до реального улучшения на +10pp.
Это суммарный эффект перехода с 4.6 на 4.7. Токенайзер, веса и пост-обучение — всё изменилось. Выделить вклад конкретно токенайзера невозможно.
По одной генерации на промпт. Несколько запусков на промпт давали бы более точную оценку.
Итог: 4.7 следует строгим инструкциям на несколько процентных пунктов лучше на этой выборке. Эффект небольшой, выборка маленькая. Не «драматическое улучшение» из цитат партнёров в анонсе — по крайней мере, не на этом бенчмарке.
Дополнительные токены принесли +5pp на strict instruction following. Немного, но как есть.
Математика для одной сессии Claude Code
Представьте длинную сессию Claude Code — 80 итераций туда-обратно на отладку или рефакторинг.
Контекст каждой итерации:
-
Статический префикс: 2K CLAUDE.md + 4K определений инструментов = 6K токенов, одинаковых каждую итерацию
-
История разговора: растёт примерно на 2K за итерацию (500-токенное сообщение пользователя + 1500-токенный ответ), к итерации №80 мы получим ~160K токенов
-
Пользовательский ввод: ~500 свежих токенов за итерацию
-
Вывод: ~1500 токенов за итерацию
-
Cache hit rate: ~95% (типично в пределах 5-минутного TTL)
Одно уточнение: средний кешированный префикс за 80 итераций — ~86K токенов, а не 6K. Статические 6K — это мелочь; история разговора в среднем по всем итерациям (0 на первой, 160K на восьмидесятой, среднее ~80K) — вот что реально влияет на стоимость. Большая часть cache-read приходится на поздние итерации с разросшейся историей, поэтому ~86K — это то, что фактически тарифицируется за итерацию.
Стоимость сессии 4.6
|
Статья |
Расчёт |
Стоимость |
|---|---|---|
|
Итерация №1, cache-write |
8K × $6.25/MTok |
$0.05 |
|
Итерации 2–80, cache reads |
79 × 86K × $0.50/MTok |
$3.40 |
|
Свежий ввод |
79 × 500 × $5/MTok |
$0.20 |
|
Вывод |
80 × 1 500 × $25/MTok |
$3.00 |
|
Итого |
|
~$6.65 |
Cache reads доминируют в стоимости ввода. Вывод доминирует в общей стоимости.
Стоимость сессии 4.7
Каждый токен в префиксе масштабируется по ratio своего типа:
-
CLAUDE.md: 1.445x → 2K становится 2.9K
-
Определения инструментов: 1.12x → 4K становится 4.5K
-
История разговора (в основном английский и код): 1.325x → 160K становится 212K к ходу 80, среднее ~106K за сессию
-
Пользовательский ввод: 1.325x → 500 становится ~660
Средний кешированный префикс в 4.7: ~115K токенов (против 86K). Токены вывода — открытый вопрос: примерно столько же, что и в 4.6, или до ~30% больше, если новый дефолт xhigh в Claude Code генерирует больше thinking-токенов.
|
Статья |
Расчёт |
Стоимость |
|---|---|---|
|
Ход 1, cache-write |
10K × $6.25/MTok |
$0.06 |
|
Ходы 2–80, cache reads |
79 × 115K × $0.50/MTok |
$4.54 |
|
Свежий ввод |
79 × 660 × $5/MTok |
$0.26 |
|
Вывод |
80 × 1 500–1 950 × $25/MTok |
$3.00–$3.90 |
|
Итого |
|
~$7.86–$8.76 |
Разница
~$6.65 → ~$7.86–$8.76. Примерно на 20–30% больше за сессию.
Цена за токен не изменилась. Стоимость сессии изменилась — потому что та же сессия включает в себя больше токенов.
Для пользователей Max-плана, которые упираются в рейтлимиты, а не в доллары: 5-часовое окно заканчивается раньше примерно в том же соотношении на англоязычном контенте. Сессия, которая на 4.6 укладывалась в окно, на 4.7 может не уложиться.
Как это влияет на prompt cache
Prompt caching — архитектура, на которой работает Claude Code.
Для тех, кто не знаком с тем, как устроен Prompt Caching крайне рекомендую следующую статью: Prompt Caching: токены LLM в 10 раз дешевле — но за счёт чего?
Изменение токенайзера затрагивает кеширование в трёх местах.
-
Первая сессия на 4.7 стартует без кеша. Prompt cache Anthropic разделён по моделям — переход с 4.6 на 4.7 сбрасывает все кешированные префиксы, как при переключении между Opus и Sonnet. Токенайзер тут ни при чём, но он делает холодный старт дороже: префикс, который вы пишете в новый кеш, на 1.3–1.45x больше, чем аналогичный в 4.6.
-
Объём кеша растёт пропорционально. На 1.445x больше токенов в CLAUDE.md — значит, cache-write платится один раз за 1.445x больше токенов, и cache-read каждой следующей итерации — тоже. Механизм не поменялся, просто стал дороже.
-
Одна и та же сессия — разные числа в логах. Если вы перезапустите сессию с 4.6 на 4.7, количество токенов в логах изменится. Если биллинг или мониторинг завязаны на исторические подсчёты токенов, в день переключения model ID будет скачок.
Контраргументы
«Ввод — в основном cache reads. Изменение стоимости за токен минимально.»
Справедливо. В сессии, которая укладывается в 5-минутный TTL, 96% ввода — это cache reads по $0.50/MTok, уже со скидкой 90% от номинала. Ratio 1.325x на кешированной части — меньший долларовый эффект, чем на свежем вводе.
Но Max-планы считают все токены в рамках рейтлимитов, а не долларов. И несколько паттернов попадают в некешированную территорию: первая сессия после истечения TTL, каждый cache-bust (редактирование CLAUDE.md, изменение списка инструментов, смена модели), каждое событие компакции, перезаписывающее префикс. На этих ходах вы платите полный ratio при cache-write. Устойчивое состояние — светлая точка. Края стали шумнее.
«Anthropic задокументировали 1.0–1.35x как диапазон, а не жёсткий потолок.»
Согласен. Реальный взвешенный ratio (1.325x) попадает в верхнюю часть их диапазона. Отдельные типы файлов его превышают — CLAUDE.md на 1.445x, техническая документация на 1.473x. Это и есть полезный вывод: верхняя граница документированного диапазона — это норма для большинства контента в Claude Code, а не верхняя граница. Планируйте с расчётом на верхний диапазон, не на среднее.
Токены на английском и в коде стали дороже в 1.3–1.45x. За это Anthropic получили +5pp на strict instruction following. Цена за токен та же. Стоимость сессии — нет.
Стоит ли оно того? Зависит от того, что вы делаете. Вы платите примерно на 20–30% больше за сессию ради небольшого, но реального улучшения того, насколько буквально модель следует вашему промпту.
Русскоязычное сообщество про AI в разработке

Друзья! Перевод этой статьи подготовила команда ТГК «AI for Devs» — канала, где мы рассказываем про AI-агентов, плагины для IDE, делимся практическими кейсами и свежими новостями из мира ИИ. Подписывайтесь, чтобы быть в курсе и ничего не упустить!
ссылка на оригинал статьи https://habr.com/ru/articles/1024958/