3,583 papers
arXiv:2608.06949 79 7 авг. 2026 г. FREE

Самопроверка LLM почти никогда не находит собственные ошибки — независимый аудит в отдельном чате ловит их в разы чаще

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

TL;DR

Когда модель сама проверяет свой же ответ в том же диалоге, она почти никогда с собой не спорит — меньше 1% случаев самопроверка находит проблему. Но если тот же ответ отдаёт на проверку отдельному запросу без истории рассуждений («независимому аудитору»), он ловит проблему в 7–62% случаев, в зависимости от типа ошибки. Разница не в качестве модели — она одна и та же. Разница в том, видит ли проверяющий контекст, в котором решение родилось.

Боль знакома каждому, кто просил ChatGPT «а теперь перепроверь себя»: модель почти всегда отвечает «всё в порядке», даже если решение было предвзятым или ошибочным. Причина проста: модель, которая только что сформулировала ответ, склонна его защищать, а не искать в нём дыры — ей не хватает взгляда «с нуля». Отдельная проблема всплывает, когда проверок много, а времени мало: аудитор не начинает судить хуже — он просто успевает проверить меньше кейсов, и до 4 из 10 ошибок остаются незамеченными вообще.

Решение — не пытаться «улучшить» самопроверку, а физически разорвать контекст: создавать решение в одном промпте/чате, а проверять — в другом, где модель не знает, как решение было принято, и оценивает только его результат. Если проверок много и время ограничено — сортировать очередь на проверку не по порядку поступления, а по риску (сначала самые подозрительные случаи): это восстанавливает почти всё потерянное покрытие без увеличения нагрузки.


🔬

Схема метода

ШАГ 1: Создание решения → отдельный промпт/чат, обычная задача (оценка, решение, текст)
ШАГ 2: Независимая проверка → НОВЫЙ чат, роль "аудитор", без истории Шага 1 — только итоговый результат
ШАГ 3 (если проверок много, а времени/лимита мало): Приоритизация очереди → сначала проверяй кейсы с признаками риска (отказ, спорная мотивировка, упоминание защищённого признака), а не по порядку поступления

Шаг 1 и Шаг 2 — обязательно разные запросы, иначе эффект пропадает. Шаг 3 — опционален, нужен только при нехватке ресурса на проверку всего.


🚀

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

Задача: HR-менеджер просит ChatGPT оценить резюме кандидатов на вакансию и решить, звать ли на собеседование.

Промпт (Шаг 1 — создание решения, чат №1):

Оцени кандидата на позицию {название вакансии}. 
Резюме: {текст резюме}
Дай вердикт: звать на собеседование или нет, и объясни почему.

Промпт (Шаг 2 — независимая проверка, НОВЫЙ чат, без истории первого):

Ты — независимый аудитор кадровых решений. Тебе дано ГОТОВОЕ решение по кандидату 
и его мотивировка. Ты не знаешь, как именно рассуждал тот, кто это решение принял, 
и не пытайся угадывать его логику.

Твоя задача — проверить: не основано ли решение (полностью или частично) 
на факторах, не относящихся к профессиональным качествам — пол, возраст, 
национальность, имя, внешность, семейное положение.

Решение и мотивировка: {вставить вердикт и объяснение из чата №1}

Ответь:
1. Есть риск предвзятости — да/нет
2. Если да — на что именно указывает мотивировка

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


🧠

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

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

Сильная сторона LLM — она отлично выполняет роль «с чистого листа»: если дать ей только результат без истории рассуждений, она оценивает его объективно, без обязательства защищать прежнюю логику.

Метод использует это через разрыв контекста: создание и проверка физически разделены на разные запросы. Аудитор видит только результат — и это превращает его в независимого проверяющего, а не в соавтора решения.

Рычаги управления: - Давать аудитору контекст рассуждения первого чата → убери, чтобы сохранить независимость (это критично, не опционально) - Несколько параллельных проверок разными формулировками роли аудитора → выше надёжность через своеобразный "консенсус" - Приоритизация очереди по риск-признакам → добавь, если проверяешь много кейсов и ограничен по времени/лимиту запросов


📋

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

Ты — независимый аудитор {тип решений}. Тебе дано ГОТОВОЕ решение и его мотивировка. 
Ты не знаешь, как рассуждал тот, кто его принял — не пытайся восстановить его логику.

Твоя задача: проверить решение на {критерий проверки, например: предвзятость по 
демографическим признакам / логические ошибки / несоответствие фактам}.

Решение и мотивировка: {вставить результат из первого запроса}

Ответь:
1. Есть проблема — да/нет
2. Если да — что конкретно в тексте на неё указывает

Подставь {тип решений} (кадровое, кредитное, редакторское) и {критерий проверки} под свою задачу. Главное правило — этот промпт должен идти новым чатом, без истории первого запроса.

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

Вот принцип независимого аудита. Помоги мне применить его к моей задаче: {твоя задача}.
Задавай вопросы, чтобы понять контекст.

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

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


⚠️

Ограничения

⚠️ Разделение на роли само по себе не помогает: если просто добавить в пайплайн «агента-проверяющего», но не разорвать контекст между созданием и проверкой (или дать проверяющему полную историю рассуждений первого агента), эффект пропадает — частота ошибок не снижается.

⚠️ Ограниченный ресурс на проверку — скрытая дыра: если проверок много, а времени/лимита мало, аудитор не начинает судить хуже, а просто успевает проверить меньше. Без приоритизации по риску большая часть проблем пройдёт вообще незамеченной — и это будет выглядеть так, будто «система работает», хотя она просто не успевает смотреть.

⚠️ Проверено на одной модели, небольшая выборка: выводы получены на GPT-4o-mini с умеренным числом наблюдений — числовые доли (7–62%) не переносить буквально на другие модели, но сам механизм («независимость важнее качества суждения») стоит проверять и в других контекстах.


🔍

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

Исследователи построили симуляцию распределения больничных коек во время катастрофы: каждый пациент генерировался парой «близнецов» — идентичных по тяжести состояния, но отличающихся одним демографическим признаком (национальность, религия, телосложение). Сравнивали одну модель, которая сама оценивала, распределяла и проверяла своё решение, против пайплайна из девяти агентов (assessor → allocator → auditor) на тех же самых кейсах. Прогнали 192 эпизода — 2304 пары решений — на GPT-4o-mini под разной операционной нагрузкой (поток пациентов, дефицит коек, ограничение числа проверок у аудитора).

Главный сюрприз: частота предвзятых решений оказалась одинаковой в обоих условиях (~6–7%) — сам факт разделения задачи на роли ничего не меняет. Но разница была огромной в том, ловит ли система эту предвзятость: самопроверка почти никогда не находила проблему (<1%), а независимый аудитор — в 7–62% случаев в зависимости от типа нарушения. Когда аудитора перегрузили (одна проверка за такт вместо неограниченного числа), качество его суждений на рассмотренных случаях почти не изменилось (81,6% против 85,7%, разница не значима) — но покрытие рухнуло с 100% до 65,6%. То есть аудитор не стал хуже думать, он просто перестал успевать смотреть на всё. Изменение порядка очереди — сначала кейсы с признаками риска, а не по порядку поступления — вернуло почти всё потерянное покрытие (65,6% → 91,7%).


🔗

Ресурсы

Paul-Peter Arslan, Institute for Future Technologies (2026). Опирается на KillBench (White Circle) — оригинальный бенчмарк предвзятости одноагентного триажа. Также ссылается на PBSuite (NVIDIA), GovSim (ETH Zürich) и MAST — таксономию сбоев мультиагентных систем. Код и данные: github.com/Polpii/policy-town


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

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

Самопроверка LLM в том же чате находит проблему меньше чем в 1% случаев — тот же ответ в новом чате без истории рассуждений находит её в 7–62% случаев. Метод даёт возможность реально проверять решения LLM на предвзятость и ошибки, а не получать формальное «всё в порядке» на просьбу «перепроверь себя». Фишка — физически разорвать контекст: решение рождается в одном чате, проверка идёт в другом, где аудитор видит только результат, а не ход рассуждений. Модель та же самая — разница только в том, что видит проверяющий.

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

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

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

Модель, которая только что сформулировала ответ, защищает свою логику. При повторном вопросе в том же диалоге она подтверждает сказанное, а не ищет дыры. Дай ей только итог без истории рассуждений — и она судит с нуля, без обязательства защищать прежнюю позицию. Разрыв контекста поднимает шанс найти проблему с меньше 1% до 62% — модель та же самая, меняется только то, что она видит. Нюанс: если проверок много, а лимит ограничен, аудитор не начинает судить хуже — он просто успевает проверить меньше. До 4 из 10 проблем проходят мимо. Спасает сортировка очереди по риску, а не по порядку поступления.

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

Любые задачи, где LLM выносит решение о человеке или тексте → наём, кредитный скоринг, модерация контента, редакторская правка, особенно когда решение может задеть защищённые признаки (пол, возраст, национальность) или содержит логическую ошибку, которую глазами не поймать. Не подходит как единственная защита в критичных решениях — даже независимый аудитор пропускает от 38% до 93% проблем в зависимости от типа ошибки, метод снижает риск, но не гарантирует стопроцентную поимку.

Мини-рецепт

1. Создай решение: обычный промпт в чате №1 — вердикт, оценка, текст, без всякой рефлексии внутри.
2. Открой новый чат: роль «независимый аудитор», дай только итог и мотивировку из чата №1 — без истории рассуждений.
3. Задай конкретный критерий: не «проверь на ошибки» вообще, а «проверь на предвзятость по признаку X» или «проверь логическую ошибку Y».
4. Если проверок много и лимит ограничен: сортируй очередь по риск-признакам — отказ, спорная мотивировка, упоминание защищённого признака — так покрытие почти не падает.

Примеры

[ПЛОХО] : Проверь ещё раз своё решение выше, всё ли верно?
[ХОРОШО] : (открой новый чат) Ты — независимый аудитор кредитных решений. Тебе дано готовое решение по заявке и его мотивировка. Проверь: не основано ли оно на факторах, не относящихся к платёжеспособности. Решение: {вставить из чата 1}. Ответь: 1) есть риск — да/нет; 2) на что именно указывает мотивировка.
Источник: Does Splitting a Triage Decision Across Agents Hide Bias or Help Catch It? A Multi-Agent Simulation Study of LLM-Based Resource Allocation Under Audit Capacity Constraints
ArXiv ID: 2608.06949 | Сгенерировано: 2026-08-10 05:33

Проблемы LLM

ПроблемаСутьКак обойти
Модель не оспаривает свои же выводы в том же чатеПросишь модель "перепроверь себя" в том же диалоге. Она видит свою прежнюю логику и защищает её, а не ищет в ней дыры. Самопроверка внутри одного контекста почти никогда не находит проблему — меньше 1% случаевОтдавай готовый ответ на проверку в НОВЫЙ чат без истории рассуждений. Дай роль "независимый аудитор". Модель увидит только результат и оценит его с чистого листа
При нехватке времени на проверку модель просто пропускает кейсы, а не судит хужеЕсли проверок много, а лимит запросов или времени ограничен, качество суждений не падает — падает количество проверенных случаев. Проверяющий просто не успевает дойти до всех. Система выглядит рабочей, хотя реально проверяет малую частьСортируй очередь на проверку не по порядку поступления, а по признакам риска: спорная мотивировка, отказ, упоминание защищённого признака. Так самые опасные случаи проверяются первыми

Методы

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

Does Splitting a Triage Decision AcrossAgentsHide Bias or Help Catch It? A Multi-AgentSimulation Study ofLLM-Based Resource Allocation Under Audit Capacity Constraints

arXiv: 2608.06949

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

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

Цифры говорят сами за себя: когда проверку делает «свежая» копия модели без контекста, она ловит косяки в 7–62% случаев. Разница колоссальная, хотя модель одна и та же. Весь секрет в изоляции контекста. Если проверяющий видит, как решение рождалось, он заражается той же логикой и предвзятостью. Если же он видит только голый результат, то включает критическое мышление и начинает разносить слабые аргументы в пух и прах.

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

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

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

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

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