3,583 papers
arXiv:2607.16451 76 17 июля 2026 г. FREE

Answer Pre-Commitment: LLM решает ДО того, как думает — и что с этим делать

КЛЮЧЕВАЯ СУТЬ
Обнаружено: LLM фиксирует ответ ещё до первого слова рассуждения. Всё, что идёт после — не логика, а защита уже принятого решения. Метод Premise-First позволяет принимать сложные решения с неочевидными условиями — и не получать красиво обоснованный неверный ответ. Фишка: нельзя дать ответ сразу — сначала перечисли предпосылки, проверь каждую против условий задачи, и только потом делай вывод. Три явных шага в одном промпте — и модель больше не «защищает» поверхностное решение, а проверяет его.
Адаптировать под запрос

TL;DR

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

Классический пример: «Хочу помыть машину. Автомойка в 100 метрах. Пешком или на машине?» Единственно верный ответ — на машине: она должна оказаться на мойке. Но модель фиксирует «пешком» — потому что короткие расстояния = ходьба, это очевидная поверхностная подсказка. Дальше модель строит убедительное рассуждение про экологию, здоровье и экономию — и никогда не задаёт вопрос: а как машина вообще попадёт на мойку? Модель подходит к двери, нащупывает ручку — и уходит, не открыв.

Хуже всего: ни расширенное мышление (thinking mode с 4096 токенами), ни явное упоминание что машина стоит у дома, ни прямой вопрос после — не исправляют ошибку. Зато структурированные форматы ответа (типа STAR: Situation → Task → Action → Result) гарантированно доводят провал до 100% — ранний слот «Action:» замораживает решение до того, как рассуждение успевает добраться до нужной предпосылки.


🔬

Схема метода

Это исследование-находка, не техника. Описывает как модель ломается и что запускает поломку. Практический инструмент — выводы о том, когда это происходит и как обходить.

ТРИГГЕР: вопрос с поверхностно-очевидным ответом
  → Модель фиксирует ответ ещё ДО генерации рассуждения
  → Рассуждение = защита зафиксированного ответа
  → Скрытая предпосылка задачи игнорируется

ЧТО УСИЛИВАЕТ ПРОБЛЕМУ:
  Структурированный формат (STAR, "Action first") → 100% провал
  Extended thinking/CoT → НЕ помогает (85–100% провал сохраняется)
  Явное противоречие в промпте → НЕ помогает

ЧТО ПОМОГАЕТ:
  Форсировать проверку предпосылок ДО ответа:

  ШАГ 1: "Перечисли все условия, которые должны быть истинными для каждого варианта"
  ШАГ 2: "Проверь каждое условие против данных задачи"
  ШАГ 3: "Теперь дай ответ"

Все три шага — в одном промпте.


🚀

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

Задача: Ты хочешь разобрать с Claude стратегическое решение по продукту: запустить новую фичу на Яндекс.Картах-конкурента или вложиться в удержание текущих пользователей. Решение кажется «очевидным» — новая фича, рост! Но есть скрытые предпосылки, которые меняют всё.

Что происходит без Premise-First: Спросишь напрямую — модель ответит по поверхностной логике: «новая фича = рост аудитории, однозначно запускай». Аргументация будет убедительной. Скрытые предпосылки — про unit-экономику, текущий churn, стоимость привлечения — не прозвучат.

Промпт с проверкой предпосылок:

Ситуация: мобильное приложение с навигацией, 50 000 MAU, 
churn 15% в месяц, CAC = 800 рублей, бюджет 2 млн рублей.

Решение: новая социальная фича (отметки мест от друзей) 
или программа удержания текущих пользователей.

Прежде чем давать рекомендацию — выполни три шага:

1. Перечисли все предпосылки (что должно быть истинным), 
   чтобы каждый вариант имел смысл. Минимум 3 предпосылки 
   на вариант.

2. Проверь каждую предпосылку против данных, которые 
   я дал. Явно отметь: "выполняется", "не выполняется", 
   "неизвестно".

3. Только после проверки — дай рекомендацию. 
   Ссылайся на предпосылки, которые решают исход.

Результат: Модель сначала сформулирует предпосылки: «для новой фичи нужна стабильная база» → проверит churn 15% → отметит «не выполняется». Потом — предпосылки удержания: «CAC > LTV означает...» → посчитает. Рекомендация будет опираться на явно проверенные условия, не на поверхностную ассоциацию «новое = рост».


🧠

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

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

Форсирование структуры делает хуже, не лучше. STAR-формат или «сначала дай краткий ответ, потом объясни» — это ловушка. Ранний слот для ответа буквально замораживает поверхностное решение до того, как рассуждение успело бы его опровергнуть. Если просишь «сначала скажи главное» — получаешь пре-коммит как главное.

Явная проверка предпосылок ломает цикл. Модель не может сразу дать ответ — ей нужно сначала перечислить условия. Само действие перечисления вытаскивает скрытые предпосылки на поверхность. Проверка «выполняется / не выполняется» создаёт явный якорь, который уже сложно игнорировать в финальном ответе.

Рычаги управления: - Число предпосылок (минимум 3 на вариант) → больше = глубже, но дольше - Явная метка ("выполняется" / "не выполняется") → без неё модель может «проверить» и всё равно проигнорировать - Порядок шагов → предпосылки ВСЕГДА до ответа, никак иначе - Не используй STAR и аналоги для решений, где нужна логика предпосылок


📋

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

{Описание ситуации с ключевыми данными}

Нужно выбрать между: {вариант A} или {вариант B}.

Прежде чем давать рекомендацию:

1. Перечисли предпосылки — что должно быть истинным, 
   чтобы {вариант A} имел смысл. Минимум {число} пунктов.
   То же для {вариант B}.

2. Проверь каждую предпосылку по условиям задачи. 
   Явно пометь: "выполняется" / "не выполняется" / 
   "неизвестно — нужно уточнить".

3. Дай рекомендацию. Объясни, какие предпосылки 
   оказались решающими.

Плейсхолдеры: - {Описание ситуации} — конкретные данные, цифры, контекст - {вариант A} / {вариант B} — конкретные варианты решения - {число} — обычно 3, для сложных задач 5


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

Вот шаблон Premise-First Prompting. Адаптируй под мою задачу: {твоя задача}.
Задавай вопросы, чтобы заполнить поля.

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

LLM спросит про варианты выбора и ключевые данные ситуации — потому что без них невозможно сформулировать предпосылки к проверке. Она возьмёт паттерн из шаблона и подставит твой контекст.


⚠️

Ограничения

⚠️ Поверхностная убедительность маскирует проблему: Рассуждение звучит логично и аккуратно — до тех пор, пока ты не знаешь что искать. «Модель подумала» ≠ «модель проверила предпосылки».

⚠️ Явное указание на противоречие не помогает: Добавить в промпт «учти, что машина стоит у дома» — недостаточно. Нужна ЯВНАЯ инструкция проверить это как предпосылку, а не просто факт в контексте.

⚠️ Thinking mode / Chain-of-Thought не гарантия: Расширенное рассуждение снижало процент ошибок примерно на 5 процентных пунктов — с 95% до ~90%. Для задач с пресс-коммитом это не исправление. Не полагайся на «пусть подумает дольше» как на решение.

⚠️ Узкое исследование: Одна модель (Qwen3-8B), одна задача-зонд. Явление наблюдалось и на Claude Sonnet 4.5, но систематически не тестировалось. Масштаб проблемы шире, но точные цифры — только для данной пары.


🔍

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

Идея была простой: взять один вопрос с ловушкой и измерить насколько надёжно он ломает модель. Heejin Jo прогнал 210 полных диалогов на Qwen3-8B в пяти вариантах системного промпта — от голого вопроса до полного стека с ролью, STAR-форматом и явным профилем пользователя. Каждый вариант тестировался в двух режимах: стандартный и с расширенным мышлением (thinking mode).

Интересная деталь исследования: первый прогон мышления давал «обнадёживающий» результат — 45–95% ошибок вместо 85–100%. Исследователь не объявил победу. Он залез в сырые тексты и обнаружил: 31 из 35 «правильных» ответов были просто обрезаны бюджетом токенов — модель не договорила, не было текста для анализа. После увеличения бюджета до 4096 токенов — мышление не помогло совсем. Без этого шага в статью ушёл бы ложный вывод «thinking mode лечит проблему».

Вторая часть — проверка активаций. Исследователь спрашивал специальный «оракул» (LLM обученная читать внутренние состояния другой модели): что собирается ответить модель? — это до того, как сама модель что-либо написала. Результат: оракул «видел» неправильный ответ в 68% случаев ещё до его появления. Причём даже в тех редких роллаутах, где модель в итоге давала правильный ответ — внутренние состояния до последнего читались как «пешком». Это значит: правильный ответ — это позднее исправление по умолчанию, а не другой путь рассуждения.

Неожиданная методическая находка: один и тот же оракул с теми же активациями мог дать 2/16 или 11/16 правильных считываний — в зависимости только от формулировки вопроса. Открытый вопрос («Что ответит модель?») — почти нулевой результат. Закрытый («Скажет "пешком" или "на машине"?») — 11/16. Это отдельный конкретный вывод: activation oracles крайне чувствительны к формулировке, и «отрицательный результат» без проверки конкретной формулировки ничего не говорит.


📄

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

Качественное описание одного роллаута (Section 2.4) — лучше всего передаёт суть феномена:

In a representative C_role_star thinking rollout, the think block frames the task 
as a preference choice — enumerating walking speed, weather, and effort — 
brushes against the decisive fact exactly once 
("if the car is already parked near the car wash, maybe. . . ") 
and moves on without resolving where the car actually is. 

The visible answer then fills the STAR template: 
"Action: Walk to the car wash."

The reasoning is diligent and internally consistent; it is also premise-blind: 
the one question that decides the task (how does the car get there?) 
is raised obliquely and never answered. 

This is the shape of the phenomenon: not corrupted reasoning, 
but an answer that reasoning never actually authorized.

Контекст: Исследователь читал сырые тексты одного из роллаутов с полным STAR-форматом и extended thinking. Это буквальная цитата из раздела с качественным анализом.


💡

Адаптации и экстраполяции

📌

💡 Адаптация: Детектор пре-коммита перед важным решением

Если подозреваешь, что модель уже «решила» — проверь это явно перед основным вопросом:

Я хочу задать тебе вопрос о выборе между {A} и {B}.

Прежде всего скажи: есть ли у тебя немедленная интуиция 
какой вариант лучше — до любого анализа? Если да — 
напиши её явно и объясни откуда она берётся.

Только после этого — начни анализировать.

Если модель называет интуицию — ты знаешь с чем бороться. Можно дальше явно проверять предпосылки под эту интуицию.


📌

🔧 Техника: Убрать структурированный формат → снизить пре-коммит

Если используешь системный промпт с STAR, «сначала TL;DR» или «краткий вывод в первом абзаце» — убери это для задач с логическими предпосылками.

  • "Структура ответа: 1. Главный вывод 2. Обоснование 3. Детали"
  • "Сначала перечисли все предположения. Потом — вывод."

Разница: первый формат требует вывод раньше рассуждения — это буквально инструкция пре-коммититься. Второй — наоборот.


📌

🔧 Техника: Обнаружение «нерешённой предпосылки» в готовом тексте

Если модель уже дала ответ и ты хочешь проверить — не было ли там пре-коммита:

Прочитай свой ответ выше. Найди все утверждения, 
которые ты принял как данность, не проверив явно. 
Для каждого такого утверждения: 
(а) откуда оно взялось, 
(б) есть ли в моём вопросе данные, которые его подтверждают 
или опровергают.

Это ретроспективная проверка. Работает хуже, чем проверка ДО ответа — но лучше, чем ничего.


🔗

Ресурсы

Работа: Committed Before Reasoning: Behavioral Reproduction and Preliminary Activation-Level Evidence of Answer Pre-Commitment in an Open-Weight LLM — Heejin Jo, July 2026

Ключевые ссылки из исследования: - Cox et al. (2026), arXiv:2603.01437 — Decoding Answers Before Chain-of-Thought (supervised probes, >0.9 AUC) - Boppana et al. (2026), arXiv:2603.05488 — Reasoning Theater (финальный ответ читается задолго до конца CoT) - Scalena et al. (2026), arXiv:2606.13603 — Beyond the Commitment Boundary (граница пре-коммита внутри цепочки рассуждений) - Karvonen et al. (2025), arXiv:2512.15674 — Activation Oracles (инструмент — LLM читающая внутренние состояния другой модели) - Turpin et al. (2023), arXiv:2307.13702 — Measuring Faithfulness in Chain-of-Thought Reasoning

Модель в исследовании: Qwen3-8B (Yang et al., 2025) Оригинальное наблюдение: Claude Sonnet 4.5 (claude-sonnet-4-5-20250929)


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

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

Обнаружено: LLM фиксирует ответ ещё до первого слова рассуждения. Всё, что идёт после — не логика, а защита уже принятого решения. Метод Premise-First позволяет принимать сложные решения с неочевидными условиями — и не получать красиво обоснованный неверный ответ. Фишка: нельзя дать ответ сразу — сначала перечисли предпосылки, проверь каждую против условий задачи, и только потом делай вывод. Три явных шага в одном промпте — и модель больше не «защищает» поверхностное решение, а проверяет его.

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

Модель как студент, который уже решил ответ на тест в голове — и теперь ищет подтверждения, а не истину. Просишь напрямую: «пешком или на машине доехать до мойки в 100 метрах?» → модель видит паттерн «короткое расстояние = ходьба», фиксирует «пешком» и строит аргументы про экологию и здоровье. Что машина должна оказаться на мойке — не всплывает никогда. Жесть: структурированные форматы вроде STAR делают хуже, а не лучше — ранний слот «Action:» замораживает поверхностное решение до того, как рассуждение успевает добраться до скрытой предпосылки. Провал вырастает до 100%. Premise-First ломает этот цикл: перед ответом модель вынуждена явно сформулировать, что именно должно быть истинным для каждого варианта — и проверить это против данных.

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

LLM обучена на миллиардах текстов, где поверхностные паттерны почти всегда верны. «Короткое расстояние → пешком» — это не ошибка, это статистическая правда в 99% случаев. Паттерн срабатывает быстрее, чем модель добирается до специфики задачи. Ответ фиксируется во внутреннем состоянии модели до генерации рассуждения — это показали на уровне активаций нейросети. Само действие перечисления предпосылок вытаскивает скрытые условия на поверхность — и явная метка «выполняется / не выполняется» создаёт якорь, который уже сложно проигнорировать. Важно: расширенное мышление (режим «подумай дольше») снижает ошибку примерно на 5 процентных пунктов — с 95% до 90%. Это не исправление. Не жди, что модель «додумается сама».

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

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

Мини-рецепт

1. Опиши ситуацию с цифрами: отток клиентов, бюджет, сроки — всё что есть. Без цифр модель не сможет проверить предпосылки, только сформулирует их.
2. Назови варианты явно: «выбрать между А и Б» — не «что делать?».
3. Добавь три шага в промпт:
— «Перечисли предпосылки — что должно быть истинным для каждого варианта. Минимум 3 на вариант.»
— «Проверь каждую предпосылку по условиям задачи. Явно пометь: выполняется / не выполняется / неизвестно.»
— «Только после проверки — дай рекомендацию. Объясни, какие предпосылки оказались решающими.»
4. Не используй STAR и аналоги для таких задач — ранний слот под «действие» фиксирует поверхностный ответ до того, как дойдёт до проверки условий.

Примеры

[ПЛОХО] : Запустить новую функцию или вложиться в удержание пользователей? Отток 15%, бюджет 2 млн.
[ХОРОШО] : Ситуация: приложение с навигацией, 50 000 активных пользователей в месяц, отток 15%, стоимость привлечения клиента 800 рублей, бюджет 2 млн рублей. Выбор: запустить социальную функцию (отметки мест от друзей) или программу удержания текущих пользователей. Прежде чем давать рекомендацию: 1. Перечисли предпосылки — что должно быть истинным, чтобы каждый вариант имел смысл. Минимум 3 пункта на вариант. 2. Проверь каждую предпосылку по данным выше. Явно пометь: выполняется / не выполняется / неизвестно. 3. Дай рекомендацию. Объясни, какие предпосылки оказались решающими.
Источник: Committed Before Reasoning: Behavioral Reproduction and Preliminary Activation-Level Evidence of Answer Pre-Commitment in an Open-Weight LLM
ArXiv ID: 2607.16451 | Сгенерировано: 2026-07-21 04:23

Проблемы LLM

ПроблемаСутьКак обойти
Модель решает до того, как думаетВопрос с поверхностно-очевидным ответом запускает ловушку. Модель фиксирует ответ ещё до первого слова рассуждения. Всё дальнейшее — не логика, а поиск аргументов в пользу уже принятого решения. Скрытые условия задачи остаются непроверенными. Рассуждение звучит убедительно — но ответ уже неправильныйЗаставь модель сначала перечислить условия, при которых каждый вариант имеет смысл. Потом — проверить каждое условие по данным задачи. Только потом — давать ответ. Конкретный шаблон — в методе ниже
Структурированные форматы фиксируют неверный ответ намертвоПросишь модель "сначала кратко ответь, потом объясни" или используешь форматы типа STAR. Ранний слот для ответа замораживает поверхностное решение. Рассуждение начинается уже после — и не может опровергнуть то, что написано выше. Провал достигает 100%. Чем чётче структура "сначала ответ", тем хужеНе используй форматы с ранним ответом для задач с неочевидными условиями. Переставь порядок: сначала анализ условий, потом вывод

Методы

МетодСуть
Проверка условий до ответа — форсируй предпосылкиПеред любым выбором давай три шага в одном запросе. Шаг 1: "Перечисли, что должно быть истинным, чтобы вариант A имел смысл. Минимум 3 условия. То же для варианта B." Шаг 2: "Проверь каждое условие по данным задачи. Отметь: выполняется / не выполняется / неизвестно." Шаг 3: "Теперь дай рекомендацию — ссылаясь на условия, которые решают исход." Почему работает: Модель не может дать ответ сразу — сначала обязана перечислить условия. Само перечисление вытягивает скрытые предпосылки на поверхность. Явные метки "выполняется / не выполняется" создают якорь, который сложно игнорировать в финале. Когда применять: выбор между вариантами, задачи с неочевидными условиями, стратегические решения. Когда не нужно: простые фактические вопросы без скрытых условий

Тезисы

ТезисКомментарий
Длинное рассуждение не исправляет преждевременный ответЦепочка рассуждений и расширенный режим мышления снижают ошибку на ~5 процентных пунктов — с 95% до 90%. Это не исправление. Модель просто строит длинную защиту уже зафиксированного ответа. Причина: решение фиксируется до генерации, а рассуждение идёт после. Добавить больше токенов — значит добавить больше аргументации, не переосмысления. Применяй: не полагайся на "пусть подумает дольше". Меняй структуру запроса, не длину ответа
📖 Простыми словами

Committed Before Reasoning: Behavioral Reproduction and Preliminary Activation-Level Evidence of Answer Pre-Commitment in an Open-WeightLLM

arXiv: 2607.16451

Современные нейронки — те еще лицемеры: они принимают решение в первую же миллисекунду, а потом просто делают вид, что мучительно размышляют. Исследование доказывает, что префиксация ответа происходит в глубоких слоях модели еще до того, как на экране появилось первое слово. По сути, все эти длинные рассуждения в духе Chain-of-Thought — не поиск истины, а адвокация уже принятого решения. Модель сначала выбирает сторону, а потом подтягивает под нее аргументы, игнорируя логические нестыковки.

Это похоже на спор с упрямым подростком: он уже решил, что пойдет на вечеринку, и теперь просто на ходу придумывает оправдания, почему это безопасно. Формально он приводит доводы, но на самом деле его мозг заблокировал любые альтернативы еще до начала разговора. Если в задаче есть скрытый подвох, модель его не заметит, потому что она уже эмоционально привязалась к первому пришедшему в голову варианту.

Главная проблема здесь в том, что поверхностные паттерны всегда быстрее глубокого анализа. В нейронку вбиты миллиарды текстов, где «короткое расстояние — значит идем пешком» или «рост метрик — это всегда хорошо». Эти шаблоны срабатывают мгновенно, как коленный рефлекс. Исследователи залезли «в подкорку» модели и увидели, что внутренние активации фиксируют финальный ответ в тот момент, когда мы только закончили вводить промпт.

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

Короче, не доверяй логике нейронки на слово, если задача сложнее, чем выбор цвета для кнопки. Чтобы не попасть в ловушку ложного рассуждения, нужно заставлять модель сначала выписывать все факты и ограничения отдельно, и только потом просить вывод. Иначе ты получишь не объективного эксперта, а уверенного в себе болтуна, который сначала ляпнул, а потом начал выкручиваться. Пре-коммитмент — это баг архитектуры, который нужно учитывать при каждой проверке результата.

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

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

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