# Ограничения контекста нейросети

> **Ограничения контекста нейросети (или контекстное окно)** — это максимальный объем информации, который искусственный интеллект способен одновременно удерживать в «краткосрочной памяти» и учитывать при генерации ответа. Объем измеряется в токенах (фрагментах слов) и строго определяет, насколько длинный текст модель может проанализировать или написать за один раз.

## Как работает контекстное окно?

Чтобы понять суть этого термина, представьте себе оперативную память компьютера или краткосрочную память человека. Когда вы читаете книгу, вы держите в голове сюжет текущей главы, имена героев и их последние действия. Если информации становится слишком много, детали из первых глав начинают забываться.

Нейросети работают по схожему принципу. Текст, который вы отправляете ИИ (промпт), и текст, который он генерирует в ответ, разбиваются на **токены**. В английском языке один токен примерно равен 0,75 слова, а в русском одно слово может разбиваться на 2-4 токена из-за сложности морфологии. Ограничение контекста — это жесткий лимит на количество таких токенов.

Если диалог или загруженный документ превышает этот лимит, происходит одно из двух:

- **Смещение окна (Sliding Window):** нейросеть начинает «забывать» самые старые сообщения в диалоге, оставляя в памяти только последние.
- **Обрыв генерации:** модель просто останавливается на полуслове или выдает ошибку, так как не может обработать весь массив данных.

## Примеры проявления ограничений контекста

На практике пользователи сталкиваются с ограничениями контекста довольно часто, особенно при решении сложных задач:

- **Анализ больших документов:** Если вы загрузите в базовую модель финансовый отчет на 300 страниц и попросите сделать выжимку, нейросеть с небольшим контекстным окном (например, 4000 токенов) проанализирует только первые несколько страниц, а остальное проигнорирует.
- **Длинные диалоги:** Вы общаетесь с чат-ботом, задаете ему правила ролевой игры и обсуждаете сценарий. Спустя час переписки бот внезапно нарушает изначальные правила. Это происходит не потому, что он «поглупел», а потому, что ваши первые инструкции просто выпали за пределы контекстного окна.
- **Написание кода:** Программист просит ИИ написать сложный скрипт, состоящий из множества файлов. По мере добавления новых функций нейросеть начинает предлагать код, который ломает логику, заданную в самом начале сессии.

## Интересный факт: Тест «Иголка в стоге сена»

Как разработчики проверяют, действительно ли нейросеть способна запомнить огромный объем текста, а не просто делает вид? Для этого был придуман знаменитый бенчмарк **«Needle in a Haystack» (Иголка в стоге сена)**.

Суть теста проста: в огромный документ (например, в многотомную энциклопедию) искусственно вставляется один абсурдный факт. Например: *«Секретный ингредиент идеальной пиццы — это фиолетовый банан»*. Затем этот гигантский текст загружают в нейросеть и спрашивают: «Какой секретный ингредиент пиццы?». Ранние модели с заявленным большим контекстом часто проваливали тест, так как их внимание рассеивалось. Современные же флагманы способны находить такую «иголку» среди миллионов токенов с точностью 99%.

## Эволюция памяти нейросетей

Размер контекстного окна — один из главных показателей развития ИИ. Если в 2020 году модель GPT-3 могла запомнить лишь около 2048 токенов (пара страниц текста), то современные архитектуры совершили невероятный скачок. Сегодня существуют модели, способные удерживать в памяти от 128 тысяч до 2 миллионов токенов за раз. Это позволяет загружать в них целые библиотеки, часовые видеоролики и полные базы данных.

Однако бесконечно увеличивать контекст сложно: традиционная архитектура трансформеров требует квадратичного роста вычислительных мощностей при увеличении окна. Поэтому ученые постоянно ищут новые подходы, чтобы сделать память ИИ безграничной без колоссальных затрат энергии.
