система

Контекстное окно нейросети: почему она забывает начало разговора и как дать ей память проекта

Контекстное окно нейросети: почему она забывает начало разговора и как дать ей память проекта

Ты ведёшь с нейросетью рабочий проект. Юрист разбирает дело клиента, мастер считает смету ремонта, дизайнер согласует правки. Час назад ты подробно рассказал, что за клиент, какие сроки и что уже решили. А теперь нейросеть уверенно предлагает то, от чего вы отказались в самом начале, и переспрашивает то, что ты уже объяснял. Знакомо? Это не глупость модели и не сбой. Так работает контекстное окно нейросети, и если понять, как оно устроено, забывчивость лечится не новой подпиской, а порядком в проекте.

Пишу для тех, кто использует ИИ не ради шутки, а в работе с клиентами и делами. Разберём, что такое контекстное окно, почему у него есть край, какой размер контекстного окна у популярных моделей и как сделать так, чтобы агент помнил твой проект завтра и через месяц.

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

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

Удобнее всего представить доску со стикерами. Каждое сообщение это стикер. Доска большая, но не бесконечная. Когда места не остаётся, новый стикер можно приклеить только одним способом: снять какой-то старый.

Размер доски меряют в токенах. Токен это кусочек текста: иногда целое слово, иногда его часть. Google для своих моделей Gemini даёт ориентир «один токен около четырёх символов», Сбер для GigaChat пишет «в среднем три-четыре символа». Русский текст по независимым замерам режется на токены мельче английского, так что на русском в то же окно помещается меньше слов, чем обещают английские цифры.

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

Почему нейросеть забывает начало разговора

Причин две, и обе стоит знать.

Первая: окно кончается. В обычном чате, когда разговор вырастает больше окна, старое начинают выкидывать. В документации для разработчиков Anthropic пишет, что чат-интерфейсы вроде claude.ai могут вести окно по принципу «первым пришло, первым ушло». Самое первое сообщение, где ты рассказал про клиента и сроки, уходит первым. Другие сервисы в долгих разговорах сжимают старое в краткий пересказ: например, Claude Code сжимает контекст автоматически, когда подходит к краю окна. Пересказ короче оригинала, и детали в нём теряются.

Вторая причина хитрее: даже то, что влезло в окно, модель читает неравномерно. В 2023 году вышло исследование «Lost in the Middle» (Нельсон Лю и соавторы): модели лучше всего используют информацию из начала и конца длинного текста и заметно хуже из середины. Anthropic в документации 2026 года называет похожий эффект «context rot»: чем больше токенов, тем хуже точность и полнота.

То есть длинный разговор проигрывает дважды. Начало вываливается за край, а середину модель видит вполглаза.

Размер контекстного окна у популярных моделей

Теперь цифры. Вот контекстное окно популярных моделей на сентябрь 2026 года по официальным страницам разработчиков, для работы через API:

Миллион токенов звучит как бездонная доска. Для масштаба разработчики Claude приводят ориентир: это примерно 555 тысяч английских слов. Но есть три оговорки, которые в рекламе не пишут.

Во-первых, в приложении окно может быть меньше, чем у той же модели через API. У ChatGPT лимиты зависят от тарифа и режима и меняются по ходу года, поэтому конкретную цифру проверяй на странице своего тарифа, а не в обзоре.

Во-вторых, «у всех теперь миллион» это неправда: у части быстрых моделей, например у Claude Haiku 4.5, окно в пять раз меньше, а у российских моделей своя шкала.

В-третьих, большое окно не отменяет проблему середины. Google в своих материалах о длинном контексте Gemini показывает: один факт в длинном тексте модель находит почти безошибочно, а когда искать нужно сразу несколько фактов в разных местах, точность падает. А в рабочем проекте тебе нужны именно несколько: клиент, решения, сроки, суммы.

Так что увеличенное окно это отсрочка, а не решение. Доска больше, но стикеры с неё всё равно падают.

Память в ChatGPT и Claude: это не то же самое, что окно

Разработчики эту проблему видят и добавили в приложения память. В ChatGPT можно попросить «запомни, что…», и сервис сохранит факт для следующих разговоров. У Claude есть поиск по прошлым чатам, память и проекты с отдельной памятью на каждый проект. У Gemini есть сохранённая информация, куда ты сам вписываешь то, что он должен учитывать.

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

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

Как дать нейросети память проекта

Главный сдвиг такой: хранить проект не в переписке, а в папке с файлами. Переписка живёт в окне и из него выпадает. Файл лежит на диске и никуда не девается, его можно прочитать заново в любой новой сессии.

Именно так устроены ИИ-агенты вроде Claude Code и Codex. Они работают не в браузерном чате, а в папке проекта у тебя на компьютере и читают файлы в ней. У Claude Code это закреплено прямо в документации: файл CLAUDE.md с инструкциями проекта агент читает в начале каждой сессии. Более того, после сжатия длинного разговора CLAUDE.md перечитывается с диска и подставляется заново. Разговор сжался, правила проекта остались целыми. У Codex похожую роль играет файл AGENTS.md, это открытый формат, его понимают и другие агенты.

Вот последовательность, которую можно повторить.

Шаг первый. Заведи папку проекта. Одна папка на клиента или на дело. В ней будет жить всё, что агент должен помнить.

Шаг второй. Дай агенту правила одним файлом. Коротко и по делу: веди дневник проекта, записывай каждое решение с датой, не выдумывай, отвечай по дневнику, если данных нет, спрашивай. Разработчики Claude Code рекомендуют держать такой файл компактным, до двухсот строк: длинный файл сам съедает окно и хуже соблюдается.

Шаг третий. Расскажи проект один раз. Клиент, объект, сроки, что уже решено. Агент сам запишет это в файлы проекта. Руками ничего создавать не нужно, для этого и правила.

Шаг четвёртый. Каждое изменение проговаривай, агент дописывает дневник. Клиент передумал, сдвинулся срок, выросла сумма: ты говоришь словами, агент фиксирует решение с датой и пересчитывает то, что от него зависит.

Шаг пятый. Длинную сессию не тяни до края. Когда разговор разросся, начни новую сессию. В документации Claude Code так и сказано: чистая сессия с точной задачей почти всегда работает лучше долгой, в которой накопились исправления. А в руководстве по промптингу для долгих задач советуют начинать с чистого окна и сразу указывать, какие файлы прочитать. Всё важное уже в дневнике, агент поднимет его за минуту.

И один приём для любого чата, даже без агента. Если даёшь модели длинный документ, ставь его в начало сообщения, а вопрос в конец. В руководстве по промптингу Claude сказано, что на сложных задачах с несколькими документами вопрос в конце улучшал качество ответа в тестах до 30 процентов.

Как это устроено у меня

Покажу на своих проектах, без красивостей. В каждом проекте у меня лежит файл с правилами для агента, и агент сам ведёт в папке дневник решений и статус работы. Я не открываю эти файлы руками, чтобы что-то туда вписать: говорю, что произошло, он записывает. У этого блога и всей системы, которая готовит статьи и посты, тоже есть дневник: каждая рабочая сессия записана, что сделали, что решили, где напоролись. Когда я возвращаюсь к проекту через неделю, агент начинает не с чистого листа, а с дневника.

Что я проверяю в первую очередь. Первое: записал ли агент решение с датой, а не просто ответил в чате. Ответ в чате пропадёт, запись в дневнике останется. Второе: отвечает ли он по дневнику, а не «вообще». Если на вопрос о проекте он выдаёт общие слова, значит, в файлах этого нет, и дыру надо закрыть, а не спорить с моделью. Третье: не раздулся ли файл правил. Правила, которые разрослись в простыню, агент начинает соблюдать через раз.

До и после: один и тот же спорный вопрос

Возьму сцену из моего бесплатного урока. Ремонт квартиры под ключ, 33 квадрата, клиент Иванова, срок сдачи сентябрь. По ходу работы клиент решила заменить уже уложенную плитку в ванной: плюс месяц и плюс сто тысяч. Через неделю клиент требует сдать в сентябре, как договаривались.

Обычный чат, в котором всё это обсуждалось два часа назад, а начало уже выпало из окна:

Если в договоре указан срок сентябрь, стоит его соблюсти. Рекомендую обсудить с клиентом возможность ускорить работы или предложить компенсацию за задержку.

Гладко, вежливо и против тебя. Про замену плитки модель уже не знает.

Агент, который ведёт проект в папке и отвечает по дневнику:

Сдать в сентябре нельзя. В дневнике записано решение клиента: заменить готовую плитку в ванной, это плюс месяц и плюс сто тысяч, переписка лежит в папке проекта. Поэтому срок сдачи сдвинулся на октябрь.

Та же модель, та же задача. Разница не в размере окна, а в том, что у второго есть память, которая не выпадает.

Чек-лист: у твоего проекта есть память или только окно

Пройди по пунктам. Хоть один ответ «нет», значит, проект держится на окне и однажды забудется.

  1. У проекта есть своя папка, а не только переписка в чате?
  2. Есть короткий файл правил для агента, до двухсот строк?
  3. Решения записываются в дневник с датой, а не остаются в ответах чата?
  4. На вопрос о проекте агент отвечает по записям, а не общими словами?
  5. Длинные сессии ты заканчиваешь сам и начинаешь новую, указывая, какие файлы прочитать?
  6. Длинные документы ставишь в начало сообщения, а вопрос в конец?
  7. Размер окна своей модели ты проверил на официальной странице, а не в обзоре годичной давности?

Что с этим делать дальше

Контекстное окно нейросети это доска, на которой лежит разговор, и стикеры с неё рано или поздно падают. Бороться с этим покупкой модели с окном побольше можно, но это отсрочка. Надёжнее вынести память проекта из переписки в файлы: папка, правила, дневник решений. Тогда окно отвечает за текущий разговор, а за то, что нельзя забыть, отвечают файлы.

Это та же мысль, что и в разборе, почему нейросеть пишет воду: модель работает ровно настолько хорошо, насколько ты дал ей, из чего работать.

Каждый день разбираю одну рабочую штуку про нейросети

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

Подписаться в телеграме

Не пользуешься телеграмом? Те же разборы в группе ВКонтакте.