Разработал LLM-систему с управляемой долговременной памятью для сценариев, где качество ответа должно сохраняться на длинной дистанции. Проект решал типовую проблему больших языковых моделей: ограниченное окно контекста, выпадение важных фактов, накопление повторов и деградация качества при длительном взаимодействии. Требовалось не просто хранить историю, а выстроить архитектуру памяти, которая умеет отбирать, сжимать, ранжировать и повторно использовать действительно ценные знания.
Спроектировал архитектуру, в которой основная LLM вызывается через внешний API и не хранит состояние между запросами.
Для сохранения долгосрочного контекста реализовал отдельный memory-контур, включающий:
векторное хранилище с метаданными;
хранение value_score, частоты использования, подтвержденности фактов и других признаков значимости;
локальную mini-модель для summarization, кластеризации и сжатия контекста;
controller-слой, который выполняет retrieval по similarity и value_score, собирает compact prompt и обновляет память по итогам взаимодействия.
Система была построена не вокруг “магии промпта”, а вокруг отдельной архитектуры памяти. Это позволило отделить краткосрочный контекст запроса от долговременных знаний, управлять ценностью сохраненной информации, отсекать дубли и снижать шум в промпте. В результате в LLM передавался не сырой массив истории, а компактный и релевантный контекст.
В результате была создана LLM-система с персонализированной памятью, которая устойчиво работает на длинной дистанции и лучше сохраняет важные факты между сессиями.
Решение позволило:
снизить потерю важного контекста при длительном взаимодействии;
уменьшить количество повторов и дублирующей информации;
повысить релевантность контекста, подаваемого в модель;
сделать память управляемой и ранжируемой по ценности, а не просто накопительной;
создать техническую базу для персонализированных AI-систем, ассистентов и агентных решений с долговременной памятью.