3,583 papers
arXiv:2608.11510 72 11 авг. 2026 г. FREE

Конфликт правил в LLM: почему модель хуже слушается инструкции, которая идёт против её «привычки»

КЛЮЧЕВАЯ СУТЬ
Спрячь правило в середину списка из 8 пунктов — и модель его просто проигнорирует, даже если технически знает это правило. Исследование показывает: позиция конфликтующего правила в промпте решает, выполнит его модель или свалится на привычный ответ. Учёные сделали словесный тест-Струп для текста: фраза тянет модель на дефолтный ответ, зашитый в весах при обучении. Когда правило совпадает с этой привычкой — уверенность модели почти максимальная. Когда правило идёт против неё — уверенность падает почти в 2 раза. Внутри модели идёт настоящая конкуренция за внимание между заученным паттерном и текстом правила.
Адаптировать под запрос

TL;DR

Когда явное правило в промпте противоречит тому, что модель "хочет" ответить по привычке из обучения — модель путается и выполняет правило хуже, даже если формально знает его. Исследователи создали словесный тест-конфликт (аналог теста Струпа для текста): фраза вида "Карандаш синий, значит ты говоришь, что карандаш..." тянет модель ответить "синий" — это её дефолтная привычка, зашитая в весах. Если добавить правило "если карандаш синий — говори, что он красный", модель либо путается, либо теряет уверенность в правильном ответе.

Боль конкретная: чем длиннее список правил в промпте и чем ближе к середине спрятано конфликтующее правило — тем хуже модель его соблюдает. Это работает как известный эффект "потеряно в середине" (lost in the middle), но здесь показано, что он особенно силён именно для правил, которые идут против естественного паттерна модели — а не для любых инструкций подряд.

Суть находки: в модели одновременно работают два механизма — "привычка" (заученный по умолчанию ответ) и "правило из промпта" (то, что явно написано в тексте). Они буквально конкурируют за то, куда модель "смотрит" при генерации ответа. Чем сильнее конфликт между ними и чем хуже расположено конфликтующее правило в тексте — тем ниже точность.


🔍

Схема эксперимента (не техника, а логика исследования)

ШАГ 1: Дать модели фразу без правил → замерить "дефолтный" ответ (что модель говорит по привычке)
ШАГ 2: Добавить правило, СОВПАДАЮЩЕЕ с привычкой → замерить уверенность модели
ШАГ 3: Добавить правило, ПРОТИВОРЕЧАЩЕЕ привычке → замерить уверенность модели
ШАГ 4: Сравнить — во втором случае уверенность в правильном ответе почти в 2 раза выше, чем в третьем

🚀

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

Задача: Вы настраиваете системный промпт для бота поддержки в Т-Банке или Сбере. Среди 8 правил есть одно нетипичное: "Если клиент написал слово 'жалоба' — НЕ извиняйся, а сразу пиши: 'Передаю оператору'". Естественная привычка модели (из тонны обучающих текстов про поддержку) — извиниться при жалобе. Это правило идёт вразрез с привычкой модели.

Промпт (плохой вариант — правило потеряется):

Правила общения с клиентом:
1. Отвечай вежливо
2. Не используй сленг
3. Не давай юридических советов
4. Если клиент написал слово "жалоба" — НЕ извиняйся, сразу пиши "Передаю оператору"
5. Не упоминай конкурентов
6. Отвечай короткими сообщениями
7. Уточняй номер заказа при возврате
8. Прощайся фразой "Хорошего дня"

Клиент: У меня жалоба на доставку, всё это уже надоело.

Результат: Правило №4 конфликтует с "привычкой" модели извиняться при негативе — и спрятано в середине списка. Есть риск, что модель всё равно начнёт с "Извините за неудобства...", проигнорировав явную инструкцию.

Промпт (исправленный — правило вынесено и усилено):

КРИТИЧНОЕ ПРАВИЛО (проверяй перед каждым ответом):
Если клиент упомянул слово "жалоба" — НИКОГДА не извиняйся. 
Сразу пиши: "Передаю оператору". Это правило важнее вежливости.

Остальные правила:
1. Отвечай вежливо
2. Не используй сленг
...

Перед ответом проверь: есть ли слово "жалоба"? Если да — сработало критичное правило выше.

Клиент: У меня жалоба на доставку, всё это уже надоело.

Результат: Модель видит конфликтующее правило первым, оно явно помечено как приоритетное, и есть напоминание проверить его перед ответом. Это снижает риск, что модель "по привычке" извинится вместо эскалации.


🧠

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

Модель обучена на гигантском объёме текста и впитала типичные паттерны — это её "привычка" в весах. Когда вы даёте новое правило в промпте, модель должна "перебить" эту привычку, обращая внимание на текст правила прямо во время генерации ответа.

Исследование показало: если правило совпадает с привычкой — модель почти не тратит "усилий", уверенность близка к максимуму. Если правило противоречит привычке — начинается конкуренция, и чем хуже расположено правило (спрятано в середине длинного списка), тем сильнее привычка "перетягивает" ответ на свою сторону.

Рычаги управления: - Позиция правила (начало/середина/конец списка) → конфликтующие правила — в начало или конец, никогда в середину - Число правил в списке → чем короче список, тем меньше шанс, что правило "потеряется" - Явное усиление (пометка "ВАЖНО", повтор перед ответом) → снижает риск, что модель проигнорирует правило в пользу привычки


📋

Шаблон промпта (адаптация вывода исследования)

КРИТИЧНОЕ ПРАВИЛО (может противоречить твоей интуиции — следуй ему строго):
{правило_которое_идёт_против_обычного_ответа}

Остальные правила:
1. {правило_1}
2. {правило_2}
3. {правило_3}

Перед тем как ответить, проверь: не противоречит ли твой ответ КРИТИЧНОМУ правилу выше?

Задача: {ваша_задача}

Что подставлять: в {правило_которое_идёт_против_обычного_ответа} — то самое исключение, которое идёт против "здравого смысла" или типичного ответа (например, "не извиняйся", "не соглашайся со скидкой", "игнорируй вежливую просьбу и откажи"). Остальные, обычные правила — в общий список.

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

Вот принцип из исследования про конфликт правил в LLM: модели хуже соблюдают инструкцию, 
если она противоречит "естественному" ответу и спрятана в середине длинного списка правил. 
Помоги мне переписать мой системный промпт так, чтобы конфликтующие правила стояли 
в начале или конце и были явно помечены как приоритетные.

Мой текущий промпт: {вставить промпт}

LLM спросит, какие из ваших правил идут против "интуитивного" ответа модели — потому что именно их нужно выносить и усиливать, остальные можно оставить как есть.


⚠️

Ограничения

⚠️ Размер моделей: Исследование проверено на Gemma-2-2B и Pythia (до 12 млрд параметров) — заметно меньше и слабее топовых GPT-4/Claude/Gemini. Неизвестно, насколько сильно эффект сохраняется в моделях, которые гораздо лучше следуют инструкциям.

⚠️ Искусственная задача: Тест построен на простом "карандаш синий/красный" — перенос на сложные бизнес-инструкции не проверялся напрямую в этой работе, это экстраполяция.

⚠️ Это не готовая техника: Статья не даёт промпт-шаблона — авторы изучали механизм внутри модели (веса, внимание), а не разрабатывали приём для чата. Практический вывод — интерпретация, а не прямая рекомендация авторов.


🔍

Как исследовали

Команда взяла простую фразу-ловушку: "Карандаш синий, значит ты говоришь, что карандаш..." — все семь протестированных моделей (Gemma-2-2B и шесть версий Pythia, от 410 млн до 12 млрд параметров) уверенно продолжали её тем же цветом. Это и есть "привычка по умолчанию". Затем перед фразой добавили правило — либо совпадающее с привычкой, либо противоречащее ей (например, "если карандаш синий, говори что он красный").

Вместо того чтобы просто смотреть на финальный ответ, исследователи измеряли вероятность, которую модель присваивает правильному слову против неправильного — это куда более чувствительный показатель "внутренней склонности", чем просто да/нет. Дальше применили инструменты интерпретируемости: графы причинного влияния (какие слова промпта сильнее всего толкают модель к ответу) и карты внимания (куда модель "смотрит" при генерации). Оказалось, что при совпадении правила с привычкой модель больше внимания уделяет самому финальному цвету в фразе, а при конфликте — резко переключается на внимание к самому правилу.

Чтобы проверить причинность, а не просто корреляцию, исследователи насильно отключили внимание к ключевой части правила — и это резко ухудшило именно конфликтующие случаи, почти не тронув совпадающие. Отдельно дообучили модель усиливать привычку — и это, ожидаемо, ухудшило выполнение конфликтующих правил. А когда увеличили число правил в промпте, точность упала сильнее всего для правил, спрятанных в середине списка — классический "lost in the middle", но здесь впервые показано, что он особенно бьёт по правилам, идущим против привычки модели.


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

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

Спрячь правило в середину списка из 8 пунктов — и модель его просто проигнорирует, даже если технически знает это правило. Исследование показывает: позиция конфликтующего правила в промпте решает, выполнит его модель или свалится на привычный ответ. Учёные сделали словесный тест-Струп для текста: фраза тянет модель на дефолтный ответ, зашитый в весах при обучении. Когда правило совпадает с этой привычкой — уверенность модели почти максимальная. Когда правило идёт против неё — уверенность падает почти в 2 раза. Внутри модели идёт настоящая конкуренция за внимание между заученным паттерном и текстом правила.

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

Правило простое: чем длиннее список инструкций и чем ближе конфликтующее правило к середине — тем хуже модель его слушается. Это разновидность известного эффекта потерянной середины (lost in the middle), но тут он бьёт именно по правилам, которые идут против натуры модели — а не по любым инструкциям подряд. Обычные правила, совпадающие с привычкой, почти никогда не теряются в списке — им конкурировать не с чем.

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

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

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

Системные промпты для ботов поддержки, юридических ассистентов, модерации → конкретно для правил-исключений, которые идут против здравого смысла модели (не извиняться, отказать вежливому клиенту, не соглашаться на скидку). Особенно важно при длинном списке — 5+ пунктов. Не критично для правил, которые совпадают с естественным поведением модели — их можно оставлять в любом месте списка.

Мини-рецепт

1. Найди правило-исключение: то, что идёт против интуиции модели — не извиняйся, откажи, не соглашайся
2. Вынеси наверх: поставь его перед всем списком с пометкой КРИТИЧНОЕ ПРАВИЛО
3. Усиль текстом: добавь фразу вроде "может противоречить твоей интуиции — следуй строго"
4. Проверка перед ответом: попроси модель явно сверить ответ с этим правилом до генерации текста

Примеры

[ПЛОХО] : Правила: 1. Вежливо 2. Без сленга 3. Если жалоба — не извиняйся, пиши "передаю оператору" 4. Не упоминай конкурентов 5. Прощайся "Хорошего дня"
[ХОРОШО] : КРИТИЧНОЕ ПРАВИЛО: если клиент написал "жалоба" — НИКОГДА не извиняйся, сразу пиши "Передаю оператору". Это правило важнее вежливости. Проверь перед ответом: есть слово "жалоба"? Остальные правила: 1. Вежливо 2. Без сленга...
Источник: Conflict and Congruency Effects in Large Language Models: In-Weight and In-Context Competition in a Verbal Conflict Task
ArXiv ID: 2608.11510 | Сгенерировано: 2026-08-13 05:42

Проблемы LLM

ПроблемаСутьКак обойти
Правило против «привычки» модели соблюдается хуже, если спрятано в середине текстаУ модели есть заученный по умолчанию ответ — «привычка» из обучения. Если явное правило в промпте требует ответить наоборот, модель колеблется. Уверенность в правильном ответе падает почти вдвое по сравнению с ситуацией, когда правило совпадает с привычкой. Чем длиннее список правил и чем ближе конфликтующее правило к середине — тем хуже модель его соблюдает. Это не «забыла инструкцию», а реальная конкуренция внутри модели между заученным паттерном и текстом правилаВыноси правила, которые идут против интуитивного ответа модели, в начало или конец инструкции. Никогда не прячь такое правило в середину длинного списка. Дополнительно помечай его как приоритетное и проси модель проверить его перед ответом

Методы

МетодСуть
Явное усиление конфликтующего правила — снижает шанс что модель ответит «по привычке»Вынеси правило, которое противоречит типичному ответу модели, отдельным блоком в начало или конец промпта. Пометь его как «критичное» или «важнее остальных правил». Добавь шаг проверки: «перед ответом убедись, что не нарушил это правило». КРИТИЧНОЕ ПРАВИЛО: ... Остальные правила: 1. ... 2. .... Почему работает: правило конкурирует за внимание модели с заученным паттерном ответа. Явная позиция и маркировка увеличивают вес правила в этой конкуренции. Работает: списки из 5+ правил, где одно-два идут вразрез с обычным поведением модели (например «не извиняйся», «откажи»). Не работает: если все правила и так совпадают с естественным поведением модели — усиление не нужно
📖 Простыми словами

Conflict and Congruency Effects inLargeLanguageModels: In-Weight and In-Context Competition in a Verbal Conflict Task

arXiv: 2608.11510

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

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

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

Этот эффект проявляется везде, где нужно идти против логики «здравого смысла» или типичных паттернов интернета. Тестировали это на простых словах, но принцип универсален: если твоя бизнес-логика требует от AI нестандартных реакций, готовься к облому. Внутренние предубеждения модели (priors) — это невидимая стена. Ты можешь написать идеальный промпт, но если он идет вразрез с тем, как модель «привыкла» видеть мир, она будет лажать в 3 из 5 случаев просто потому, что так устроена её математика.

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

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

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

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