Шаблоны оценки памяти для агентных систем¶
Память в агентных системах ломается не так, как обычный поиск. Ошибки здесь часто проявляются не в одном запросе, а через серии запусков, обновлений профиля и фоновых записей.
Поэтому слой памяти полезно оценивать отдельно, а не надеяться, что он “как-нибудь попадет” в общий набор оценок.
1. Почему оценки памяти нужны отдельно¶
Даже если общий успех задачи выглядит хорошо, проектирование памяти может деградировать по-тихому:
- профиль заполняется лишними или рискованными фактами;
- устаревшее предпочтение продолжает влиять на ответы;
- система запоминает не то, что нужно;
- нужный факт не извлекается в длинной сессии;
- фоновое уплотнение искажает смысл записи.
Именно поэтому слой памяти требует собственной проверочной логики.
2. Какие типы ошибок стоит ловить¶
Минимальный набор оценок памяти обычно должен покрывать:
Канонические сценарии оценки памяти
Набор оценок памяти должен по-разному проверять качество состояния для трех канонических сценариев. Триаж обращений поддержки проверяет перенос контекста заявителя, извлечение состояния тикета, доказательство idempotency_key, решение не выполнять запись и регрессию дубля тикета. Внутренний ассистент знаний проверяет свежесть поиска, привязку к источнику, изоляцию арендатора, происхождение памяти и качество обоснованного ответа. Координация инцидентов проверяет восстановление хронологии инцидента, передачу владения ответом, статус эскалации, фильтрацию шумных оповещений и сохранение уроков после инцидента.
- неверная запись;
- пропущенная запись;
- небезопасная запись;
- устаревший поиск;
- ложное извлечение;
- противоречие профиля;
- избыточное хранение;
- отказ удаления.
Этот набор уже полезен даже без сложного эталонного теста.
3. Что оценивать в краткосрочной памяти¶
Краткосрочную память чаще всего проверяют на:
- удержание критичного контекста в пределах диалога;
- отсутствие лишнего переноса в следующий ход;
- устойчивость к шумным пользовательским ходам;
- корректность переспрашивания при неоднозначности.
Здесь проблема обычно не в самом хранилище, а в том, как среда исполнения решает, что именно стоит переносить дальше.
4. Что оценивать в профильной и долгосрочной памяти¶
Профильная и долгосрочная память требуют более строгих проверок:
- был ли факт вообще достоин записи;
- был ли факт записан в правильный класс памяти;
- можно ли объяснить происхождение;
- можно ли безопасно удалить или обновить запись;
- не влияет ли устаревшая запись на текущий путь ответа.
Здесь особенно важны оценки противоречий и гигиены хранения.
5. Длинную память нужно проверять на сериях запусков¶
Один из самых частых промахов такой: качество памяти проверяют на одной изолированной инструкции.
Но реальные проблемы обычно проявляются на сериях:
- предпочтение записали в запуске 1;
- неверно извлекли в запуске 4;
- обновили конфликтующим фактом в запуске 6;
- устаревший профиль продолжил влиять в запуске 9.
Поэтому полезно строить оценки памяти как многозапусковые сценарии, а не только как проверки одного хода.
6. Какие поля полезно фиксировать в сценарии оценки памяти¶
Минимально полезная запись оценки часто включает:
memory_classwrite_expectedretrieval_expectedallowed_to_persistexpected_provenancerevision_behaviordeletion_behavior
Это помогает отделять “ответ плохой” от “семантика памяти нарушена”.
7. Что особенно важно для безопасности¶
Оценки памяти полезны не только для персонализации. Они важны и для безопасности:
- не пишет ли система чувствительные данные без права;
- не удерживает ли слишком долго рискованное состояние;
- не путает ли пользовательские данные;
- можно ли быстро прекратить вредный путь памяти;
- можно ли доказать происхождение устойчивых записей.
Если этого слоя нет, инциденты памяти будут выглядеть как “странное поведение модели”, хотя проблема уже в жизненном цикле записи.
8. Как оценки памяти связаны с обычным оценочным контуром¶
Оценки памяти не живут отдельно от главы про оценки. Они просто добавляют отдельную плоскость:
- обычные офлайн-оценки проверяют успешность задачи;
- оценки памяти проверяют качество состояния между запусками;
- онлайн-сигналы помогают ловить дрейф;
- инциденты и разборы инцидентов обновляют сценарии, специфичные для памяти.
То есть слой памяти должен входить в регрессионную дисциплину так же явно, как инструменты или политика.
9. Что сделать сразу¶
Сначала пройди по короткому списку и отдельно отметь все ответы «нет»:
- Есть ли отдельные сценарии для решений записывать или не записывать?
- Проверяется ли поиск на длинных сериях запусков?
- Есть ли сценарии на устаревший профиль и противоречия?
- Оценивается ли происхождение устойчивых записей?
- Есть ли сценарии удаления и ревизии?
- Возвращаются ли инциденты памяти в набор оценок?