1. Главная
  2. Блог
  3. ИИ-агенты для бизнеса
  4. Память ИИ-агента: какая бывает и что действительно нужно

Память ИИ-агента: какая бывает и что действительно нужно

9 августа 2026
5

У модели нет памяти: каждый запрос она обрабатывает с нуля, а всё, что «помнит» агент, ему передают заново с каждым обращением. Отсюда главное практическое следствие — память стоит денег: чем больше передаётся, тем дороже каждый шаг. Задача проектирования не в том, чтобы помнить всё, а в том, чтобы передавать необходимый минимум.

Четыре вида памяти

Контекст запроса

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

Ограничен размером окна модели и оплачивается целиком при каждом вызове. Именно здесь возникает основная статья расходов на многошаговых задачах.

История диалога

Предыдущие реплики в рамках одной сессии. Нужна там, где пользователь уточняет: «а если доставка в Казань?» — без истории вопрос бессмысленен.

Растёт с каждым шагом, поэтому требует управления: полная история на двадцатом сообщении стоит в разы дороже, чем на первом.

Долговременная память

То, что переживает сессию: предпочтения клиента, история обращений, ранее принятые решения. Хранится в обычной базе и подтягивается по необходимости.

Это не «память модели», а обычная работа с данными. Ошибка проектирования — пытаться держать такие сведения в контексте вместо базы.

Рабочая память задачи

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

Вид Живёт Где хранится Стоит ли денег
Контекст запроса один вызов передаётся каждый раз да, напрямую
История диалога сессия передаётся частично да, растёт со временем
Долговременная постоянно база данных только при подтягивании
Рабочая память задача передаётся или в базе да, если в контексте

Как управлять размером

Скользящее окно. Передаются последние N сообщений. Просто и предсказуемо по цене; минус — забывается то, что сказали в начале.

Сжатие истории. Старая часть диалога заменяется кратким изложением. Дешевле полной истории, но при сжатии теряются детали, и какие именно — заранее не известно.

Выборка по релевантности. Из истории подтягивается только относящееся к текущему вопросу. Точнее остальных, но требует поискового механизма.

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

Последний подход стоит пояснить. Диалог — плохой формат хранения состояния: он длинный, избыточный и требует от модели заново извлекать из него факты. Явная структура вида «клиент: известен; телефон: есть; тип заявки: определён; остаток: уточнить адрес» занимает несколько строк вместо десятков сообщений и не даёт модели «забыть» что-то в середине.

Что ломается на практике

  • Контекст растёт незаметно. Задача из тридцати шагов на последнем шаге тащит результаты всех предыдущих. Счёт растёт нелинейно.
  • Модель теряет середину. При длинном контексте начало и конец учитываются лучше середины. Важное нужно ставить ближе к концу, а не полагаться на то, что «оно там есть».
  • Сжатие выбрасывает нужное. Краткое изложение сохраняет сюжет и теряет числа, идентификаторы и точные формулировки. Их следует хранить структурно, а не в тексте.
  • Долговременная память подтягивается вся. «Загрузим всю историю клиента» — типичная ошибка: контекст раздувается, а полезны две-три записи.
  • Персональные данные оседают в логах. История диалога с клиентскими сведениями сохраняется дольше, чем нужно, и попадает туда, где не должна быть — см. «152-ФЗ и нейросети».

Сколько памяти реально нужно

Практика скромнее ожиданий. Большинству агентских задач достаточно:

  • рабочей памяти в виде структурированного состояния — обязательно;
  • истории диалога — только если пользователь ведёт разговор, и то с ограничением;
  • долговременной памяти — по запросу из базы, а не постоянно в контексте.

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

Влияние на стоимость

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

Что снижает расход, не ухудшая работу:

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

Расчёт — в статье «Стоимость эксплуатации ИИ-агента», общая методика по токенам — в «Сколько стоит эксплуатация ИИ-решения».

Расчёт: как растёт контекст на задаче из десяти шагов

Числа условные, важно соотношение. Примем: инструкция и описания инструментов — 2 000 токенов, постановка задачи — 300, результат каждого вызова — 400.

Вариант 1. Передаётся вся история.

Шаг Что в контексте Размер
1 инструкция + задача 2 300
2 + результат шага 1 2 700
5 + результаты шагов 1–4 3 900
10 + результаты шагов 1–9 5 900

Суммарно за десять шагов передаётся около 41 000 токенов. При этом полезной новой информации на каждом шаге — 400 токенов, всё остальное пересылается повторно.

Вариант 2. Структурированное состояние.

Вместо накопления результатов передаётся карточка задачи, обновляемая на каждом шаге: «клиент: найден, ID 1042; заказ: найден, №8871; тип обращения: вопрос по срокам; осталось: проверить дату отгрузки». Такая карточка занимает около 150 токенов и не растёт.

Шаг Что в контексте Размер
1 инструкция + задача 2 300
5 инструкция + задача + состояние 2 450
10 инструкция + задача + состояние 2 450

Суммарно — около 24 500 токенов вместо 41 000. Экономия порядка 40 %, и она растёт с числом шагов: на задаче из двадцати шагов разница будет уже двукратной.

Побочная выгода, которая важнее экономии. В первом варианте на десятом шаге модель получает результаты девяти вызовов вперемешку и должна сама извлечь из них нужное — а середину длинного контекста она учитывает хуже краёв. Во втором варианте состояние уже разобрано и структурировано, терять там нечего.

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

Частые вопросы

Есть ли у ИИ-агента память?

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

Что делать, если агент забывает начало разговора?

Хранить состояние структурно, а не полагаться на историю переписки. Заполненная карточка задачи — что известно, что осталось выяснить — занимает несколько строк, передаётся целиком и не теряется в середине контекста. История диалога при этом ограничивается последними сообщениями или сжимается.

Нужна ли агенту долговременная память?

Обычно достаточно обычной базы данных с подтягиванием нужных записей по запросу. «Помнить всё о клиенте» звучит привлекательно, но раздувает контекст и удорожает каждый шаг, тогда как полезны две-три записи. Проверочный вопрос: изменится ли решение агента, если он этого не вспомнит.

Почему длинный контекст ухудшает качество?

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

Как сжатие истории влияет на работу?

Сжатие сохраняет общий смысл и теряет точные значения: числа, идентификаторы, формулировки. Для диалога это приемлемо, для агента опасно — он может потерять номер заявки или сумму. Такие данные хранятся отдельно в структурированном виде, а сжимается только повествовательная часть.

Что дальше

Как агент выполняет шаги и что попадает в контекст — «Function calling». Почему агент повторяет действия — «Зацикливание ИИ-агента». Что передаётся между агентами в сложных схемах — «Мультиагентные системы». Как это отражается на счёте — «Стоимость эксплуатации ИИ-агента».

Проектирование состояния и расчёт расхода контекста — часть работ по разработке и внедрению ИИ-агента.