Учебник
Что такое 1M Token? Контекстное окно GPT, Claude и Gemini в 2026
«Миллион Token» — не синоним более умного чата. Это бюджет, который модель видит за один запрос. Больший бюджет вмещает репозиторий, справочник или длинную запись. Потолок вывода, тарифные ступени и реальный recall вместе с заявленной цифрой сами не растут.
В 2026 почти на каждой карточке флагмана написано 1M Token. Маркетинг говорит: «проглотите целую книгу» или «закиньте весь репозиторий». На разборе вариантов застревают на других цифрах: сколько стоит этот вызов, не обрежется ли ответ, помнит ли модель середину на 400K. Здесь 1M Token — инженерный предел: ёмкость контекстного окна, а не аттестат понимания. После текста вы сможете прикинуть, сколько Token занимают ваши материалы, сравнить GPT, Claude и Gemini по окну, выводу и надбавкам и решить, какой JSON идёт в окно, а какой сначала проверить в браузере.
Что значит 1M Token: сначала единица измерения
Token — минимальная единица, в которой модель читает, пишет и выставляет счёт за текст. Это не буква и не слово. Обычное английское слово часто чуть больше одного Token; кириллица, китайский, код, ключи JSON, Base64 и отступы считаются по-разному. Один и тот же файл OpenAPI даёт разное число у разных вендоров и версий tokenizer. Поэтому «1M Token» — прежде всего сколько ячеек эта модель разрешает на этом запросе, а не «миллион русских букв» и не «миллион английских слов».
| Масштаб окна | Интуиция по порядку величины (не обещание) |
|---|---|
| 1 Token | английское слово ≈ 0.7–1 Token; кириллица часто 1–2 буквы; код и JSON дробятся сильнее |
| 8K–32K | длинная статья, заметка по API, короткий диалог |
| 128K–200K | большая доля книги или средний репозиторий плюс несколько ходов агента |
| 1M (около 1.00–1.05 млн) | толстый справочник + многофайловый репозиторий + длинная история; у новых tokenizer Claude в тот же 1M обычно влезает меньше сырого текста |
Контекстное окно — общий бюджет на вход + выход + reasoning/thinking Token (если их считают отдельно). Системный промпт, Schema инструментов, найденные фрагменты, история чата и генерируемый ответ черпают из одного колодца. Окно на 1M не значит, что можно загрузить репозиторий на 1M Token и затем выдать отчёт на 128K — вывод тоже занимает окно, и у каждого вендора есть отдельный max output.
1M лучше мыслить как объём диска: ячейки есть; случайный доступ к странице посередине не одинаково надёжен. Найти иголку в стоге сена — не то же самое, что многошаговое рассуждение, сверка файлов или заметить пропущенное поле в длинном JSON. Сначала спросите «что должно быть видно одновременно», потом — «какую устойчивую форму нужно получить».
Для чего сверхдлинное контекстное окно на самом деле
Прыжок со 128K на 1M меняет нужно ли по-прежнему резать на чанки заранее. То, что раньше требовало поиска или саммари, теперь можно отдать одним пакетом. Задачи, которые реально окупаются, обычно такие:
- Целый репозиторий или большая его часть: пройти цепочку вызовов по файлам, сравнить две реализации, увидеть интерфейс и фикстуры в одном запросе.
- Длинные документы и договоры: регламенты, аудиторские рабочие бумаги, PDF с несколькими вложениями. Вопросу нужны оба конца текста, а не одно попадание по ключевому слову.
- Большие мультимодальные пакеты: API класса Gemini считают текст, изображения, аудио, видео и PDF в одном окне. Часы аудио или длинное видео больше не обязательно резать заранее.
- Длинные трассы агента: определения инструментов, много tool result и неудачные ретраи остаются в окне, чтобы следующий шаг видел полное наблюдение. Сам цикл — см.
- Сверка и извлечение: две версии OpenAPI, два экспортных JSON и одна Schema в одном запросе — чтение уровня Diff, затем структурированные дельты через Structured Output.
У этих задач общее свойство: ответ зависит от того, что несколько артефактов видны сразу. Если задача — «найти одну фразу на ста тысячах страниц», поиск обычно дешевле и стабильнее. Окно на 1M уменьшает плохие границы нарезки; информационную архитектуру оно не отменяет.
Переоценённый приём: вставить в промпт полные логи сайта, сырой дамп базы или необезличенный production JSON. Окно большое — вместе с ним растут поверхность утечки и счёт. В окно должно попасть только то, что вы уже решили выпустить с машины. Секреты сотрите локально, кривой JSON почините — и только потом говорите про «скормить за один раз».
Номинальное окно ≠ эффективное: вход, выход, цена
1M на карточке продукта — потолок приёма: превысите — запрос отвергнут или обрезан. Это не «качество на 1M равно качеству на 8K». В оценках вроде RULER эффективная длина часто около половины заявленной; в проде сверка файлов обычно плывёт после 200K–500K, а инструкции из середины промпта забываются. Заявленное окно считайте жёсткой крышей. Эффективное окно — ваш собственный регрессионный набор.
Вторая забытая цифра — max output. GPT-5.6 Sol / Terra и флагманы Claude на синхронном запросе дают около 128K. У Gemini 3.1 Pro в документах 65,536, а дефолтный maxOutputTokens часто ниже — не поднимите явно, и ответ тихо обрежется. «Прочитать справочник и написать спецификацию той же длины» может влезть в окно и всё равно упереться в потолок вывода. Бюджет ниже считает вывод и запас полноправными статьями, а не остатком после набивки:
{
"window": 1050000,
"budget": {
"system": 2400,
"tools": 1800,
"repoPack": 420000,
"docs": 180000,
"history": 80000,
"reservedOutput": 128000,
"headroom": 238800
},
"rule": "never fill to the sticker; reserve output plus 20 percent headroom"
}
Третья цифра — деньги. OpenAI пишет: для GPT-5.6 Sol / Terra, как только вход превышает примерно 272K Token, весь запрос тарифицируется как 2× вход и 1.5× выход. У Gemini на длинном контексте обычно другая ступень надбавки (в документах границу часто ставят выше 128K или 200K — сверяйте живой прайс). Документация Claude Sonnet 5 подаёт 1M как окно по умолчанию по стандартному тарифу, без отдельного переключателя «включить длинный контекст» — но более дробный tokenizer превращает тот же текст в большее число Token, так что эффективная цена всё равно растёт. Prompt cache спасает повторяющиеся префиксы; пакет, который меняется на каждый вызов, он не спасает.
Сравнение 2026: GPT, Claude, Gemini
Таблица ниже собрана по открытым карточкам моделей сентября 2026 для флагманских линейек. Все снимки в одну ячейку не запихиваем. Цифры плывут; побеждают живые документы. Оси, на которых выбор реально расходится: окно, вывод, надбавка и модальность.
| Параметр | GPT-5.6 Sol / Terra | Claude Sonnet 5 / Opus 5 | Gemini 3.1 Pro |
|---|---|---|---|
| Контекстное окно | 1,050,000 | 1,000,000 (Haiku 4.5 остаётся на 200K) | 1,048,576 |
| Max output | 128,000 | 128,000 (есть более высокий тариф Batch) | 65,536 (дефолты часто ниже) |
| Тариф за длинный контекст | Вход >272K: весь запрос 2× вход / 1.5× выход | Документы: 1M по умолчанию, отдельной ступени надбавки нет; новый tokenizer дробнее | Частая надбавка выше 128K или 200K — сверяйте официальный прайс |
| Модальности входа | Текст, изображение | Текст, изображение (PDF через возможности платформы) | Текст, изображение, аудио, видео, PDF |
| Оговорки в семействе | У Luna около 400K — не считайте alias тем же объёмом | Тот же 1M после смены tokenizer вмещает меньше сырого текста; пересчитайте | Самый широкий мультимодальный вход; потолок вывода ниже — сначала заложите генерацию |
| Лучше подходит | Длинные отчёты, цепочки Responses, задачи с выводом на 128K | Рассуждение по длинным документам, циклы агента, стабильность «прочитал — ответил» | Репозиторий + аудио/видео/PDF за один заход; короткий ответ или ответ по Schema |
Читайте карточки моделей, а не только чужие сводные таблицы. У OpenAI GPT-5.6 Sol указаны окно 1,050,000, вывод 128K и линия надбавки 272K. У Anthropic обзор Claude Sonnet 5 1M / 128K считаются значением по умолчанию. У Google Gemini 3.1 Pro Preview указаны 1,048,576 на входе и 65,536 на выходе. Цены и имена снимков меняются; код интеграции должен читать поля usage, а не константы прошлого года.
Выбирайте по узкому месту. Если нужно выдать почти 100K Token миграционной записки или длинного JSON-массива, потолок вывода важнее окна — у флагманов GPT и Claude он шире. Если один запрос должен прослушать запись встречи и одновременно видеть дизайн-дек и репозиторий, модальности Gemini — настоящая разница, не прилагательное. Если внутри 1M будете делать многошаговые правки и нельзя терять инструкции из середины, не верьте заявленной цифре — меряйте эффективный recall своим набором «три иголки, два противоречия», а не одним демо со стогом сена.
Все трое умеют вызов инструментов и Structured Output; поля-обёртки разные, и JSON всё равно проверяют локально. Как у Gemini разделены «просто JSON» и «поля по Schema», см. учебник JSON в Gemini API — SDK здесь не повторяем.
Когда набивать окно, когда искать
Окно на 1M не отменяет RAG. Оно отодвигает границу нарезки. Четырёх правил достаточно:
- Ответ должен видеть A и B вместе (две спецификации, вызывающий и вызываемый, Schema и экземпляр) → лучше одно окно. Не сводите каждую сторону к отдельному саммари.
- Ответ — «найти короткий фрагмент в огромном корпусе» → сначала поиск, затем попадание плюс метаданные. Не платите надбавку после 272K, чтобы обойти поисковый конвейер.
- Пакет меняется на каждый запрос (новый Diff, новый экспорт) → длинный контекст дорог. Отделите кэшируемые префиксы (системный промпт, список инструментов, стабильный мануал) от изменчивого пакета.
- Материал не должен покидать браузер (секреты, пользовательские поля из продакшена) → большее окно — не повод загружать. Почистите, проверьте и снимите выборку локально, затем решите, увидит ли облачная модель.
Циклы агента забивают окно быстро: каждый tool result остаётся. Сжимайте старые наблюдения до maxSteps; не считайте 1M бесконечным логом. Как устроен цикл: Что такое AI Agent.
Даже выбрав «весь пакет», упакуйте его. Не тратьте 1M на node_modules и минифицированные бандлы. Явный context pack можно аудировать; «перетащить репозиторий» — нет:
{
"pack": "context",
"files": [
{ "path": "openapi.json", "tokens": 12000, "role": "contract" },
{ "path": "schema.ticket.json", "tokens": 400, "role": "outputShape" },
{ "path": "fixture.valid.json", "tokens": 800, "role": "example" }
],
"omit": ["node_modules", "*.lock", "generated/**", "minified bundles"]
}
outputShape в пакете должен быть той Schema, которую вы реально распарсите — не ключами, которые модель придумает. Как закрепить форму: AI Structured Output.
JSON в длинном контексте: сначала локальная проверка
Длинное окно увеличивает радиус поражения плохого входа. Обрезанный экспорт, квитанция инструмента с распухшими extra-полями, две Schema с одним именем и разным смыслом — после 400K Token глазами вы их не найдёте. Модель продолжит писать из сломанного JSON, а счёт всё равно придёт. До загрузки зафиксируйте три шага:
- Parse: каждый файл, который войдёт в окно, — настоящий JSON / JSON5, а не лог, который «похож на JSON», и не обрезанный экспорт.
- Schema: проверьте по контракту, который модель должна соблюдать. Если файлов несколько, убедитесь, что у них всё ещё один источник истины.
- Diff: сравните старые и новые фикстуры, arguments модели и downstream body или две версии OpenAPI локально — и только потом спрашивайте модель «почему» или «как поменять».
Это можно сделать в браузере, ничего не загружая: Форматирование JSON — parse и структура; Валидатор JSON Schema — поля и перечисления; JSON Diff — два артефакта, которые разделят окно. Файлы, не прошедшие проверку, в pack не входят.
Длинный JSON от модели всё ещё может быть синтаксически сломан или поплыть по форме — см. гайд по ошибкам JSON от ИИ. Arguments инструмента и финальный ответ — два контракта. Общий бюджет окна — не то же самое, что проверка.
Частые вопросы FAQ
1M Token — это миллион русских букв?
Нет. Token — фрагменты tokenizer. Кириллица, английский, код, JSON, изображения и аудио считаются по-разному; смена tokenizer у вендора тоже меняет, сколько текста влезает в тот же 1M. Считайте материалы через tokenizer API этой модели. Не подменяйте это формулой «страницы × эмпирический коэффициент».
Если у всех окно 1M, вендор ещё важен?
Да. Потолок вывода, надбавки за длинный контекст, модальности и эффективный recall расходятся. Линия цены GPT-5.6 на 272K, более низкий потолок вывода у Gemini и более дробный tokenizer Claude превращают «один и тот же 1M» в разные счета и разные точки обрезки. Меряйте на своём регрессионном наборе, а не только по заявленному окну.
Нужен ли RAG, если есть окно на 1M?
Нужен. 1M — для пакета, который должен быть виден вместе. Когда корпус намного больше окна или каждый раз релевантен короткий фрагмент, поиск дешевле, проще контролировать доступ и проще обновлять. Многие боевые системы сначала отбирают кандидатов поиском, затем читают их в длинном окне — не «или–или».
Почему модель всё равно теряет поля, если я вставил весь JSON-репозиторий?
Окно делает вещи видимыми. Оно не заставляет модель говорить по контракту. Пропущенные ключи, дрейф типов и markdown-ограждения — проблемы формы: используйте Structured Output / Schema и проверяйте ещё раз локально. Если материал посередине размывается, падает и эффективный recall. В окно должен попадать только валидный, однородный, уже прогнанный через Diff JSON.
Итог и следующие шаги
1M Token — общий масштаб флагманов 2026: один запрос может увидеть сразу около миллиона Token. Целый репозиторий, целый справочник или мультимодальный пакет становятся возможны. Это само по себе не значит более сильное рассуждение, более длинный вывод или более низкую цену за единицу. GPT, Claude и Gemini расходятся по потолку вывода, линиям надбавки и модальностям — не по одной галочке «есть 1M».
Дальше: посчитайте справочник и репозиторий официальным tokenizer; заложите вывод и запас по бюджету выше; сверьте пороги надбавки на трёх карточках моделей. JSON, который войдёт в окно, сначала прогоните через parse, Schema и Diff в JSONVue. Как закрепить форму — Structured Output. Как раскладывать сбои — гайд по ошибкам JSON.