Контекстное окно (context window) — это объём токенов, который модель может обработать в одном обращении. Проще говоря, это предел того, сколько текста и других токенизированных данных модель способна «удержать в поле внимания» при генерации ответа; при этом практический доступный объём под вход часто меньше номинального, потому что часть бюджета уходит на вывод и служебный контекст.
Английский термин: context window. Также встречается: окно контекста, длина контекста. В документации рядом с ним часто публикуются отдельные поля для лимитов ввода и вывода, например inputTokenLimit, outputTokenLimit или max output tokens.
Простыми словами
Можно представить контекстное окно как рабочий стол. Пока на стол помещаются инструкция, история переписки, фрагменты документа и ваш текущий вопрос, модель видит их одновременно и отвечает с опорой на весь набор. Если данных слишком много, часть придётся убрать, сократить или подавать по частям.
Это именно аналогия, а не техническое описание. На практике модель работает не со словами, а с токенами, поэтому «помещается» или «не помещается» определяется не количеством страниц, а результатом токенизации.
Как это работает
Современные LLM построены на архитектуре трансформера, описанной в работе Attention Is All You Need. Трансформер обрабатывает последовательность токенов и сопоставляет элементы через механизм attention, поэтому длина последовательности имеет прикладной лимит, который провайдер публикует в API и карточках моделей как контекстное окно.
Системные инструкции
+ история сообщений
+ документы или фрагменты базы знаний
+ текущий запрос
= входные токены
входные токены + токены ответа + практический запас
<= лимит модели
- Текст сначала разбивается на токены. У OpenAI для оценки токенизации используется BPE-токенизатор
tiktoken. - Провайдер задаёт лимиты модели. В документации Gemini контекстное окно прямо определяется как совокупный лимит входных и выходных токенов.
- Во время запроса модель работает в рамках этого бюджета. Если вы хотите длинный ответ, под него нужно оставить часть окна.
- Если бюджет превышен, запрос надо сокращать, резать на части или менять схему работы.
Здесь важно не смешивать маркетинговое число и реальный usable budget. По состоянию на 2026-08-16 разные провайдеры публикуют лимиты по-разному: Gemini предлагает проверять текущие значения программно через client.models.get(...) и поля input_token_limit/output_token_limit, а OpenAI в карточках моделей отдельно показывает размер окна и предел вывода.
Практический вывод редакции: ориентируйтесь не на старые скриншоты и не на общий обзор, а на живые поля лимитов в официальной документации или endpoint модели. Эта статья фиксирует состояние на 2026-08-16; точные окна, алиасы, доступность и ограничения вывода меняются.
Актуальные ориентиры на 2026-08-16
| Провайдер / модель | Контекстное окно | Лимит вывода | Что важно |
|---|---|---|---|
| OpenAI GPT-5.6 Sol | 1,050,000 токенов | 128,000 токенов | Алиас gpt-5.6 направляется на GPT-5.6 Sol |
| OpenAI GPT-5.6 Terra / Luna | 1.05M токенов | 128K токенов | Текущие значения опубликованы на странице моделей |
| OpenAI GPT-4 | 8,192 токена | — | Полезная историческая точка сравнения |
| Anthropic Claude Fable 5 / Opus 5 / Sonnet 5 | 1M токенов | проверяйте по текущей странице модели | Доступность зависит от платформы и способа развёртывания |
| Anthropic Claude Haiku 4.5 | 200k токенов | проверяйте по текущей странице модели | Меньшее окно, чем у старших моделей |
| Gemini | многие модели имеют 1M+ токенов | смотрите live-метаданные модели | Точные inputTokenLimit и outputTokenLimit надо запрашивать у API |
Для Gemini документация по long context отдельно указывает, что многие модели имеют окно в 1 миллион токенов и более, а changelog фиксирует появление окна в 2M для Gemini 1.5 Pro в мае 2024 года и его GA-релиз в июне 2024 года. Для Anthropic release notes показывают, что большие окна могут долго идти от beta к GA, поэтому опираться на давний пост без перепроверки рискованно.
Где применяется
- Проектирование запросов в API. Если вы работаете через API в контексте ИИ-сервисов, контекстное окно определяет, сколько истории чата, инструкций и вложенных документов можно отправить за один вызов.
- Работа с длинными документами. Когда весь документ не помещается в одно окно, его режут на части или строят извлечение по запросу. На практике это тесно связано с подходами вроде контекстного извлечения (Contextual Retrieval).
- Разграничение обучения и инференса. Контекстное окно — это не то же самое, что настройка модели в процессе обучения. Его полезно отличать от инструкционного обучения (Instruction Tuning), где меняются веса модели, а не бюджет токенов в запросе.
- Выбор модели под задачу. Даже внутри одного класса систем на базе машинного обучения (ML) разница в окне контекста меняет архитектуру продукта: где-то хватит одной передачи запроса, а где-то придётся строить многошаговый пайплайн.
Практический пример
Самый безопасный сценарий — не угадывать лимиты по памяти, а проверять их перед внедрением. Для Gemini официальный путь такой: получить метаданные модели и прочитать поля лимитов, затем отдельно посчитать токены входа.
# Концептуальный фрагмент по официальной документации Gemini
model = client.models.get(...)
input_limit = model.input_token_limit
output_limit = model.output_token_limit
# Дальше вы:
# 1) считаете токены входа,
# 2) оставляете запас под ответ,
# 3) сравниваете итог с лимитом модели.
Практический сценарий выглядит так:
- Берёте точный идентификатор модели из текущей документации провайдера.
- Читаете опубликованное окно контекста и предел вывода.
- Считаете токены входа тем способом, который рекомендует провайдер; для OpenAI полезен
tiktokenкак BPE-токенизатор. - Если вы работаете с Gemini, дополнительно сверяете live-значения через
models.get, а не полагаетесь на пример из старой статьи. - Если данные не помещаются, не «дожимаете» запрос, а переходите к дроблению контента, извлечению релевантных фрагментов или смене модели.
Это намеренно консервативный подход. Он лучше соответствует текущей практике, чем попытка вывести лимит из названия модели или из чужого бенчмарка.
Чем отличается от…
| Термин | Что это | Чем отличается от контекстного окна |
|---|---|---|
| Токен (token) | Единица текста после токенизации | Контекстное окно измеряется в токенах, но не равно одному токену; это общий бюджет, а не его минимальная единица |
| Max output tokens | Предел длины генерируемого ответа | Это не всё окно. У OpenAI он публикуется отдельно от context window, а у Gemini вывод входит в совокупный бюджет окна |
| Long context | Класс моделей или режимов с особенно большим окном | Это не отдельный механизм токенизации, а характеристика размера окна, например 1M+ токенов у части Gemini-моделей |
Если упростить: токены — это «единицы счёта», контекстное окно — «общий бюджет», а max output tokens — «верхняя граница ответа». Из-за этой разницы путаница в документации возникает чаще всего.
Ограничения и заблуждения
- Заблуждение: «контекстное окно = доступный объём входа». На практике часть бюджета нужно оставить под ответ, а иногда и под служебные элементы запроса.
- Заблуждение: «1 токен = 1 слово». Это неверно. Токенизатор BPE делит текст на более мелкие фрагменты, поэтому количество токенов нельзя надёжно оценивать «на глаз» по словам.
- Заблуждение: «если где-то написано 1M, так будет везде». Нет. Доступность и лимиты зависят от конкретной модели, платформы и даты проверки. Anthropic прямо различает развёртывания по разным платформам, а Gemini рекомендует читать живые метаданные модели.
- Заблуждение: «достаточно знать рекламное число». Для внедрения важнее четыре вещи: как именно провайдер определяет окно, какой у модели лимит вывода, как считать токены и менялся ли алиас модели.
Редакционное ограничение: в этой статье не приводятся универсальные «безопасные» числа запаса под системные инструкции или tools, потому что такие значения зависят от конкретного API-вызова и меняются вместе с документацией провайдера.
Связанные термины и инструменты
- API в контексте ИИ-сервисов — чтобы понять, где именно проверять лимиты модели.
- Контекстное извлечение (Contextual Retrieval) — когда документ не помещается в одно окно.
- Инструкционное обучение (Instruction Tuning) — чтобы не путать обучение модели с ограничениями инференса.
- Машинное обучение (ML) — базовый контекст для понимания того, где LLM находятся в общей картине.
Источники
- Understand and count tokens | Gemini API | Google AI for Developers
- Models | Gemini API | Google AI for Developers
- Long context | Gemini API | Google AI for Developers
- Release notes | Gemini API | Google AI for Developers
- Models | OpenAI API
- GPT-5.6 Sol Model | OpenAI API
- GPT-4 Model | OpenAI API
- Models overview – Claude API Docs
- Claude Platform release notes – Claude Platform Docs
- GitHub – openai/tiktoken
- GitHub – googleapis/python-genai
- Attention Is All You Need
Вопросы и ответы
Что входит в контекстное окно?
В него входят токены, которые модель должна обработать в рамках одного обращения. В документации Gemini это прямо описано как совокупный лимит входных и выходных токенов; у других провайдеров лимит вывода может публиковаться отдельным полем.
Контекстное окно и лимит вывода — это одно и то же?
Нет. Лимит вывода ограничивает длину ответа, а контекстное окно задаёт общий бюджет токенов, с которым работает модель. Поэтому длинный ответ уменьшает доступный бюджет под вход.
Как проверить актуальный размер окна у модели?
Надёжнее всего смотреть официальный model card или запрашивать метаданные модели через официальный API. Для Gemini документация рекомендует использовать models.get и читать поля inputTokenLimit/outputTokenLimit.
Можно ли отправить во вход весь заявленный миллион токенов?
Не всегда. Практически вам почти всегда нужно оставить запас под ответ, а иногда и под служебные части запроса. Поэтому usable input budget обычно меньше номинального числа из карточки модели.
Почему старые статьи про контекстное окно быстро устаревают?
Потому что провайдеры меняют модели, алиасы, доступность по платформам и сами лимиты. Именно поэтому для рабочих решений лучше опираться на текущую документацию, а не на вторичный пересказ.