Сразу к делу: к сентябрю 2026 года GPT-5.5, Claude Opus 4.8 / Sonnet 4.6 и Gemini 3.7 Flash все рекламируют окно примерно в миллион токенов. «1M токенов» — это не «миллион китайских иероглифов», и заполнить окно — не значит уметь им пользоваться. Рекламные лимиты близки. Эффективный поиск, максимальный вывод и ценовые ступени — нет. Если вы работаете с JSON, правильный ход: обрезать, проверить, затем решить, сколько класть — а не вставлять весь дамп целиком.
Статья написана по состоянию на 5 сентября 2026 года. Цифры — по публичной документации: API OpenAI gpt-5.5 — около 1,050,000 токенов суммарно и 128K вывода; у Anthropic Opus 4.8 / Sonnet 4.6 — 1M по умолчанию и 128K вывода без надбавки за длинный контекст; у Google gemini-3.7-flash — 1,048,576 ввода / 65,536 вывода. Продуктовые поверхности (ChatGPT, Codex, claude.ai) часто уже. Не принимайте маркетинговую страницу за лимит API.
Что значит 1M токенов
Токен — наименьший фрагмент, который модель считает и тарифицирует, — не символ и не слово. В английском примерно 1 токен ≈ 0.75 слова, или около 4 символов. В китайском один токен часто покрывает 1–2 иероглифа, в зависимости от токенизатора и пунктуации. JSON дороже: скобки, кавычки, повторяющиеся ключи и отступы — всё расходует бюджет.
1M токенов = контекстное окно примерно в миллион токенов. Грубая оценка: ~750,000 английских слов, или ~500,000–800,000 китайских иероглифов, или одна толстая книга до нескольких средних, или репозиторий среднего размера плюс документация. Это не «роман на миллион знаков» и не «миллион строк кода». Один и тот же 1M вмещает очень разный объём сигнала в прозе, таблицах и сжатом JSON.
Контекстное окно — общий бюджет одного запроса: системный промпт + история + определения инструментов + результаты инструментов + вывод этого хода. Модели класса GPT-5 также считают токены reasoning. Ввод на 900K токенов плюс высокое усилие рассуждения упрётся в context_length_exceeded раньше, чем модель «дочитает». Бюджет уже исчерпан.
| Формулировка | Что это значит на самом деле | Частая ошибка |
|---|---|---|
| 1M токенов | Потолок ~1,000,000 токенов на ввод + вывод (и reasoning у некоторых моделей) | Модель прочитает миллион символов или миллион строк |
| Контекстное окно | Общий бюджет одного запроса | Память на весь аккаунт или автоматическое вспоминание всех прошлых проектов |
| Макс. вывод | Сколько токенов этот ход может сгенерировать | Равно самому окну (~64K вывода у Gemini далеко ниже 1M) |
| Эффективный контекст | Длина, на которой многоигольный поиск и рассуждение по длинным документам остаются стабильными | Равно цифре на странице цен |
В 2023 году мейнстрим был 4K–32K. В 2024 Gemini 1.5 сделал 1M заголовком. К 2025 году 200K стал стандартом среднего уровня. На сентябрь 2026 года флагманские API выровняли рекламную цифру на 1M. Гонка уже не «кто длиннее», а кто всё ещё находит иголки после 200K и чей кэш достаточно дёшев для ежедневной работы.
Зачем нужно длинное окно контекста
Длинное окно решает задачу увидеть много материалов в одном выводе. Оно не заменяет базу данных и не является бесплатной бесконечной памятью. Задачи ниже при 128K обычно требуют нарезки или RAG. При 1M иногда можно превратить «сначала найти, потом спросить» в «сначала загрузить, потом спросить» — если то, что вы загружаете, уже отфильтровано.
- Целый репозиторий / многофайловое кодирование: держите связанные модули, тесты и определения интерфейсов в одном ходе, чтобы модель реже «не видела» файл. Узкое место агентного кодирования по-прежнему в циклах инструментов и фидбеке тестов, а не в рекламе окна — мы писали об этом в Gemini 3.8 Flash и AI coding.
- Ревью длинных документов: контракты, отчётность, спецификации, несколько PDF рядом. Подходит для «найдите конфликт между §47 и приложением B». Плохо для «вставьте год почты и попросите саммари».
- Длинный мультимодальный ввод: Gemini считает видео, аудио, изображения и текст в одном окне. Час видео сжигает токены быстро. 1M — это квота, а не приглашение загружать без сжатия.
- Многошаговые агенты: JSON инструментов, стеки ошибок и последний патч могут какое-то время оставаться в треде. Большее окно — не повод снова заливать сырые стеки — см. поток данных Agent JSON.
- Выравнивание большого JSON: OpenAPI / JSON Schema, образцы payload и продакшен-логи ошибок в одном ходе. Это то применение 1M, которое большинству читателей этого сайта важнее всего, и самый лёгкий способ пробить счёт.
- Пропустить один слой RAG: когда корпус стабилен, ограничен и каждый раз нужны дословные цитаты, загрузить целиком может быть проще, чем векторное хранилище. Когда корпус меняется каждый день или запросы повторяются, поиск по-прежнему дешевле и свежее.
Обратное: чат, одноклассовая классификация, короткая JSON-экстракция. Окно 1M — это растрата. Задержка, prefill и тарификация за токен вас накажут. Коротким задачам — короткая модель или короткий бюджет.
GPT vs Claude vs Gemini
Таблица ниже — то, что можно записать в документ на 5 сентября 2026 года. Цены — официальные прайс-листы за миллион токенов; лимиты продуктовых поверхностей считаются отдельно. Gemini 3.8 Flash на момент статьи всё ещё не GA — в продакшене оставляйте 3.7.
| Вендор / модель | Рекламное окно | Макс. вывод | Ввод / вывод за 1M | Оговорки по окну |
|---|---|---|---|---|
| OpenAI GPT-5.5 API | ~1,050,000 | 128,000 | $5 / $30 | Reasoning считается в общий лимит; продуктовая поверхность Codex — 400K |
| OpenAI GPT-5.5 Pro | ~1,050,000 | 128,000 | $30 / $180 | То же окно; платите за вывод и reasoning |
| OpenAI GPT-5.4 | ~1M | 128,000 | $2.50 / $15 | Тот же класс 1M, ниже цена за единицу |
| Anthropic Claude Opus 4.8 | 1M (по умолчанию, без beta-заголовка) | 128,000 | $5 / $25 | Без надбавки за длинный контекст; prompt cache ~90% скидки |
| Anthropic Claude Sonnet 4.6 | 1M | 128,000 | $3 / $15 | Context awareness (модель знает, сколько бюджета осталось) |
| Anthropic Claude Haiku 4.5 | 200K | 64,000 | $1 / $5 | Быстрый и дешёвый — не уровень 1M |
| Google Gemini 3.7 Flash | 1,048,576 | 65,536 | Intro $0.75 / $3.75 до 2026-12-31 | Стандарт $1.50 / $7.50 с 2027-01-01 |
| Google Gemini 3.1 Pro | 1,048,576 | 65,536 | Около $2 / $4 (часто ступень выше 200K) | Не вписывайте сторонние заявления про 2M / 10M в контракт |
Как читать таблицу: все три флагмана могут принять около 1M. Разница — в запасе на вывод, съедает ли reasoning окно, дороже ли токены после 200K и стоит ли кэш того.
- Нужен длинный структурированный результат за один проход (большой JSON, длинный патч, многофайловый diff): 128K вывода у GPT-5.5 и Claude 4.6/4.8 примерно в 2 раза шире ~64K у Gemini. Gemini лучше в «прочитать много, написать одну таблицу».
- Один и тот же системный промпт + схема инструментов на каждый вызов: prompt cache Claude, Context Caching Gemini и cached input OpenAI выгоднее, чем каждый раз платить полный ввод. JSON
toolsагента должен быть в кэше — см. Tool Calling и JSON Schema. - Жёсткий бюджет, много материала, короткий вывод: intro-цена Gemini 3.7 Flash по-прежнему самый дешёвый уровень 1M из трёх. После 200K измеряйте многоигольный поиск на своих данных; не доверяйте одной цифре окна.
- Продукт ≠ API: GPT-5.5 в ChatGPT / Codex может быть 400K; некоторые облачные маркетплейсы по-прежнему отдают Claude на 200K. Откройте model card той поверхности, на которой вы поставляете продукт, прежде чем писать SLA.
Рекламное окно vs рабочее окно
К 2026 году консенсус уже трудно игнорировать: рекламировать 1M и пользоваться 1M — разные задачи. На многоигольном поиске (в стиле MRCR v2: найти несколько разбросанных фактов в огромном тексте) точность обычно начинает падать после 128K, расходится между 200K и 512K, а около 1M лишь немногие модели всё ещё ведут себя так, будто прочитали весь файл.
Публичные оценки и сторонние сводки (настройки не идентичны — смотрите как на тренд, не как на приёмочный тест) выглядят примерно так:
- GPT-5.5: шаг вперёд относительно предыдущих GPT-5.x в многоигольном рассуждении в диапазоне 512K–1M и один из API, которые чаще всего называют, когда окно реально заполняют. Одноигольное «найди это предложение» у всех трёх внутри 128K в порядке.
- Claude Opus 4.6: многоигольный поиск на 1M сообщали около 76%, кривая более плоская. 4.7 / 4.8 сильнее опираются на калибровку — отказывают или помечают неопределённость, а не выдумывают место. Комплаенс-ревью длинных документов обычно нужно второе.
- Gemini 3.x: по-прежнему силён в поиске и понимании длинных документов внутри 128K; многоигольный поиск падает круче после 200K. Хорош для «прочитать толстую стопку, выдать короткий JSON». Плох для «гарантировать 8-ю иголку в 900K токенов логов».
В продакшене пользуйтесь тремя диапазонами — не прайс-листом:
| Диапазон | Как относиться | Что делать |
|---|---|---|
| ≤128K | Почти полностью рабочий | Рабочее пространство по умолчанию у всех трёх |
| 128K–256K | Измерять на выборках | Гоняйте многоигольный поиск на своём JSON / репозитории; не смотрите на баллы Arena |
| 256K–500K | Рабочий; не считайте, что каждый факт найден | Предварительно извлекайте ключевые поля JSONPath; кэшируйте повторяющиеся префиксы |
| 500K–1M | Влезает; «влезает» ≠ «понято» | Только стабильный, ценный материал; фиксируйте ответы Schema |
«Потеря в середине» (lost in the middle) не исчезла, когда окна дошли до 1M. Жёсткие ограничения ставьте в начало системного промпта и в конец пользовательского сообщения; приложения оставляйте посередине. Модели чаще помнят «выведи JSON, который соответствует Schema», чем enum, зарытый на токене 400,000.
JSON: засунуть — не значит проверить
Окно 1M — первый раз, когда «весь OpenAPI, три дня логов ошибок и черновая Schema» помещаются в один запрос. Оно не делает невалидный JSON валидным и не ужесточает свободную схему. Окно — это видимость; контракт — это форма. Мы уже применяли это правило в От промпта к Structured Output и OpenAI vs Gemini Structured Output: блокируйте недопустимые токены на этапе декодирования через Schema, затем проверяйте ещё раз после вызова.
Засовывание продакшен-дампа на 800K токенов обычно ломается не потому, что «окно слишком маленькое»: повторяющиеся ключи тратят бюджет, средние поля теряются, длины массивов считаются неверно, вывод обрезается на потолке 64K/128K, и вы платите полный ввод. Порядок: обрезать → проверить → затем кормить.
{
"name": "longContextPack",
"description": "Пакет для окна 1M: только проверенный и обрезанный JSON",
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {
"task": { "type": "string", "enum": ["align_fields", "diff_versions", "extract_errors"] },
"schemaId": { "type": "string", "description": "Стабильный ID схемы — не вставляйте гигантскую схему целиком" },
"focusPaths": {
"type": "array",
"minItems": 1,
"maxItems": 32,
"items": { "type": "string", "description": "JSONPath, например $.paths./v2/orders.post" }
},
"payload": { "type": "object", "description": "Уже проверен синтаксис и обрезан размер — не сырая строка лога" },
"tokenBudget": { "type": "integer", "minimum": 1000, "maximum": 1000000 }
},
"required": ["task", "schemaId", "focusPaths", "payload", "tokenBudget"]
}
}
Бросьте этот пакет в JSON-инструменты для локальной проверки синтаксиса, вытяните focusPaths через JSONPath и сравните две версии payload через Diff. Модель должна видеть обрезанный объект, а не исходник файла .json на 20MB. Меняйте GPT / Claude / Gemini сменой строки модели. Имена полей пакета меняться не должны.
Что делать сейчас
- Сначала посчитайте токены, потом решайте, сколько класть: оцените системный промпт, инструменты, историю и вложения отдельно. На GPT-5.5 закладывайте reasoning; на Gemini считайте страницы видео / PDF. Если бюджет превышен — режьте, не ставьте на «должно ещё влезть».
- Кэшируйте повторяющиеся префиксы: system + tools почти одинаковы на каждый вызов — им место в prompt cache / Context Caching. Первый счёт за окно 1M — это счёт за ввод; после попаданий в кэш длинное окно становится повседневным.
- Ограничивайте вывод Structured Output, а не фразой «пожалуйста, верни JSON»: у OpenAI
response_format.json_schema, у GeminiresponseMimeType+responseJsonSchema, у Claude — инструменты или prefills. Более длинное окно всё равно придумает поле и потеряет required, если промпт свободный. - За пределами измеренного диапазона — ищите, не запихивайте: если ваш многоигольный поиск не прошёл 256K, не считайте 700K логов полным пониманием текста. JSONPath по кодам ошибок и временным меткам дешевле, чем отпускать модель плавать.
- Дробите ответы по потолку вывода: ~64K у Gemini, ~128K у GPT/Claude. Отчёт JSON на 200K — это шарды плюс Schema на каждый шард, а не один героический completion.
- Прогоните локальные фикстуры, прежде чем бить в API: тот же payload через проверку JSON и Diff в браузере. Ничего не загружается. Это та же привычка, что проверить REST-контракт перед запуском.
Частые вопросы
Сколько слов в 1M токенах?
Фиксированного перевода нет. Английский — около 750,000 слов; китайский — около 500,000–800,000 знаков, в зависимости от пунктуации и вкраплений латиницы. JSON, код и таблицы едят токены быстрее. Не планируйте ёмкость как «миллион слов». Считайте реальные образцы токенизатором вендора.
Чьё окно 1M лучше — GPT, Claude или Gemini?
Зависит от задачи. Для многоигольного рассуждения на полном окне публичные оценки часто ставят GPT-5.5 первым. Если вы предпочтёте отказ выдуманной цитате, Claude 4.7/4.8 стабильнее. Если нужно много прочитать и выдать короткую JSON-таблицу по бюджету, intro-цена Gemini 3.7 Flash — самая низкая из трёх. Самая большая рекламная цифра не побеждает.
Нужен ли RAG, если есть окно 1M?
Да. 1M — для стабильного, ограниченного материала, который нужно цитировать дословно. Когда корпус меняется каждый день, запросы повторяются или измеренное эффективное окно далеко ниже 1M, поиск по-прежнему дешевле и проще обновлять. Длинный контекст и RAG дополняют друг друга, а не заменяют.
Можно ли использовать полные 1M в ChatGPT или Claude.ai?
Не обязательно. API gpt-5.5 — около 1.05M; продуктовая поверхность Codex часто 400K. Некоторые облачные маркетплейсы по-прежнему отдают Claude на 200K. Доверяйте model card того продукта, которым вы реально пользуетесь, а не колонке API, скопированной в ожидания чат-приложения.
У Gemini уже 2M или 10M?
На сентябрь 2026 года публичная документация gemini-3.7-flash и gemini-3.1-pro указывает 1,048,576 входных токенов. 2M / 10M обычно из более ранних экспериментальных уровней, агрегаторских страниц или ещё не GA вариантов. Для контрактов и таблиц квот берите актуальную model card Google, не заголовок блога.
Если я засовываю целый JSON-файл в окно 1M, схема всё ещё нужна?
Да. Окно только расширяет видимость; оно не ограничивает форму вывода. Извлечение, выравнивание и аргументы инструментов агента по-прежнему требуют JSON Schema, затем проверку синтаксиса и структуры после вызова. GPT можно сменить на Gemini. Имена полей и списки required двигаться не должны.
Итоги
1M токенов — это реклама флагманских API 2026 года, которую GPT-5.5, Claude 4.6/4.8 и Gemini 3.7 могут напечатать на странице лимитов. Польза — когда один вывод должен видеть репозиторий, длинный документ или обрезанный JSON-пакет. Это не бесплатная память, и заполнить окно — не значит понять. Рабочие окна часто лежат между 128K и 500K; полный 1M считайте ёмкостью, не пониманием. Потолок вывода, съедает ли reasoning окно и дороже ли токены после 200K — вот настоящие поля выбора.
Задача — не гоняться за следующим слухом про «2M». А упаковать то, что вы отправляете, так, чтобы оно прошло проверку Schema: JSONPath обрезает пути, Diff сравнивает версии, проверка — затем вызов API. Structured Output и Tool Calling этот сайт уже разобрал; эта статья добавляет только чтение стороны контекстного окна.