Контекстное окно в нейросетях: что это и почему важно не только его размер

Контекстное окно — это вся память модели на один запрос: промпт, история, файлы и ответ. Объясняем, как его считать и во что обходится длинный контекст.

5 мин · · модели · экономия

Вопрос «что такое контекстное окно в нейросетях» появляется, когда модель вдруг «забывает» начало разговора или API возвращает ошибку про превышение длины. Коротко: это максимум токенов, которые модель обрабатывает за один запрос, причём считается всё вместе: и то, что вы отправили, и то, что она ответила. Ниже разбираем, из чего складывается окно, какие размеры бывают у моделей на 18 октября 2026 и почему размер окна напрямую влияет на цену.

Что входит в контекст

Модель не помнит прошлые запросы. Каждый вызов API независим, а «память» чата создаёт клиент: он заново отправляет всю историю. В контекстное окно одного запроса входят:

  • системный промпт с ролью и правилами;
  • вся история диалога: ваши сообщения и ответы модели;
  • вложения: вставленные файлы, текст документов, результаты поиска, изображения (они тоже превращаются в токены);
  • описания инструментов (tools), если вы используете вызов функций;
  • ответ модели: его токены тоже занимают окно, поэтому параметр max_tokens нужно учитывать.

Единица измерения — токен, а не слово или символ. Русский текст обычно занимает больше токенов, чем английский той же длины, поэтому окно «на миллион» вмещает меньше русских слов, чем английских. Общий разбор токенов — в материале что такое токены в нейросетях.

Контекстное окно LLM у моделей Zukko

Размеры окон в каталоге на 18 октября 2026:

ОкноМодели
1M токеновлинейки Claude (Opus 5.5, Sonnet 5.5, Fable 5.1 и другие), GPT-6 и GPT-5.6, Gemini 3.8 и 3.7 Flash, Qwen 3.8, DeepSeek V4
256KGrok 4.7, 4.6, 4.5
128KGLM 5.3 и GLM 5.3 Flash

Если вас интересует, у какой нейросети самое большое контекстное окно, то в нашем каталоге это 1M токенов, и такой размер у большинства моделей, так что по этому признаку выбрать почти нечего. Различаются они ценой и индексом силы, поэтому выбирайте по ним и по своей задаче. Актуальный размер окна каждой модели проверяйте через GET https://api.zukko.pro/v1/models или на странице «Модели» в кабинете.

Почему важно не только размер окна

Большое окно — это потолок, а не гарантия. Три практических момента:

  1. Вы платите за каждый токен контекста при каждом запросе. Чат на 200 000 токенов истории стоит каждый раз как отправка этих 200 000 токенов заново.
  2. Длинный контекст не гарантирует, что модель одинаково хорошо использует все его части. Это нужно проверять на своих данных: положите важный факт в начало, середину и конец и посмотрите, находит ли его модель.
  3. Окно можно переполнить. Тогда вы получите ошибку; как её разобрать, написано в статье про context_length_exceeded.

Сколько стоит заполненное окно

Цена запроса растёт вместе с контекстом. Один запрос с полностью заполненным окном, только вход (формула: размер окна × цена входа / 1 000 000, цены на 18 октября 2026):

МодельОкноЦена входа за 1MОдин запрос
claude-sonnet-5-51M$0.41 000 000 × 0.4 / 1M = $0.40
gpt-6.1-sol1M$0.27$0.27
deepseek-v4.1-flash1M$0.013$0.013
grok-4.7256K$0.175256 000 × 0.175 / 1M = $0.0448
glm-5.3-flash128K$0.04128 000 × 0.04 / 1M = $0.00512

Теперь диалог. Допустим, у вас документ на 200 000 токенов, и вы задаёте по нему 10 вопросов подряд, получая по 1000 токенов ответа. Упрощение: документ остаётся единственным крупным куском контекста, рост истории мы не учитываем. Модель claude-sonnet-5-5, вход 0.4, выход 2:

  • Без кэша: вход 10 × 200 000 × 0.4 / 1M = $0.80, выход 10 × 1000 × 2 / 1M = $0.02, итого $0.82.
  • С кэшем в Anthropic-формате: первый запрос записывает документ в кэш (цена записи 0.5): 200 000 × 0.5 / 1M = $0.10. Остальные девять читают его из кэша (0.05): 9 × 200 000 × 0.05 / 1M = $0.09. Выход те же $0.02. Итого 0.10 + 0.09 + 0.02 = $0.21.

Кэш у Claude работает со скидкой на чтение, если вы ходите в формате /v1/messages (Claude Code и Anthropic SDK). В OpenAI-формате /v1/chat/completions для Claude весь вход идёт по цене входа. У GPT-моделей чтение кэша видно в обоих форматах. Подробности — на странице про лимиты ключей и кэш.

Как посчитать контекст до запроса

Токены можно узнать заранее, не тратя деньги на ответ. Метод count_tokens не запускает генерацию (см. справку):

bash
import anthropic

client = anthropic.Anthropic(
    base_url="https://api.zukko.pro",
    api_key="fetch_ваш_ключ",
)
MODEL = "claude-sonnet-5-5"

history = [{"role": "user", "content": open("report.txt", encoding="utf-8").read()}]
n = client.messages.count_tokens(model=MODEL, messages=history).input_tokens
print("токенов во входе:", n)

Адрес для Anthropic SDK пишется без /v1, а ключ fetch_... для примеров создаётся в кабинете. Тот же вызов через curl:

bash
curl https://api.zukko.pro/v1/messages/count_tokens \
  -H "x-api-key: $ZUKKO_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model":"claude-sonnet-5-5","messages":[{"role":"user","content":"Привет"}]}'

Что делать, когда контекст растёт

Несколько приёмов, которые работают с любой моделью:

  • Обрезайте историю по бюджету. Храните системный промпт и последние сообщения, старое выбрасывайте или сворачивайте в краткое резюме.
  • Не отправляйте весь файл, если нужен кусок. Выберите нужные разделы или используйте поиск по базе знаний (RAG), который подставляет в запрос только подходящие фрагменты.
  • Ставьте повторяющийся большой блок в начало запроса. Кэш срабатывает на неизменном префиксе.
  • Ограничивайте max_tokens, чтобы ответ не занимал окно и не удорожал вызов.

Простейшая обрезка по бюджету:

bash
def trim(messages, budget):
    # убираем самые старые пары «вопрос-ответ», пока вход не влезет в бюджет
    while len(messages) > 2:
        used = client.messages.count_tokens(model=MODEL, messages=messages).input_tokens
        if used <= budget:
            break
        messages = messages[2:]
    return messages

Пары удаляются по две записи, чтобы роли продолжали чередоваться и первой оставалась реплика пользователя.

Частые вопросы

Что такое контекстное окно простыми словами?

Это объём текста в токенах, который модель видит за один запрос. Всё, что в него не поместилось, для неё не существует. Сюда входят и ваш запрос с историей, и ответ.

У какой нейросети самое большое контекстное окно?

Среди моделей Zukko на 18 октября 2026 максимальное окно у большинства — 1M токенов. У Grok 256K, у GLM 128K. Проверяйте актуальные значения в GET /v1/models.

Забывает ли модель начало разговора?

Если вся история помещается в окно и вы отправляете её целиком, модель её видит. «Забывание» чаще связано с тем, что клиент обрезает историю. Насколько хорошо модель использует факты из разных частей длинного текста, проверьте на своих данных.

Дорого ли пользоваться большим контекстом?

Вы платите за токены, которые реально отправили, а не за размер окна. Но длинная история отправляется при каждом запросе, поэтому используйте кэш в Anthropic-формате и обрезайте лишнее.

zukko

Платите в 25×
меньше

за Claude Code & ChatGPT

Один ключ fetch_* и base URL api.zukko.pro — в Cursor, Claude Code, Codex и любом SDK.