Материал подготовлен автоматически по первоисточникам: ссылки на них — в конце статьи.
Память ИИ-агента научили обновлять накопленный опыт, не меняя способ его поиска. В препринте Peking University, который не рецензировался, все числа получили сами авторы: даже без текста опыта полный символический адрес помогал отвечать на GPQA точнее, чем исходный запрос. Для архитектуры долгоживущих агентов это предлагает альтернативу поиску по сходству, который может вести себя иначе после каждого обновления записи.
Адрес остаётся, опыт меняется
Обычная память агента часто ищет фрагменты по близости в пространстве векторов. Когда система переписывает инструкцию или объединяет несколько наблюдений, меняется её векторное представление. Запрос, который раньше находил эту инструкцию, после обновления может пройти мимо неё.
GenMem разделяет адрес и содержимое. Каждая запись получает символический идентификатор (SID) — последовательность дискретных токенов, которая указывает на ячейку памяти. Агент генерирует адрес из текущей задачи, извлекает текст из соответствующей ячейки и приспосабливает его к ситуации.
Адреса создают при начальном заполнении памяти. Система извлекает из траекторий повторно используемые процедуры и уроки из ошибок, кодирует их замороженной текстовой моделью, а затем последовательно кластеризует представления методом остаточного K-means. На каждом уровне она выбирает ближайший центр, вычитает его из представления и кодирует остаток на следующем уровне.
В реализованной конфигурации четыре уровня используют в сумме 80 токенов и задают 49 152 возможных адреса. Общие префиксы группируют близкий опыт, а последние токены различают частные случаи. Уровни не соответствуют заранее заданным категориям вроде предметной области или инструмента: структура возникает из кластеризации исходного опыта.
После запуска кодовые книги фиксируют. Система может заменить текст в ячейке, объединить его с новым опытом или очистить, но SID остаётся прежним. Поэтому политика поиска учится находить функциональную роль опыта, а не конкретную редакцию инструкции.
Поиск и обновление учатся в одном контуре
GenMem оборачивает планировщик StackPlanner двумя агентами памяти. MemRetriever получает задачу и контекст рассуждения, генерирует SID, читает запись и переписывает её в подсказку для текущей ситуации. Планировщик выполняет задачу, после чего MemEvolver разбирает траекторию, извлекает переносимый урок и выбирает адрес для вставки или пересмотра записи.
Обучение начинается с сопоставления запросов, траекторий и текстов опыта с адресами. Обратные примеры учат модель восстанавливать по SID содержимое и словесное описание. Затем на траекториях в стиле ReAct два агента осваивают полные операции чтения и записи, а не только предсказание токенов адреса.
На следующем этапе политики дообучают методом GRPO. Процессная награда проверяет формат адреса, совпадение его уровней с целевым SID и полезность подготовленного опыта через модель-оценщик. Итоговая награда сравнивает выполнение StackPlanner с памятью и без неё. Это распределяет сигнал между выбором ячейки, переработкой опыта и конечным ответом, вместо того чтобы оценивать всю цепочку только по успеху задачи.
В отдельной проверке на GPQA исходный запрос дал точность 48,3%, а полный SID без текста памяти — до 54,7%. Переписанный под задачу опыт поднял результат до 56,9%. Прямое извлечение и переписывание текста не показали устойчивого преимущества друг над другом, поэтому эксперимент подтверждает полезность адресных токенов, но не доказывает, что дополнительный агент-переписчик нужен при каждом обращении.
Архитектуру проверяли на ALFWorld, WebShop, поисковом ответе на вопросы, медицинских рассуждениях и задачах глубокого исследования; отдельно рассматривали перенос на код и SQL. Сравнения включали агентов с памятью, методы обучения с подкреплением и закрытые LLM. Начальную память строили офлайн, а дальнейшие изменения проходили через внешний банк при замороженных моделях и кодовых книгах.
Когда постоянный адрес стоит заложить в архитектуру
Работа меняет планы прежде всего для систем, где один агент долго накапливает и пересматривает процедуры: поддержки, исследования, навигации по инструментам или автоматизации многошаговых процессов. В таком продукте стоит отделить постоянный ключ навыка от его текущего текста ещё на уровне схемы хранения. Иначе каждая редакция опыта одновременно меняет и содержимое, и правила доступа к нему.
GenMem при этом не выглядит готовой заменой обычному поиску по векторам. Система требует собрать качественные начальные траектории, построить дискретное пространство адресов и обучить отдельных агентов на чтение и обновление. Каждый цикл также добавляет вызовы MemRetriever и MemEvolver вокруг основного планировщика.
Авторы отмечают неравномерную загрузку конечных кодов: часть ветвей получает непропорционально много обращений. Ошибки ранних траекторий тоже могут закрепиться в адресном пространстве, поскольку после запуска кодовые книги уже не меняются. Для команды это означает, что постоянство адреса покупается ценой более строгого холодного старта и контроля качества памяти.
Практический вывод уже применим без полной реализации GenMem: изменяемые инструкции и навыки лучше хранить за стабильными логическими ключами, а поиск обучать на назначение записи. Полную схему с генерацией SID имеет смысл испытывать там, где память регулярно переписывается и агент должен сохранять поведение на длинной последовательности задач.
Источники
Похоже на вашу задачу?
Расскажите, что собираете. За полчаса разложим на этапы и назовём сроки — это бесплатно и ни к чему не обязывает.



