3,583 papers
arXiv:2610.18298 88 13 окт. 2026 г. FREE

Протокол опровержения «кандидаты × улики»: заставляем модель сначала отбросить версии, а потом выбирать

КЛЮЧЕВАЯ СУТЬ
Два года новых поколений моделей почти не сдвинули результат: от −0,03 до +0,08 по шкале 0–1. Потолок задаёт сила модели, а пол задаёт дисциплина ответа. Протокол опровержения позволяет выбирать одну причину из закрытого списка версий и проверять выбор глазами, даже если модель обычно обрывает рассуждение, ломает формат или скачет между запусками. Модель строит таблицу «версия × улика» и не может ответить, пока не отбросила хотя бы половину версий. Каждое опровержение привязано к номеру улики. Итог: у DeepSeek-V4-Flash +0,27, и целиком за счёт того, что рассуждение наконец заканчивается.
Адаптировать под запрос
⚡

TL;DR

Это протокол опровержения. Модель строит таблицу: по строкам версии (кандидаты), по столбцам улики. В каждой клетке она пишет «подтверждает», «противоречит» или «не относится» и называет улику. Версия, у которой противоречий больше, чем подтверждений, отбрасывается. Вывод разрешён, только когда отброшено не меньше половины версий. Ответ выдаётся одной строкой в фиксированном формате.

Главная находка: в задачах «выбери одну из перечислимых версий» потолок задаёт сила модели, а пол задаёт дисциплина вывода. За два года смена поколений моделей почти не подвинула результат (от −0,03 до +0,08 по шкале 0–1). А ошибки «дисциплины» остаются даже у топовых моделей: рассуждение не заканчивается, формат ответа нарушен, между запусками на одном вопросе результат скачет. У одной модели разброс доходил до 0,39 от всей шкалы, то есть то почти ноль, то почти максимум. Причина в том, что модель по привычке прыгает к ответу по похожести и не проверяет версии по одной.

Протокол ставит модель в рамки: версии перечислены, каждая проверена, ответ в одной строке. Он спасает «недисциплинированные» модели: у DeepSeek-V4-Flash прирост +0,27, и целиком за счёт того, что рассуждение наконец заканчивается. У Kimi K3 разброс упал с 0,218 до 0,007. Но дисциплинированным моделям протокол вредит: у Qwen3 падение на 0,09–0,12. Поэтому его нужно включать избирательно.

🔬

Схема метода

ШАГ 1: Версии (кандидаты) → закрытый список, выход за него запрещён
ШАГ 2: Матрица «кандидат × улика» → в каждой клетке: поддерживает / противоречит / не относится
        + при «противоречит» обязательно указать улику («противоречит E3»)
ШАГ 3: Итог по строке → версия совместима, если подтверждений больше, чем противоречий,
        и ключевая улика подтверждена; иначе несовместима
ШАГ 4: Проверка достаточности → отброшено ≥ ½ версий? Нет → пересмотреть улики
ШАГ 5: Выбор → совместимая версия с наибольшим числом подтверждений
        → одна строка: [Итог]: X
ЗАПРЕТЫ: выбирать по порядку в списке; копировать готовый ответ из примера

Всё это можно сделать в одном промпте, одним проходом.

В полной версии статьи вокруг протокола пять этапов: гипотезы → проверка → причинная цепочка → действие → обратная проверка. Тот же шаблон ниже покрывает все пять.

🚀

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

Задача: Селлер на Wildberries увидел, что заказы по карточке «Худи оверсайз» упали на 35% за неделю. Он хочет не гадать, а получить проверяемый разбор причин, который можно показать партнёру.

Промпт:


Ты аналитик маркетплейса. Ты не гадаешь, а проверяешь версии по уликам.



Заказы по карточке «Худи оверсайз» (WB) упали на 35% за 7 дней. Найди причину.



H1: Конкурент снизил цену
H2: Карточка просела в выдаче из-за падения рейтинга
H3: Закончились ключевые размеры (M, L)
H4: Выросла комиссия или логистика, и мы подняли цену
H5: Сезонный спад спроса
Других версий не добавлять.



E1: Рейтинг карточки 4,8 → 4,7 за неделю
E2: Остатки: M — 0, L — 0, S и XL — по 40 шт.
E3: Наша цена выросла с 2 490 до 2 790 ₽ (4 дня назад)
E4: Топ-3 конкурентов: цены не менялись
E5: Поисковые запросы по «худи оверсайз» в категории: −5% к прошлой неделе
E6: Позиция по главному запросу: 12 → 31
KEY: E2



1. Построй матрицу: строки H1–H5, столбцы E1–E6. В каждой клетке одно из: support / oppose / irrelevant.
2. Для каждого oppose обязательно укажи улику: «oppose — противоречит E4».
3. Версия совместима, если support больше, чем oppose, и ключевая улика не противоречит версии.
4. Если несовместимы меньше половины версий, напиши «Недостаточно: пересмотри улики» и перепроверь самые спорные клетки.
5. Выбери совместимую версию с наибольшим числом support. Порядок в списке и примеры не учитывай.



Сначала матрица, потом итог по строкам, потом одна строка:
[Главная причина]: Hx

Результат: Модель выдаст таблицу 5×6 с пометками в клетках и ссылками на улики при каждом «противоречит». Дальше будет итог по каждой версии (совместима или нет), проверка «отброшено не меньше половины» и финальная строка в заданном формате. Каждый вывод можно проверить глазами по клеткам.

🧠

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

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

Сильная сторона. Модель хорошо заполняет клетки по маленьким локальным вопросам: «улика E3 поддерживает версию H1 или противоречит ей?» С такой мелкой задачей она справляется надёжнее, чем с «найди причину».

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

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

📋

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


Ты аналитик. Ты не гадаешь, а проверяешь версии по уликам.



{задача: что нужно определить или выбрать}



{H1: версия}
{H2: версия}
{H3: версия}
Других версий не добавлять.



{E1: улика}
{E2: улика}
{E3: улика}
KEY: {номер ключевой улики}



1. Построй матрицу: строки — версии, столбцы — улики. В каждой клетке одно из: support / oppose / irrelevant.
2. Каждый oppose обоснуй ссылкой на конкретную улику: «oppose — противоречит E_».
3. Версия совместима, если support больше, чем oppose, и ключевая улика её не опровергает. Иначе несовместима.
4. Проверка достаточности: несовместимых версий должно быть не меньше половины. Если меньше, напиши «Недостаточно» и перепроверь спорные клетки.
5. Выбери совместимую версию с наибольшим числом support. Порядок в списке и примеры не влияют на выбор.
6. Если нужна рекомендация, выведи действие, которое прямо следует из выбранной версии. Затем проверь его на запреты и риски: {ограничения}.



Матрица → итог по строкам → проверка достаточности → одна строка:
[{название итога}]: {версия}

Что подставлять: - {задача}: один вопрос (диагностика, выбор причины, выбор варианта). - Версии: 3–7 штук; если не знаешь, попроси модель сначала сгенерировать список и согласуй его. - Улики: факты, цифры, наблюдения, лучше пронумерованные. - {ограничения}: что нельзя рекомендовать (бюджет, закон, риски).

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

Вот шаблон протокола опровержения «кандидаты × улики». Адаптируй под мою задачу: [твоя задача].
Задавай вопросы, чтобы заполнить поля.

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

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

⚠️

Ограничения

⚠️ Дисциплинированным моделям протокол вредит: на моделях, которые и так рассуждают аккуратно и завершают ответ, качество в среднем падает (порядка 0,09–0,12 по шкале 0–1). Сначала проверь свою модель без протокола. Включай его, если ответы то обрываются, то нарушают формат, то скачут между запусками.

⚠️ Только задачи с перечислимыми версиями: метод требует закрытого списка кандидатов и набора улик. Для открытых, творческих задач и задач «придумай» он не подходит.

⚠️ Протокол не поднимает потолок: он убирает сбои дисциплины. Если модель не знает предметной области или ошибается в клетках, матрица зафиксирует ошибку аккуратно, но не исправит её.

⚠️ Клетки судит та же модель: ошибки в отдельных клетках возможны. Протокол делает их видимыми, но не убирает. В статье формат проверяется кодом, в чате ты проверяешь клетки глазами.

⚠️ Один домен: основной тест был на диагностике в традиционной китайской медицине, плюс отдельная проверка на математике. Перенос на бизнес-задачи логичен, но в статье напрямую не измерялся.

⚠️ Больше токенов и длиннее ответ: матрица занимает место, на простых вопросах это лишнее.

🔍

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

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

Затем проверили гипотезу «протокол помогает там, где дисциплины нет, и мешает там, где она есть». Она подтвердилась. У DeepSeek-V4-Flash прирост +0,27, и разбор показал, что он целиком от спасения незавершённых рассуждений. У Kimi K3 разброс упал с 0,218 до 0,007. У Qwen3-4B и Qwen3-32B (с одинаковым бюджетом токенов и контролем температуры) протокол стоил 0,09–0,12.

Абляции (по очереди убирали части протокола) показали два интересных результата. Во-первых, основную цену на сильных моделях платит слой жёсткого формата, а связка причинной цепочки и формата работает в разные стороны в разных условиях. Во-вторых, удаление всех вставленных знаний не изменило оценку: эффект несёт структура, а не знания. Наконец, протокол переделали под математику с подброшенными ложными предпосылками. Он нашёл их в 89,8% случаев при 6,8% ложных тревог и вернул точность к уровню без дезинформации. Правда, на одной модели с небольшим запасом для улучшения.

Вывод для практики: не накручивай структуру на всё подряд. Сначала посмотри, где у твоей модели ломается дисциплина, и вводи рамки именно туда.

💡

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

🔧 Техника: перенос на проверку предпосылок → защита от ложных вводных

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

Перед решением задачи:
1. Выпиши все предпосылки из условия (P1, P2, ...).
2. Проверь каждую по трём пунктам: числа верны? связи верны? не противоречит ли другим предпосылкам? Клетки: ok / fail / n/a, при fail укажи, что не сходится.
3. Каждую предпосылку с fail перепиши в виде напоминания: «Напоминание: на самом деле ...».
4. Реши задачу, опираясь только на проверенные и исправленные предпосылки.

🔧 Техника: добавить блок «ключевая улика» → быстрее отсев

Если в задать KEY: E_, версии, которым ключевая улика противоречит, автоматически несовместимы. Полезно, когда есть факт «без него версия невозможна» (например, нулевые остатки на складе для версии «спрос упал»).

Это мои адаптации, их в статье нет в таком виде. Первая основана на описанной в статье двухэтапной схеме, вторая на правиле «ключевой улики».

🔗

Ресурсы

  • Статья: Output Discipline Sets the Floor: A Falsification-Guided, Model-Agnostic Agent Protocol for Auditable Hypothesis-Driven Decision Making
  • Авторы: Jing Liu, Yongxing Qi, Ping Yao, Ting Wu (Hangzhou Innovation Institute, Beihang University; 32007 Unit, Beijing)
  • Бенчмарк: TCMEval-SDT (определение синдромов в традиционной китайской медицине, 200 случаев)
  • Связанные работы: исследование распространения ложных предпосылок по цепочке рассуждений (10–72% потерь точности); самокоррекция без внешней обратной связи; MedAgents, MDAgents (многоагентные подходы для сравнения)
  • Разбор опирается на доступную часть статьи (аннотация, введение, описание фреймворка и протокола); подробные таблицы результатов и приложения в материале отсутствовали.

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

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

Два года новых поколений моделей почти не сдвинули результат: от −0,03 до +0,08 по шкале 0–1. Потолок задаёт сила модели, а пол задаёт дисциплина ответа. Протокол опровержения позволяет выбирать одну причину из закрытого списка версий и проверять выбор глазами, даже если модель обычно обрывает рассуждение, ломает формат или скачет между запусками. Модель строит таблицу «версия × улика» и не может ответить, пока не отбросила хотя бы половину версий. Каждое опровержение привязано к номеру улики. Итог: у DeepSeek-V4-Flash +0,27, и целиком за счёт того, что рассуждение наконец заканчивается.

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

Работает как следователь с доской. Версии записаны в строки, улики в столбцы, в каждой клетке один вердикт: поддерживает, противоречит или не относится. Если пишешь «противоречит», назови улику, например «противоречит E3». Версия, где противоречий больше, чем подтверждений, вылетает. Пока не вылетела половина версий, выбирать нельзя. Дальше берёшь выжившую версию с наибольшим числом подтверждений. Ответ пишешь одной строкой: [Итог]: X. Запреты остаются всегда: не выбирать по порядку в списке и не копировать ответ из примера. Всё это делается в одном промпте, за один проход.

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

Модель по привычке отвечает по ассоциации. Увидела «упали заказы» и сразу говорит «конкуренты». Версии она не перебирает, поэтому проверить ответ нечем. Просьба «покритикуй себя» без опоры почти не помогает. Самопроверка без структуры не улучшает рассуждение, а иногда ухудшает. Даже прямое «исправь ошибку» срабатывает меньше чем в половине случаев. Зато на мелких вопросах модель сильна. «Улика E3 поддерживает версию H1 или противоречит ей?» — с этим она справляется надёжнее, чем с «найди причину». Протокол режет большую задачу на такие клетки. Эффект даёт структура, а не знания: когда из протокола убрали все вставленные знания предметной области, результат не изменился. Жесть: у Kimi K3 разброс между запусками упал с 0,218 до 0,007. А у одной из моделей без протокола результат гулял на 0,39 шкалы, от почти нуля до почти максимума. Есть и обратная сторона. Модели, которые и так рассуждают аккуратно, протокол портит: у Qwen3 падение на 0,09–0,12.

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

Диагностика и выбор из перечислимых версий → причина падения продаж, поломки, оттока клиентов, выбор одного варианта из 3–7 → особенно когда у тебя есть набор фактов, а ответ нужно показать партнёру или начальнику. Включай протокол, если модель то обрывает ответ, то ломает формат, то по-разному отвечает на один вопрос. Сначала прогони задачу без протокола и посмотри, что за сбои. НЕ подходит для творческих и открытых задач вида «придумай». Нет смысла и там, где модель не знает предметную область: матрица аккуратно зафиксирует её ошибку, но не исправит. Для простых вопросов это лишний расход токенов.

Мини-рецепт

1. Сформулируй один вопрос: что именно нужно определить. Не «разберись во всём», а «в чём причина X».
2. Закрой список версий: от 3 до 7 штук, с пометкой «Других версий не добавлять». Не знаешь версий — попроси модель сначала накидать список, отредактируй его сам и только потом запускай протокол.
3. Пронумеруй улики: E1, E2, E3 — факты, цифры, наблюдения. Без номеров ссылки «противоречит E3» работать не будут.
4. Назови ключевую улику: <ключ>KEY: E2. Это то, без чего версия не живёт.
5. Опиши матрицу: в клетках support / oppose / irrelevant, у каждого oppose ссылка на улику.
6. Поставь порог: отброшено не меньше половины версий, иначе «Недостаточно» и перепроверка спорных клеток. Для рискованных решений ужесточи до двух третей.
7. Зафиксируй вывод: одна строка [Главная причина]: Hx. Добавь запреты: не выбирать по порядку, не копировать пример.
8. Проверь клетки глазами: модель судит сама себя, ошибки в отдельных клетках возможны. Зато теперь их видно.

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

Примеры

[ПЛОХО] : Заказы по карточке «Худи оверсайз» упали на 35% за неделю. Почему? (Получишь уверенное «конкуренты снизили цену». Версии не перебраны, проверить нечем.)
[ХОРОШО] : Ты аналитик маркетплейса. Ты не гадаешь, а проверяешь версии по уликам. Задача: заказы по карточке упали на 35% за 7 дней, найди причину. Версии: H1 конкурент снизил цену; H2 просела выдача из-за рейтинга; H3 закончились размеры M и L; H4 выросла комиссия и мы подняли цену; H5 сезонный спад. Других версий не добавлять. Улики: E1 рейтинг 4,8 → 4,7; E2 остатки M и L равны нулю, S и XL по 40 штук; E3 наша цена выросла с 2 490 до 2 790 рублей 4 дня назад; E4 цены у топ-3 конкурентов не менялись; E5 спрос по категории −5%; E6 позиция по главному запросу 12 → 31. KEY: E2. Построй матрицу: строки H1–H5, столбцы E1–E6, в клетках support / oppose / irrelevant. Каждый oppose обоснуй ссылкой на улику. Версия совместима, если support больше oppose и ключевая улика ей не противоречит. Несовместимых должно быть не меньше половины, иначе напиши «Недостаточно» и перепроверь. Выбери совместимую версию с наибольшим числом support. Порядок в списке не учитывай. В конце одна строка: [Главная причина]: Hx (Получишь таблицу 5×6, где H1 вылетает по E4, H5 по E5, а каждое «противоречит» привязано к конкретной улике. Селлер покажет её партнёру и не будет спорить на словах.)
Источник: Output Discipline Sets the Floor: A Falsification-Guided, Model-Agnostic Agent Protocol for Auditable Hypothesis-Driven Decision Making
ArXiv ID: 2610.18298 | Сгенерировано: 2026-10-14 23:40

Проблемы LLM

ПроблемаСутьКак обойти
Модель отвечает по ассоциации и не перебирает версии. Просьба «проверь себя» почти не помогаетЗадача «найди причину» или «выбери вариант». Модель хватает первую похожую версию. Увидела «упали заказы» и сразу сказала «конкуренты». Остальные версии не проверены. Ответ нельзя проверить глазами. Просьба «покритикуй свой ответ» без опоры почти не меняет результат, иногда делает хуже. Модель защищает первую версиюДай внешнюю опору вместо общей просьбы о самокритике. Задай закрытый список версий и пронумерованные улики. Пусть модель проверяет версии по одной, по каждой улике. Подробнее — в методе ниже

Методы

МетодСуть
Матрица «версия × улика» с отбрасыванием — проверяемый выбор причиныЧто делать. Дай модели закрытый список версий (3–7) и пронумерованные улики. Попроси таблицу: строки — версии, столбцы — улики. В каждой клетке одно из трёх: «подтверждает», «противоречит», «не относится». Каждое «противоречит» нужно обосновать номером улики: «противоречит E3». Версия совместима, если подтверждений больше, чем противоречий. Выбрать нужно совместимую версию с наибольшим числом подтверждений. Ответ — одной строкой: [Итог]: H2. Проверка достаточности: должно быть отброшено не меньше половины версий. Если меньше, модель пишет «Недостаточно» и перепроверяет спорные клетки. Это не даёт остановиться на первой подходящей версии. Ключевая улика: задай одну улику «без неё версия не живёт». Версия, которой она противоречит, отпадает сразу. Запреты: «не выбирай по порядку в списке», «не копируй пример». Они защищают от ленивого ответа. Почему работает. Большая задача «найди причину» превращается в сотни мелких вопросов: «улика E3 поддерживает H1 или нет?». На мелких вопросах модель надёжнее. Обязательная ссылка на улику не даёт отметить клетку наугад. Порог отбрасывания заставляет реально сравнивать версии. Одна строка в конце позволяет проверить формат кодом. Рычаги. Для рискованных решений подними порог до двух третей. Для быстрых — ослабь. Строгий список можно ослабить: разреши добавить одну версию. Формат одной строки убери, если читаешь ответ глазами. Когда да: диагностика, поиск причины, выбор из конечного набора вариантов, нужен разбор, который можно показать другим. Когда нет: творческие и открытые задачи. Также нет, если версии и улики нельзя перечислить. Если не знаешь версий, сначала попроси модель сгенерировать список и согласуй его. Матрица не исправит ошибки знаний. Если модель путает предметную область, она аккуратно зафиксирует ошибку. Клетки судит та же модель, поэтому проверяй их глазами. Метод удлиняет ответ и лишний на простых вопросах
📖 Простыми словами

Output Discipline Sets the Floor: A Falsification-Guided,Model-AgnosticAgentProtocol for Auditable Hypothesis-Driven Decision Making

arXiv: 2610.18298

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

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

Суть метода сводится к механике: модель строит матрицу гипотез и улик, где каждая версия методично проверяется фактами. В каждой ячейке LLM обязана поставить метку: «подтверждает», «противоречит» или «не относится», обязательно сославшись на конкретную улику. Версия с перевесом минусов летит в корзину. Главный предохранитель — порог отсева в 50%: модель не имеет права делать вывод, пока не разгромит хотя бы половину версий, а финальный ответ выдает строго в одну строку фиксированного формата.

В исследовании это гоняли на кейсе с селлером, у которого заказы на карточке просели на 35% за неделю, но принцип абсолютно универсален. Тот же фреймворк идеально ложится на поиск сбоев на сервере, аудит просевшего трафика или медицинскую диагностику. Везде, где гадание на кофейной гуще грозит сливом бюджета, дисциплина структуры вывода служит тем самым железобетонным полом, ниже которого модель не упадет.

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

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

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

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