3,583 papers
arXiv:2606.13649 74 11 июня 2026 г. FREE

Operadic Consistency: детектор ошибок LLM через сравнение прямого и пошагового ответа

КЛЮЧЕВАЯ СУТЬ
Стандартная проверка "спроси три раза" не работает против системных ошибок. Модель стабильно выдаёт одну и ту же уверенную ложь при каждом повторе — как просить двоечника пересмотреть контрольную: найдёт ровно те же ошибки. Operadic Consistency (OC) даёт возможность ловить именно этот тип ошибок — через внутреннее противоречие, без единого эталонного ответа. Фишка: прямой и пошаговый ответ на один вопрос физически обязаны совпадать — если разошлись, прямой путь перепрыгнул через рассуждение и что-то потерял. Расхождение = сигнал тревоги.
Адаптировать под запрос

TL;DR

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

LLM часто уверенно отвечает на сложные многошаговые вопросы — и ошибается. Особая боль: модель при повторном вопросе даёт похожий ответ, поэтому стандартный приём "задай три раза и сравни" (self-consistency) не ловит ошибку. Модель стабильно галлюцинирует. Это как проверять себя, переписывая задачу теми же словами — найдёшь ровно те же ошибки.

OC ловит другое: внутреннее противоречие. Задаёшь вопрос напрямую → получаешь ответ A. Раскладываешь тот же вопрос на шаги → получаешь ответ B. A ≠ B — сигнал тревоги. Пошаговый путь при этом обычно надёжнее прямого.


🔬

Схема метода

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

ШАГ 1: Прямой ответ
  → Спроси сложный вопрос напрямую → получи Ответ A

ШАГ 2: Пошаговый ответ
  → Разбей вопрос на под-вопрос Q1 и под-вопрос Q2
  → Спроси Q1 → получи промежуточный ответ a1
  → Подставь a1 в Q2 → спроси Q2 → получи Ответ B

ШАГ 3: Сравнение
  → A = B → доверяй
  → A ≠ B → прямой ответ под подозрением, Ответ B надёжнее

Метод работает в одном промпте: можно попросить модель сделать оба пути сразу и сравнить.


🚀

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

Задача: Ты готовишься к переговорам с инвестором. Хочешь понять: был ли Telegram прибыльным в год, когда набрал 100 миллионов новых пользователей?

Это многошаговый вопрос — сначала нужна дата, потом финансовые данные за тот год. Именно такие вопросы модели часто "склеивают" в один уверенный ответ, который на деле неверен.

Промпт:

Ответь на вопрос двумя способами:

СПОСОБ 1 — прямой ответ:
Был ли Telegram прибыльным в год, когда он набрал 100 миллионов новых пользователей?

СПОСОБ 2 — пошаговый:
Шаг 1: В каком году Telegram набрал 100 миллионов новых пользователей за год?
Шаг 2: Используя ответ из шага 1 — был ли Telegram прибыльным в [тот год]?

В конце сравни два ответа. Если они расходятся — объясни, какому больше доверяешь и почему.

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


🧠

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

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

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

OC использует другую слабость как инструмент. Когда модель идёт пошагово, она явно фиксирует промежуточный факт — и дальше рассуждает от него. Это другой паттерн генерации, который активирует другие связи. Если прямой путь и пошаговый приходят к одному — вероятность правоты высокая. Если расходятся — прямой путь "перепрыгнул" через рассуждение и что-то потерял.

Рычаги управления: - Сколько шагов — для более сложных вопросов можно сделать 3-4 под-вопроса, не только 2 - Инструкция "объясни расхождение" — добавь в промпт "если ответы разные — объясни почему", чтобы модель сама диагностировала ошибку - Явная формулировка подстановки — пиши в шаге 2 не "используй то что выше", а буквально вставляй ответ из шага 1: это снижает потери при переходе


📋

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

Ответь на вопрос двумя способами и сравни результаты.

**СПОСОБ 1 — прямой ответ:**
{твой сложный вопрос}

**СПОСОБ 2 — пошаговый:**
Шаг 1: {первый под-вопрос — факт или данные, которые нужны для ответа}
Шаг 2: Используя ответ из шага 1 — {второй под-вопрос, зависящий от первого}

**Сравнение:**
Совпадают ли два ответа? Если нет — какому больше доверяешь и почему?

Что подставлять: - {твой сложный вопрос} — любой вопрос, который требует нескольких фактов или шагов логики - {первый под-вопрос} — изолируй один ключевой факт, без которого нельзя ответить на главный вопрос - {второй под-вопрос} — вопрос, в котором явно используется ответ из первого шага

Как понять, нужна ли декомпозиция: Спроси себя — "чтобы ответить на это, нужно сначала узнать X, а потом уже Y?" Если да — вопрос подходит для OC-проверки.


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

Вот шаблон Operadic Consistency — техники проверки ответов через сравнение прямого 
и пошагового пути. Адаптируй под мою задачу: {твоя задача}.
Задавай вопросы, чтобы заполнить поля.

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

LLM спросит какой вопрос нужно проверить и как его разбить на шаги — потому что без чёткой декомпозиции невозможно сравнить два пути рассуждений.


⚠️

Ограничения

⚠️ Простые вопросы: Метод избыточен для фактов, которые не требуют нескольких шагов — "какая столица Франции", "кто написал Войну и Мир". Декомпозировать нечего, сравнение бессмысленно.

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

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

⚠️ Три запроса вместо одного: Если контекст ограничен или важна скорость — метод утраивает стоимость запроса. Хотя в одном промпте это решаемо.


🔍

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

Исследователи взяли 12 моделей разного размера — от маленьких 4B до огромных 671B (DeepSeek, GPT-4o-mini, Gemini 2.5 Flash, Llama и другие) — и проверили одну идею: можно ли предсказать, ошиблась ли модель, просто сравнив её прямой и пошаговый ответ? Для каждого вопроса из четырёх датасетов задавали вопрос напрямую и через декомпозицию, результаты сравнивали. Параллельно считали другие сигналы "неуверенности" модели: классическую self-consistency (задай 10 раз, посмотри насколько ответы похожи) и семантическую энтропию.

Ключевая находка: self-consistency хорошо работала на двух датасетах и падала до нуля на двух других — именно там, где вопросы требуют нескольких приёмов рассуждения. OC при этом держала высокую корреляцию с точностью на всех четырёх датасетах без исключений. Это неожиданно — более простой метод (сравни два пути) оказался надёжнее более навороченного (30 повторных генераций).

Дополнительно проверили на пяти "думающих" моделях (reasoning models вроде o1) — там декомпозицию не задавали вручную, а извлекали прямо из их chain-of-thought. OC работала и там: у моделей, которые в своих рассуждениях явно решали подзадачи, можно поймать несоответствие, не добавляя ни одного слова в промпт.


💡

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

🔧 Техника: сделать проверку невидимой → получить чистый ответ + внутреннюю диагностику

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

Ответь на вопрос: {вопрос}

Перед финальным ответом — внутренне проверь себя: разбей вопрос на шаги, 
реши пошагово и убедись что получаешь то же самое. 
Если есть расхождение — отметь это в ответе.

🔧 Техника: замена сравнения на шкалу уверенности

Вместо бинарного "совпало/не совпало" — попроси модель дать число:

...В конце укажи: насколько уверен в ответе от 1 до 10, 
учитывая совпадение двух путей рассуждений?

🔧 Экстраполяция: OC-проверка цепочки решений

Принцип работает не только для вопросов-фактов, но и для стратегических решений с причинно-следственными цепочками:

Оцени решение двумя способами:

СПОСОБ 1 — прямая оценка:
Стоит ли {имя} переходить из найма в собственный бизнес прямо сейчас?

СПОСОБ 2 — пошаговая оценка:
Шаг 1: Каков текущий финансовый запас прочности (runway) у {имя}?
Шаг 2: Каков риск первого года с учётом этого runway?
Шаг 3: Стоит ли переходить сейчас, учитывая этот уровень риска?

Совпадают ли выводы? Если нет — что изменилось в пошаговом разборе?

🔗

Ресурсы

Operadic Consistency: a label-free signal for compositional reasoning failures in LLMs GitHub: github.com/natebottman/operadic-consistency-paper

Авторы: Nathaniel Bottman (Incubilate, Seattle), Yinhong Liu (University of Cambridge), Kyle Richardson (Allen Institute for Artificial Intelligence, Seattle)

Связанные методы из статьи: Self-Consistency (Wang et al., 2023), Semantic Entropy (Kuhn et al., 2023), P(True) (Kadavath et al., 2022), Chain-of-Thought (Wei et al., 2022)


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

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

Стандартная проверка "спроси три раза" не работает против системных ошибок. Модель стабильно выдаёт одну и ту же уверенную ложь при каждом повторе — как просить двоечника пересмотреть контрольную: найдёт ровно те же ошибки. Operadic Consistency (OC) даёт возможность ловить именно этот тип ошибок — через внутреннее противоречие, без единого эталонного ответа. Фишка: прямой и пошаговый ответ на один вопрос физически обязаны совпадать — если разошлись, прямой путь перепрыгнул через рассуждение и что-то потерял. Расхождение = сигнал тревоги.

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

Два пути — один вопрос. Прямой путь: задаёшь сложный вопрос напрямую → получаешь Ответ A. Быстро, уверенно, потенциально ошибочно. Пошаговый путь: разбиваешь вопрос на части. Шаг 1 — изолированный факт. Шаг 2 — основной вопрос с явной подстановкой результата шага 1 → получаешь Ответ B. Сравниваешь A и B. Совпали — зелёный свет. Разошлись — Ответ B надёжнее: он опирается на явно зафиксированный промежуточный факт, который нельзя «замести под ковёр». Всё это — в одном промпте. Никакого эталона, никаких размеченных данных.

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

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

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

Многошаговые вопросы → конкретно для задач «сначала узнай факт X, потом ответи на вопрос Y», особенно когда цена ошибки высока: переговоры, исследования, проверка гипотез, факт-чекинг перед важным решением. НЕ подходит для: простых однофактных вопросов («столица Франции», «год основания компании») — декомпозировать нечего. Также не подходит для субъективных оценок: там расхождение двух ответов — просто разные перспективы, а не ошибка.

Мини-рецепт

1. Найди скрытый под-вопрос: Спроси себя — «чтобы ответить на это, нужно сначала знать X, а потом уже Y?» Если да — вопрос готов для проверки.
2. Задай напрямую: Исходный вопрос как есть → Ответ A.
3. Разложи на шаги: Шаг 1 — изолированный факт без которого нельзя ответить на главный вопрос. Шаг 2 — основной вопрос с явной подстановкой: «используя ответ из шага 1 — [вопрос]».
4. Попроси сравнить: Добавь в конце: «Совпадают ли два ответа? Если нет — какому больше доверяешь и почему?» Модель сама укажет на расхождение и объяснит его.

Примеры

[ПЛОХО] : Был ли Telegram прибыльным в год, когда набрал 100 миллионов пользователей?
[ХОРОШО] : Ответь двумя способами и сравни результаты. СПОСОБ 1 — прямой ответ: Был ли Telegram прибыльным в год, когда он набрал 100 миллионов новых пользователей? СПОСОБ 2 — пошаговый: Шаг 1: В каком году Telegram набрал 100 миллионов новых пользователей за один год? Шаг 2: Используя дату из шага 1 — был ли Telegram прибыльным в тот год? Совпадают ли два ответа? Если нет — какому больше доверяешь и почему?
Источник: Operadic consistency: a label-free signal for compositional reasoning failures in LLMs
ArXiv ID: 2606.13649 | Сгенерировано: 2026-06-12 05:23

Проблемы LLM

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

Методы

МетодСуть
Два пути к ответу — проверка через расхождениеЗадай сложный вопрос дважды в одном запросе. Способ 1: прямой вопрос ответ A. Способ 2: раздели на под-вопросы ответ из шага 1 подставь в шаг 2 ответ B. Попроси сравнить: "совпадают? если нет — какому доверяешь больше и почему". Почему работает: прямой путь — статистический прыжок к похожему ответу. Пошаговый путь — явная фиксация промежуточного факта. Это разные паттерны генерации. Расхождение значит: прямой путь что-то потерял по дороге. Когда применять: вопрос требует сначала узнать X, потом рассуждать от X. Когда не работает: вопрос без объективного ответа, простые факты в один шаг
📖 Простыми словами

Operadic consistency: a label-free signal for compositional reasoning failures inLLMs

arXiv: 2606.13649

Суть в том, что нейронки не умеют рассуждать — они просто угадывают следующее слово, опираясь на статистику. Когда ты задаешь сложный вопрос, модель выдает ответ, который кажется правильным, но на деле это просто усредненная галлюцинация. Метод Operadic Consistency (OC) ловит AI на вранье, используя фундаментальный принцип логики: если ты решаешь задачу целиком и если ты решаешь её по частям, итог должен быть одинаковым. Если ответы расходятся, значит, модель где-то «поплыла» и её прямому ответу верить нельзя.

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

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

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

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

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

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

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