🍔Думаю многие замечали, что условный курсор ест токены невероятно быстро и приходится докупать новую "порцию". Разберёмся, почему так происходит.
Сначала: что вообще такое токены
🗝 Токены = не символы и не слова. Это кусочки текста, на которые модель разбивает всё, что ты пишешь.
Примерно:
- 1 токен ≈ 4 символа на английском
- 1 токен ≈ 0.75 слова
- 1000 токенов ≈ 750 слов
👀Но важно: токены считаются для всего текста, который видит модель.
Это включает:
- твой вопрос к нейронке
- сам ответ модели
- весь предыдущий контекст
- общие системные инструкции
- код
🤹То есть это не "токены на ответ". Это токены на всё "общение".
Как Cursor или Claude тратит токены
Когда ты пишешь, например:
"Расскажи как тут устроены миграции в этом файле"
Cursor на самом деле отправляет модели намного больше данных:
- твой вопрос
- весь файл (иногда несколько файлов)
- соседние файлы
- историю диалога
- системный промпт
💯В итоге вместо 10 токенов уходить 10к+.
Добавилось 2000 токенов кода, 3000 токенов истории диалога и только 10 токенов твоего текста.
⚡Почему токены заканчиваются ОЧЕНЬ быстро
📈1. История диалога растёт
Каждое новое сообщение отправляется вместе со всей предыдущей перепиской.
Диалог на 50 сообщений занимает десятки тысяч токенов.
🤖2. Cursor автоматически добавляет код
Cursor может отправлять:
- текущий файл
- связанные файлы
- импорты
- контекст проекта
Даже если ты этого не видишь.
💀3. Большие файлы = главный убийца токенов
Файл на 1000 строк = примерно 5 000–15 000 токенов.
Пара таких запросов и лимит закончился.
В итоге ты платишь токены не за сообщение.
Ты платишь токены за весь контекст, который получает модель.
И в IDE этот контекст может быть в 100–1000 раз больше твоего вопроса.