3,583 papers
arXiv:2601.16621 74 23 янв. 2026 г. FREE

Rational Personalization: как отучить LLM впихивать всю память в ответ

КЛЮЧЕВАЯ СУТЬ
Парадокс: Чем мощнее LLM, тем сильнее она злоупотребляет персонализацией. Модель приклеивает нерелевантные предпочтения к любому запросу — пользователь просит музыку для сна, а ассистент рекомендует энергичные треки с ритмом, потому что в памяти записано "любит активную музыку". Модели правильно игнорируют нерелевантную память только в 6–38% случаев (люди — 86%). Rational Personalization позволяет различать когда использовать память о предпочтениях, а когда игнорировать её. Фишка метода: симулировать альтернативные формулировки запроса для каждого сценария — "как пользователь написал бы, если бы хотел применить предпочтение?". Модель сравнивает симуляции с реальным запросом и выбирает подходящую стратегию. +35% точности интента и +80% исправление ошибок персонализации в коммерческих системах.
Адаптировать под запрос

TL;DR

Рациональная персонализация — принцип работы с LLM, когда модель сама решает использовать ли информацию из контекста (память о пользователе, предыдущие диалоги), а не тупо вставляет всё подряд. Исследователи из Renmin University и Huawei выделили три уровня персонализации: L0 (игнорирует контекст), L1 (вставляет всё семантически похожее), L2 (прагматический — оценивает релевантность через обратный вывод намерения пользователя).

LLM страдают над-персонализацией (over-personalization): когда в контексте есть информация о предпочтениях, модель пытается впихнуть её в ответ, даже если это противоречит текущему запросу. Пример из исследования: пользователь просит аудио для сна, а в памяти есть предпочтение "любит музыку с сильным ритмом" → модель рекомендует быструю музыку для засыпания. Проблема усиливается с ростом способностей модели — inverse scaling effect: чем мощнее LLM, тем сильнее она притягивается к токенам из контекста (attraction bias). В тестах разрыв между людьми и LLM достигает 40-90% в умении игнорировать нерелевантную память.

RP-Reasoner решает проблему через байесовский вывод намерения: для каждого варианта использования памяти (игнорировать/поддержать/доминировать) модель генерирует кандидат-намерения, затем оценивает (1) вероятность запроса — насколько текущий запрос похож на то, как пользователь выразил бы это намерение, и (2) априорную вероятность — насколько намерение соответствует истории предпочтений. Метод улучшает точность на 35% и снижает серьёзность ошибок на 26%, решает 80% проблемных кейсов в коммерческом ассистенте.

🔬

Схема метода

RP-Reasoner работает в одном промпте:

ШАГ 1: Генерация кандидатов намерений
Для каждой стратегии (Ignore/Support/Dominate память) 
→ создай кандидат-намерение i₁, i₂, i₃

ШАГ 2: Query Likelihood (MLE)
Для каждого кандидата: 
"Если бы намерение было i₁, как бы пользователь это выразил?"
→ сравни реальный запрос с симулированным
→ ранжируй по близости

ШАГ 3: Intent Prior (IPE)  
Для каждого кандидата:
"Насколько это намерение вероятно, учитывая историю предпочтений?"
→ ранжируй по соответствию памяти

ШАГ 4: Агрегация
Выбери намерение с минимальной суммой рангов из Шага 2 и 3
→ генерируй ответ на основе выбранного намерения
🚀

Пример применения

⚠️ Метод работает для задач где есть риск конфликта между контекстом и текущим запросом — персонализированные рекомендации, адаптация тона/стиля, использование истории диалога. Не для: простых фактических вопросов без контекста.

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

Промпт:

У меня есть информация о предпочтениях человека:
- Предпочитает удалённую работу
- Любит стартапы  
- Ценит высокую зарплату

Текущий запрос: "Посоветуй как подготовиться к интервью в Яндекс на позицию менеджера продукта"

Задача: определи правильную стратегию использования памяти.

Шаг 1 — Сгенерируй три варианта намерения:
- IGNORE: какое намерение если память не релевантна?
- SUPPORT: какое намерение если память частично полезна?
- DOMINATE: какое намерение если память определяет запрос?

Шаг 2 — Для каждого варианта намерения оцени: "Если бы это было истинное намерение, как бы пользователь сформулировал запрос?" Сравни с реальным запросом.

Шаг 3 — Для каждого варианта оцени: "Насколько это намерение вероятно учитывая историю предпочтений?"

Шаг 4 — Выбери стратегию с лучшим балансом между Шагом 2 и 3. Дай ответ на основе выбранной стратегии.

Результат:

Модель покажет рассуждение по шагам: три кандидата намерений, оценку близости запроса к каждому кандидату, оценку соответствия истории. Выберет стратегию IGNORE (запрос про конкретную подготовку к интервью, не про выбор работы) и даст универсальные советы по подготовке к интервью в Яндекс, без упоминания удалёнки и стартапов.

🧠

Почему это работает

Слабость LLM: Модели страдают attraction bias — во время генерации они непропорционально увеличивают вероятность токенов, которые уже есть в контексте. Если в памяти написано "любит яркие цвета", модель начнёт генерировать про яркость, даже когда это не нужно. Это усиливается с ростом способностей модели — inverse scaling: мощные LLM сильнее "прилипают" к контексту.

Сильная сторона LLM: Модели хорошо симулируют рассуждения и могут генерировать контрфактуальные сценарии ("а как бы это звучало если..."). Они могут оценивать соответствие между наблюдаемым текстом и гипотетическими вариантами.

Как метод обходит слабость: RP-Reasoner делает явным процесс проверки релевантности памяти. Вместо того чтобы модель автоматически подтягивала контекст в генерацию, метод заставляет её сначала порассуждать через контрфактуальное исключение: "Если бы пользователь действительно хотел использовать эту информацию из памяти, разве он не сформулировал бы запрос иначе?" Это байесовский вывод в стиле Rational Speech Acts теории.

Рычаги управления:

  • Количество стратегий — по умолчанию три (Ignore/Support/Dominate), можно упростить до двух (Use/Ignore) для экономии токенов
  • Глубина симуляции — можно попросить модель сгенерировать несколько вариантов "как пользователь выразил бы намерение" вместо одного, повысит точность но дороже
  • Веса между MLE и IPE — сейчас равные (сумма рангов), можно приоритизировать запрос над историей ("*2 к рангу MLE") или наоборот
  • Порог отсечения — добавить условие "если разница рангов < 2, всегда выбирай IGNORE" для консервативной стратегии
📋

Шаблон промпта

У меня есть информация из предыдущего контекста:
{память_или_контекст}

Текущий запрос: "{запрос}"

Определи рациональную стратегию использования контекстной информации:

ШАГ 1 — Кандидаты намерений:
Для каждой стратегии сформулируй явное намерение пользователя:
- IGNORE_INTENT: какое намерение если контекст не релевантен?
- SUPPORT_INTENT: какое намерение если контекст частично помогает?
- DOMINATE_INTENT: какое намерение если контекст определяет запрос?

ШАГ 2 — Query Likelihood:
Для каждого намерения ответь: "Если это истинное намерение, как пользователь обычно формулирует такой запрос?"
Оцени близость реального запроса к типичной формулировке (1-10).
Ранжируй от самого близкого к самому далёкому.

ШАГ 3 — Intent Prior:  
Для каждого намерения оцени: "Насколько это намерение соответствует информации в контексте?" (1-10)
Ранжируй по соответствию.

ШАГ 4 — Выбор стратегии:
Просуммируй ранги из Шага 2 и 3 для каждого намерения.
Выбери намерение с минимальной суммой рангов.

ШАГ 5 — Ответ:
На основе выбранной стратегии сгенерируй ответ:
- Если IGNORE — не используй контекст
- Если SUPPORT — используй контекст как дополнение к общим рекомендациям
- Если DOMINATE — ответ должен строиться вокруг контекста

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

Плейсхолдеры: - {память_или_контекст} — информация из предыдущих диалогов, предпочтения пользователя, документы в контексте - {запрос} — текущий вопрос или задача

🚀 Быстрый старт — вставь в чат:

Вот шаблон Rational Personalization. Адаптируй под мою задачу: [твоя задача]. 
Задавай вопросы, чтобы заполнить поля.

[вставить шаблон выше]

LLM спросит: (1) какая информация есть в контексте/памяти, (2) какой текущий запрос, (3) в каких случаях контекст должен доминировать. Она возьмёт байесовскую структуру и адаптирует: добавит конкретные критерии оценки для твоего домена, настроит шкалу ранжирования под сложность задачи.

⚠️

Ограничения

⚠️ Токены и латентность: Метод требует многошагового рассуждения — дороже обычного промпта в 2-3 раза по токенам и времени. Для простых запросов избыточен.

⚠️ Качество памяти: Если контекстная информация изначально неоднозначна или противоречива, метод не улучшит ситуацию — он помогает решить использовать ли чистую память, не исправляет саму память.

⚠️ Субъективные предпочтения: В исследовании метод тестировали на относительно объективных сценариях (музыка для сна vs для вечеринки). Для абстрактных предпочтений ("креативный подход") сложнее судить о релевантности.

⚠️ Implicit память: Когда предпочтения вшиты в историю диалога неявно (не как список фактов, а разбросаны по репликам), моделям труднее извлечь и оценить их. Метод работает лучше с explicit форматом памяти.

📄

Оригинал из исследования

Исследователи реализовали RP-Reasoner через Approximate Bayesian Computation с явным байесовским выводом:

Формула:

P(intent | query, memory) ∝ P_user(query | intent, memory) · P(intent | memory)
                              \_________________________/   \_______________/
                                   Query Likelihood              Intent Prior

Как работает в исследовании:

  1. MLE (Maximum Likelihood Estimation) — для каждого кандидата намерения i модель генерирует симулированный запрос q̂(i, memory), затем измеряет дистанцию Δ(q, q̂) между реальным и симулированным. Ранжирует кандидаты по близости.

  2. IPE (Intent Prior Estimation) — оценивает P(i | memory) напрямую: "насколько вероятно это намерение учитывая историю". Ранжирует кандидаты.

  3. Агрегация — выбирает намерение с минимальной суммой рангов из MLE и IPE.

Ключевая идея: counterfactual elimination из прагматики — "если бы пользователь действительно имел в виду намерение X, не существовало бы лучшего способа это выразить, чем наблюдаемый запрос".

🔗

Ресурсы

How Does Personalized Memory Shape LLM Behavior? Benchmarking Rational Preference Utilization in Personalized Assistants — RPEval датасет и детали эксперимента: github.com/XueyangFeng/RPEval

Авторы: Xueyang Feng, Weinan Gan, Xu Chen, Quanyu Dai, Yong Liu (Renmin University of China, Huawei Technologies Ltd.)


📋 Дайджест исследования

Ключевая суть

Парадокс: Чем мощнее LLM, тем сильнее она злоупотребляет персонализацией. Модель приклеивает нерелевантные предпочтения к любому запросу — пользователь просит музыку для сна, а ассистент рекомендует энергичные треки с ритмом, потому что в памяти записано "любит активную музыку". Модели правильно игнорируют нерелевантную память только в 6–38% случаев (люди — 86%). Rational Personalization позволяет различать когда использовать память о предпочтениях, а когда игнорировать её. Фишка метода: симулировать альтернативные формулировки запроса для каждого сценария — "как пользователь написал бы, если бы хотел применить предпочтение?". Модель сравнивает симуляции с реальным запросом и выбирает подходящую стратегию. +35% точности интента и +80% исправление ошибок персонализации в коммерческих системах.

Принцип работы

Не спрашивай модель напрямую "учитывать предпочтения или нет?" — она не умеет фильтровать. Запусти Байесовское рассуждение через три шага: (1) Query Likelihood — для каждого варианта (Ignore/Support/Dominate) симулируй как пользователь сформулировал бы запрос, если бы хотел этот сценарий. Измерь расстояние между симуляцией и реальным запросом. (2) Intent Prior — оцени насколько каждый вариант соответствует истории предпочтений. (3) Aggregation — выбери стратегию с минимальной суммой рангов по обоим критериям. Прикол: модель отлично симулирует альтернативы, но плохо принимает решения напрямую — метод использует эту сильную сторону.

Почему работает

LLM страдают смещением к контексту (attraction bias) — когда в памяти есть предпочтения, модель усиливает вероятность токенов из этого контекста при генерации, даже если они не подходят к запросу. Видит "энергичная музыка" в контексте → увеличивает вес слов "ритм", "динамика" → рекомендует быструю музыку для сна. Это системная ошибка, и чем мощнее модель, тем сильнее она цепляется за контекст. Метод использует контрфактуальное устранение: если бы пользователь хотел применить предпочтение, он написал бы запрос иначе. Сравнивая реальный запрос с симуляциями, модель выявляет скрытый интент. Байесовское объединение двух сигналов (формулировка запроса + история предпочтений) снижает ошибки: Query Likelihood ловит подсказки в тексте ("крупные сделки" ≠ "соцсети"), Intent Prior учитывает историю. Сумма рангов выбирает стратегию с наилучшим балансом — это отсекает сужение ответа до предпочтений и смешивание релевантного с нерелевантным.

Когда применять

CRM-системы, персональные ассистенты, чат-боты с историей предпочтений → конкретно для ситуаций когда новый запрос может противоречить записанным предпочтениям, особенно когда пользователь переключает контекст (с соцсетей на офлайн-продажи, с активной музыки на расслабление, с быстрой доставки на качество товара). НЕ подходит для явных случаев "хочу то же, что в прошлый раз" или когда память пустая.

Мини-рецепт

1. Симулируй три сценария: Для каждого варианта (Ignore/Support/Dominate) напиши как пользователь сформулировал бы запрос, если бы хотел именно этот сценарий. Например, для Ignore — как если бы забыл о предпочтениях, для Support — с явным упоминанием предпочтений, для Dominate — сфокусировано только на предпочтениях.
2. Оцени расстояние: Для каждой симуляции измерь отличие от реального запроса (шкала 0-10, где 0 = идентичны). Проранжируй по возрастанию расстояния.
3. Оцени соответствие истории: Для каждого варианта оцени насколько он связан с предпочтениями в памяти (шкала 0-10). Проранжируй по убыванию вероятности.
4. Выбери по минимальной сумме рангов: Сложи ранги из шагов 2 и 3 для каждого варианта. Стратегия с наименьшей суммой — твой выбор. Генерируй ответ согласно выбранной стратегии.

Примеры

[ПЛОХО] : У клиента в CRM записано "любит быструю доставку". Новый запрос: "Хочу качественный товар, готов подождать". Рекомендую с акцентом на скорость доставки — модель приклеила нерелевантное предпочтение, проигнорировав явное "готов подождать".
[ХОРОШО] : У клиента в CRM записано "любит быструю доставку". Новый запрос: "Хочу качественный товар, готов подождать". Шаг 1 (симуляции): - Ignore: "Хочу максимальное качество, сроки не важны" — расстояние 2 (близко) - Support: "Хочу качество + быструю доставку" — расстояние 7 (далеко) - Dominate: "Хочу самую быструю доставку" — расстояние 10 (очень далеко) Шаг 2 (история): Ignore = 8 (явно переключил приоритет), Support = 4, Dominate = 2 Шаг 3 (сумма рангов): Ignore = 1+1 = 2, Support = 2+2 = 4, Dominate = 3+3 = 6 ВЫБОР: Ignore. Клиент явно переключился с скорости на качество, фраза "готов подождать" несовместима с предпочтением быстрой доставки. Рекомендую товары премиум-сегмента с длительным сроком доставки.
Источник: How Does Personalized Memory Shape LLM Behavior? Benchmarking Rational Preference Utilization in Personalized Assistants
ArXiv ID: 2601.16621 | Сгенерировано: 2026-01-26 05:33

Проблемы LLM

ПроблемаСутьКак обойти
Над-персонализация — модель впихивает весь контекст в ответДаёшь модели память о пользователе (предпочтения, история). Задаёшь вопрос. Модель видит в контексте ключевые слова и автоматически подтягивает их в ответ. Даже когда это противоречит текущему запросу. Пример: в памяти "любит быструю музыку", пользователь просит "что послушать перед сном" модель рекомендует быструю музыку для засыпания. Чем мощнее модель — тем сильнее проблема (разрыв с людьми до 40-90%)Добавь шаг явной проверки: "Нужна ли эта информация из памяти для текущего запроса?" Заставь модель сначала порассуждать через контрфактуальный вопрос: "Если бы пользователь хотел использовать эту информацию, разве он не сформулировал бы запрос иначе?"

Методы

МетодСуть
Контрфактуальная проверка контекста — три сценария использования памятиЧто делать: Для каждого элемента памяти/контекста сгенерируй три варианта намерения пользователя: (1) игнорировать память, (2) использовать как дополнение, (3) память определяет ответ. Для каждого варианта попроси модель симулировать "как бы пользователь сформулировал запрос при этом намерении". Сравни с реальным запросом. Оцени насколько каждое намерение соответствует истории предпочтений. Выбери вариант с лучшим балансом между близостью к запросу и соответствием истории. Почему работает: Модель автоматически притягивается к токенам из контекста во время генерации (attraction bias). Контрфактуальное рассуждение заставляет её сначала проверить релевантность явно, через симуляцию альтернатив. Когда применять: есть риск конфликта между памятью и текущим запросом (персонализированные рекомендации, адаптация стиля, использование истории диалога). Когда не работает: простые фактические вопросы без контекста, цена в 2-3x больше токенов неоправдана

Тезисы

ТезисКомментарий
Модель увеличивает вероятность токенов которые видит в контекстеВо время генерации модель непропорционально "прилипает" к словам из памяти или предыдущих сообщений. Если в контексте написано "яркие цвета", модель начнёт генерировать про яркость, даже когда это не нужно. Это автоматический процесс — модель не проверяет нужны ли эти слова. Механизм: токены из контекста получают буст вероятности на этапе декодирования. Применяй: Когда работаешь с длинным контекстом (документы, история диалога, описание пользователя) — добавь явный шаг "Какая информация из контекста релевантна для текущего вопроса?" ДО генерации ответа
Мощные модели хуже игнорируют нерелевантный контекстЧем больше параметров и способностей у модели, тем сильнее она "притягивается" к информации в контексте. Это обратный эффект масштабирования (inverse scaling) — улучшение способностей ухудшает фильтрацию. Разрыв между людьми и топовыми моделями в умении игнорировать нерелевантную память достигает 40-90%. Почему: мощные модели лучше находят семантические связи между контекстом и запросом, но хуже оценивают прагматическую релевантность (нужно ли это здесь и сейчас). Применяй: С топовыми моделями (GPT-4, Claude Opus) особенно важно явно указывать "используй только если релевантно" или добавлять шаг проверки
📖 Простыми словами

How Does Personalized Memory ShapeLLMBehavior? Benchmarking Rational Preference Utilization in Personalized Assistants

arXiv: 2601.16621

Суть проблемы в том, что современные нейронки — это жуткие подлизы. Как только ты добавляешь в их память хоть каплю личной информации, они начинают пихать её в каждый ответ, даже когда их об этом не просили. Это называется attraction bias: модель видит в контексте фразу «люблю красный цвет» и начинает предлагать тебе красные холодильники, красные стратегии маркетинга и красные способы решения дифференциальных уравнений. Вместо того чтобы помогать, AI превращается в навязчивого официанта, который запомнил, что ты один раз заказал острое, и теперь заливает чили даже твой десерт.

Это как если бы ты мимоходом сказал другу, что тебе нравятся собаки, а он в ответ на любой вопрос — от курса доллара до рецепта борща — начал бы вставлять факты о корги. Формально он тебя слушает, но по факту это просто цифровой аутизм. Самое паршивое, что чем умнее модель, тем сильнее она «залипает» на контекст. Это называют inverse scaling: мощные LLM так стараются быть полезными, что в итоге становятся абсолютно неадекватными, игнорируя здравый смысл ради того, чтобы угодить твоим старым привычкам.

Чтобы это исправить, придумали концепцию рациональной персонализации. Исследователи разделили поведение AI на три уровня. L0 — это когда модель вообще забивает на тебя и отвечает как робот по методичке. L1 — это нынешний стандарт, когда AI тупо копипастит всё похожее из истории диалогов. А вот L2 — это уже высший пилотаж, или прагматический уровень. Здесь модель сначала делает обратный вывод: она спрашивает себя, зачем ты это спросил сейчас и поможет ли знание о твоей любви к тишине выбрать именно этот пылесос. Если инфа не в кассу — она её просто игнорирует.

Тестировали эту логику на рекомендациях и адаптации стиля, но принцип универсален для любого персонального ассистента. Будь то ChatGPT, который помнит твои проекты, или корпоративный бот с доступом к твоей почте — без этой фильтрации они превращаются в мусорку из старых фактов. Сейчас мы на этапе перехода от «тупого запоминания» к RP-Reasoner, когда один промпт заставляет модель сначала думать о твоих намерениях, а уже потом лезть в архивы памяти. SEO для памяти становится важнее, чем просто объём контекста.

Короче: персонализация без мозгов — это прямой путь к деградации ответов. Если модель не умеет вовремя «забыть» о твоих предпочтениях, она бесполезна. Главный вывод исследования — нужно внедрять L2-персонализацию, где AI оценивает релевантность через логику, а не через простое совпадение слов. Либо мы научим нейронки фильтровать базар, либо будем вечно получать «ярко-красные» ответы на вопросы о квантовой физике только потому, что три дня назад упомянули любимый цвет.

Работа с исследованием

Адаптируйте исследование под ваши задачи или создайте готовый промпт на основе техник из исследования.

0 / 2000
~0.5-2 N-токенов ~10-30с
~0.3-1 N-токенов ~5-15с