Токены, контекст и память
Три идеи открывают множество моментов «почему оно так сделало?»: токены, окно контекста и память.
Токены: единица, которой мыслят модели
Модели не читают символы или слова — они читают токены, фрагменты текста, примерно в ¾ слова на английском. «Unbelievable» может быть 3–4 токенами; распространённые слова — по одному каждое. И ваш ввод, и вывод модели считаются в токенах, и именно в них измеряются цены и лимиты.
Считать вручную не нужно, но грубое ощущение помогает: ~750 слов ≈ ~1000 токенов. Попробуйте:
Лишь грубая оценка (~символы ÷ 4 или слова × 1.33). Подсчёт токенов зависит от модели — никогда не используйте токенизатор другой модели. Для точных чисел используйте эндпоинт подсчёта токенов от Anthropic.
Окно контекста: рабочая память
Окно контекста — это максимальное число токенов, которое модель может рассматривать одновременно — ваш промпт плюс её ответ плюс весь разговор на данный момент. Думайте о нём как о столе модели: большом, но конечном.
Когда разговор разрастается за пределы окна, самое старое содержимое падает со стола. Вот почему очень длинный чат может казаться «забывающим» то, что вы сказали в начале, или начинать дрейфовать.
:::tip Практические следствия
- Для длинных документов помещайте ключевую инструкцию наверху и повторяйте её в конце.
- Начинайте свежий чат для новой темы вместо того, чтобы тащить за собой гигантскую историю.
- В Claude Code управляйте этим осознанно — см. Управление контекстом. :::
Память: её нет, если вы её не предоставите
По умолчанию каждый разговор — это чистый лист. Модель не помнит ваш прошлый чат. Кажущаяся «память» возникает из одного из:
- Повторной отправки истории — чат-приложения пересылают разговор каждый ход (пока окно не заполнится).
- Явных функций памяти — некоторые поверхности Claude предлагают память между чатами (см. Память между чатами).
- Файлов, которые вы предоставляете — Проекты и CLAUDE.md дают постоянный контекст, который вы контролируете.
- API без состояния — чтобы продолжить разговор, вы сами отправляете предыдущие сообщения обратно (Первый вызов API).
Почему это важно
Почти каждая проблема «оно проигнорировало мою более раннюю инструкцию» или «оно потеряло нить» сводится к заполнению окна контекста или к новой сессии, начатой с нуля. Зная это, вы будете структурировать промпты и сессии так, чтобы держать важное на столе.