3,583 papers
arXiv:2610.00972 92 1 окт. 2026 г. FREE

VeriHarness: проверка результатов агента через сверку с источниками, а не через голосование

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

TL;DR

VeriHarness — схема проверки работы агента. Задачу прогоняют несколько раз (в исследовании — 10), а потом отдельный проверяющий агент (та же модель, с доступом к файлам задачи) разбирает результаты на утверждения. Он делает две разные проверки. Разрешитель споров берёт места, где прогоны разошлись, и сверяет варианты с источниками. Оспариватель консенсуса берёт места, где все согласны, и ищет, как они могут быть неверны и что все забыли сделать.

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

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

🔬

Схема метода

ШАГ 0: Запустить задачу N раз → N папок с результатами (артефакт + файлы + ход работы)

ШАГ 1а (контекст 1): РАЗРЕШИТЕЛЬ СПОРОВ
  найти расхождения между прогонами → выбрать проверку, которая отличает кандидатов
  → сверить с источником → отсеять опровергнутых → запись: утверждение/проверка/доказательство/вердикт

ШАГ 1б (контекст 2): ОСПАРИВАТЕЛЬ КОНСЕНСУСА
  взять то, в чём все согласны → предположить, как это может быть неверно
  → проверить: значения (пересчёт, подписи vs метаданные), прочтения, упущенные требования
  → запись в том же формате

ШАГ 2 (контекст 3, чистый): СУДЬЯ
  читает обе записи + задачу + прогоны → (основа, план правок, нерешённое)

ШАГ 3: ДОСТАВКА
  применить план правок к основе → итоговый файл + журнал проверок

Шаги 1а и 1б идут в разных сессиях, чтобы споры не отвлекали внимание от консенсуса. Судья не видит переписки следователей, только их записи.

🚀

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

Задача: Вы собираете для собственника годовой отчёт по выручке селлера на Wildberries и Ozon. В папке лежат выгрузка из 1С, черновик отчёта v1, финальный отчёт v3 и договор с маркетплейсом. Вы прогнали Claude Code три раза. Два прогона взяли цифру из черновика (100 млн), третий из финала (120 млн). Во всех трёх документах написано «руб.», хотя в метаданных выгрузки валюта другая. Простое голосование выберет 100 млн и «руб.», и обе ошибки уйдут собственнику.

Промпт (сессия 1, разрешитель споров):


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



Задача: /task/description.md
Источники: /task/sources/ (выгрузка 1С, черновик v1, финал v3, договор)
Прогоны: /runs/run_1/, /runs/run_2/, /runs/run_3/ (каждый: итоговый отчёт + ход работы)



1. Сравни отчёты и найди утверждения с разными значениями
   (числа, трактовки, наличие разделов). Считай одинаковыми то, что
   записано разными словами. Отсутствие раздела — тоже значение.
2. Для каждого спора выпиши кандидатов и откуда взят каждый.
3. Выбери проверку, которая лучше всего отличит кандидатов
   (история версий, пересчёт из сырых данных, метаданные файла).
4. Выполни проверку. Исключи кандидатов, которым она противоречит.
5. Если опровергнуты все — запиши новое значение, ТОЛЬКО если доказательства
   его устанавливают. Иначе оставь вопрос открытым.
6. Остановись, когда новые проверки вряд ли изменят итог.



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



Таблица: утверждение | кандидаты | проверка | доказательство | вердикт
(подтверждено / опровергнуто / открыто)

Сессия 2 (оспариватель) и сессия 3 (судья) строятся по шаблону ниже.

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

🧠

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

Слабость. Модель, которая читает несколько ответов и выбирает лучший, опирается на собственные убеждения. Если все прогоны сделали одну ошибку, то у каждого уже есть общий «слепой угол». Голосование его только усилит. Он выглядит как уверенность: чем больше совпадений, тем меньше желание перепроверять. К тому же в консенсусе нет конкурирующего значения, с которым можно сравнить, и проверять нечего.

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

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

Рычаги управления: - Число прогонов. Для простых задач хватит 3–5. Для долгих и дорогих — больше. В исследовании было 10. - Навыки. Добавляйте типовые ошибки вашей предметной области (валюта, период, знак, версия файла). Это самый сильный рычаг: без них оспаривать консенсус нечем. - Режим «только выбрать». Если не нужна правка, пусть судья просто вернёт лучший прогон без изменений. Правка даёт дополнительный выигрыш, но стоит ещё одного прохода. - Условие остановки. «Остановись, когда новые проверки вряд ли изменят итог» можно заменить лимитом шагов, чтобы экономить токены. - Раздельные контексты. Не склеивайте разрешителя и оспаривателя в один чат. Авторы специально разделили их, чтобы споры не оттягивали внимание от консенсуса.

📋

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

Это три отдельные сессии. Структуру сохраняйте как есть.

Сессия 1 — разрешитель споров:


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



Задача: {путь_к_задаче}
Источники: {путь_к_источникам}
Прогоны: {пути_к_прогонам}



1. Найди утверждения с разными значениями (числа, трактовки, наличие разделов).
   Одинаковые по смыслу значения считай одним. Отсутствие — отдельное значение.
2. Для каждого спора выпиши кандидатов и их источники.
3. Выбери проверку, которая лучше всего отличит кандидатов.
4. Выполни её. Исключи кандидатов, которым доказательства противоречат.
5. Если опровергнуты все — запиши новое значение только при наличии доказательств.
   Иначе оставь вопрос открытым.
6. Остановись, когда новые проверки вряд ли изменят итог.



{навыки_твоей_области: тип ошибки → как проверить}



Таблица: утверждение | кандидаты | проверка | доказательство | вердикт
(подтверждено / опровергнуто / открыто)

Сессия 2 — оспариватель консенсуса:


Ты — оспариватель консенсуса. Ищи, где совпадающие во всех прогонах
утверждения могут быть неверны, и проверяй это по источникам.



{то_же_рабочее_пространство}



1. Выпиши утверждения, в которых все прогоны согласны.
2. Для каждого предложи, как оно могло бы оказаться неверным.
   Сначала приоритет тем гипотезам, которые вероятнее всего вскроют
   существенную для задачи ошибку.
3. Проверь три вида:
   а) ЗНАЧЕНИЯ: пересчитай из исходных данных; сверь подписи
      (валюта, единицы, период) с метаданными источника.
   б) ПРОЧТЕНИЯ: сверь общую трактовку с файлом, который назван в задаче,
      с периодом из источника, с определением из самой книги/документа.
   в) УПУЩЕННОЕ: сверь итоговые файлы с текстом задачи — какие требования
      не выполнил ни один прогон.
4. Остановись, когда новые проверки вряд ли дадут находки.



{навыки_типовых_ошибок: знак, период, валюта, версия, определение}



Таблица: утверждение | как могло быть неверным | проверка | доказательство | вердикт

Сессия 3 — судья (чистый контекст):


Ты — судья. Ты не видел переписки следователей. Оцени их записи заново.



Задача: {путь_к_задаче}
Прогоны: {пути_к_прогонам}
Запись разрешителя: {путь_1}
Запись оспаривателя: {путь_2}



1. Каждую находку подтверди, отмени или оставь нерешённой.
2. Выбери основу — прогон с наименьшим числом подтверждённых дефектов
   по существенным требованиям задачи. Если ни один не годится, основа = пусто.
3. Составь план правок: что менять и какое доказательство это подтверждает.
4. Составь список нерешённых утверждений.



base: {какой прогон}
revision_plan: {правки с доказательствами}
unresolved: {что не подтверждено}

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

Что подставлять: {путь_к_задаче}, {путь_к_источникам}, {пути_к_прогонам} — папки и файлы. {навыки} — 3–10 коротких строк «тип ошибки → как проверить» из вашей области.

🚀 Быстрый старт — вставь в агента (Claude Code, Cursor, Codex):

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

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

Агент спросит, какие файлы лежат в рабочей папке, сколько прогонов у вас есть, какие типовые ошибки бывают в вашей области (валюты, периоды, версии, знаки). Это нужно, потому что именно навыки подсказывают оспаривателю, что искать там, где все согласны. Он возьмёт структуру шаблона и соберёт промпты под вашу задачу.

⚠️

Ограничения

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

⚠️ Дорого: нужно несколько прогонов одной задачи плюс три прохода проверки. Для коротких и дешёвых задач это не окупается. Авторы сами потратили на пул прогонов больше $100 000.

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

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

⚠️ Перенос между инструментами неравномерен: в Gemini CLI, Claude Code и Codex большая часть выигрыша сохраняется. Но с Opus на некоторых бенчмарках (JobBench, а у Claude Code ещё и SpreadsheetBench 2) результат упал до уровня одного прогона.

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

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

🔍

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

Идея была простой: если несколько прогонов одной задачи содержат разные куски правды, то надёжная проверка позволит собрать из них лучший результат. Команда Google и Кембриджа взяла пять сложных бенчмарков с рабочими файлами: отчёты в банках и юриспруденции, таблицы, код, многофайловые задачи. Они прогнали две сильные модели по 10 раз на каждую задачу. Всего получилось около 26 000 прогонов. Проверяющий и генератор были одной и той же моделью, а оценочные рубрики проверяющему никогда не показывали.

Сначала посмотрели на разметку одного бенчмарка. Среди 917 утверждений, где все 10 прогонов совпали, 34% оказались неверными. Среди 775 спорных утверждений в 74% случаев правильный вариант присутствовал среди кандидатов, но самый частый был верен лишь в 47%. Из этого родилась схема «два разных расследования».

Сравнивали с пятью методами: голосование, лучший по оценке судьи, турнир попарно, прежний лучший метод LLM-as-a-Verifier и агентный проверяющий с доступом к файлам, но без протокола и навыков. VeriHarness выиграл на всех бенчмарках у обеих моделей. Выбор лучшего прогона поднял средний результат примерно на 4 пункта, а проверка плюс правка по доказательствам — на 6,2 и 6,4 (Flash и Opus). Простое «слияние прогонов в новый документ» без проверок осталось ниже: значит, выигрыш даёт именно проверка, а не переписывание.

Удивило два вывода. Первый: доступ к файлам без протокола даёт лишь половину эффекта. Второй: навыки, самостоятельно выращенные моделью из ошибок на тренировочных задачах (от пустой библиотеки), на новых задачах обошли библиотеку, написанную человеком. А если начать с человеческой и дать ей «дорасти», добавлялось ещё 6,8 пункта на APEX-Agents и 3,7 на SpreadsheetBench 2. Вывод для практики: ваш список типовых ошибок — главный актив, и его стоит пополнять после каждого провала.

💡

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

💡 Адаптация для одиночного ответа без нескольких прогонов: возьмите только половину метода — оспаривателя. Он не требует спорящих прогонов, ему нужны только ваш результат и источники.

Ты — оспариватель. Перед тобой готовый результат и исходные файлы.
Не оценивай качество. Найди, как каждое важное число, трактовку
и вывод могло оказаться неверным, и проверь это по источникам.
Отдельно сверь результат с текстом задачи: какие требования не выполнены.
Для каждого пункта: утверждение | как могло быть неверно | проверка | вердикт.

Это моя адаптация. В статье полная схема проверена только на пулах прогонов.

🔧 Техника: пополнять навыки после провалов. Когда агент ошибся, попросите описать тип ошибки и способ её проверки, без привязки к ответу этой задачи.

Разбери ошибку выше. Сформулируй навык для проверки:
1) какая типовая ошибка случилась (без цифр и имён из этой задачи);
2) как её обнаружить (что открыть, что пересчитать, с чем сверить).
Не включай правильный ответ. Добавь навык в раздел  файла CLAUDE.md.

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

🔗

Ресурсы

  • VeriHarness: Scaling Agentic Verification for Long-Horizon Tasks
  • Код: github.com/google-research/veriharness
  • Датасет: huggingface.co/datasets/caiqizh/veriharness
  • Сайт: veriharness.com
  • Caiqi Zhang, Nigel Collier (University of Cambridge); Rujun Han, Zifeng Wang, Zoey CuiZhu, Tomas Pfister, Chen-Yu Lee (Google Cloud AI Research)
  • Бенчмарки: APEX-Agents, Workspace-Bench Lite, WorkBuddy Bench, SpreadsheetBench 2, JobBench
  • Прежний лучший метод для сравнения: LLM-as-a-Verifier (Kwok et al., 2026)

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

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

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

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

Три расследования, три разных контекста. Сначала запускаешь задачу несколько раз (в исследовании 10). Потом идут два независимых прохода. 1. Разрешитель споров берёт места, где прогоны разошлись. Он выбирает проверку, которая отличает кандидатов, и сверяет их с источником. 2. Оспариватель консенсуса берёт места, где все согласны. Он придумывает, как это могло быть неверным, и проверяет: пересчёт, подпись против метаданных, забытые требования задачи. 3. Судья в чистом контексте читает только их записи. Он выбирает основу, составляет план правок и список нерешённого. Каждый вывод привязан к цепочке: утверждение, проверка, доказательство, вердикт. Это как редакция. Два корректора работают порознь, один ловит расхождения в версиях, другой перечитывает «очевидное». Главред их не слушает по очереди, а сверяет бумаги. Споры и консенсус разведены по разным сессиям, чтобы громкие споры не отвлекали от тихих ошибок.

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

Модель, которая выбирает лучший ответ из нескольких, опирается на собственные убеждения. Если все прогоны ошиблись одинаково, у них общий слепой угол. Голосование его только усиливает. Чем больше совпадений, тем меньше желания перепроверять. В консенсусе нет конкурирующего значения, поэтому и сравнивать не с чем. Но та же модель хорошо действует в среде. Она открывает файл, пересчитывает сумму, смотрит метаданные. Спор между прогонами сам показывает, где копать: два разных числа уже готовая тема для проверки. Для консенсуса нужны навыки. Короткая запись вроде «валюта в подписи против валюты в источнике» даёт конкретное свойство для проверки, даже когда все значения совпали. Согласие прогонов не равно правде: треть совпавших значений оказалась ошибочной, и найти это можно только сверкой с источником. Цифра для трезвости: агент с теми же инструментами, но без протокола и навыков, получил примерно половину выигрыша. «Просто дать агенту проверять» почти не работает.

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

Агентные задачи с папкой источников → отчёты, таблицы, документы по выгрузкам и договорам, особенно когда в папке несколько версий файлов и цена ошибки высокая. Подходит и для долгих задач, где один прогон стоит дорого, а ошибка в «очевидном» числе уйдёт заказчику. НЕ подходит для вопросов «из головы» без файлов: проверять не по чему. Для коротких дешёвых задач тоже не окупится. Выигрыш на бенчмарках скромный, единицы пунктов, а авторы потратили на прогоны больше $100 000. На некоторых бенчмарках с Opus результат упал до уровня одного прогона.

Мини-рецепт

1. Прогони задачу несколько раз: для простых хватит 3-5, для дорогих бери больше. Каждый прогон складывай в свою папку: итоговый файл и ход работы.
2. Напиши навыки: 3-10 строк вида «тип ошибки → как проверить» из твоей области. Например: валюта, период, знак вычета, версия файла. Без них оспаривать консенсус нечем.
3. Сессия 1, разрешитель споров: найди утверждения с разными значениями, выпиши кандидатов и проверь по источникам. Если опровергнуты все, новое значение записывай только с доказательством.
4. Сессия 2, оспариватель: возьми то, в чём все согласны. Проверь значения (пересчёт, подписи против метаданных), прочтения и требования задачи, которые не выполнил никто.
5. Сессия 3, судья с чистой головой: дай ему задачу, прогоны и две записи, без переписки. Он вернёт основу, план правок и список нерешённого.
6. Примени правки: нерешённые места пометь в документе, лучше покажи оба прочтения.
7. Хочешь дешевле: включи режим «только выбрать» и ограничь число шагов вместо условия остановки.
8. Не склеивай роли: разрешитель и оспариватель живут в разных чатах.

Примеры

[ПЛОХО]: `Прогони отчёт по выручке 5 раз и возьми цифру, которая встретилась чаще всего` Два прогона из трёх взяли 100 млн из черновика, а в финале 120 млн. Во всех трёх стоит «руб.», хотя в метаданных выгрузки другая валюта. Голосование выберет обе ошибки. [ХОРОШО, сессия 1]: `Ты разрешитель споров. Найди утверждения, по которым три прогона расходятся, и сверь с источниками в /task/sources/. Проверь, какая версия отчёта заменяет какую, по дате и статусу. Выведи таблицу: утверждение | кандидаты | проверка | доказательство | вердикт` [ХОРОШО, сессия 2]: `Ты оспариватель консенсуса. Выпиши то, в чём согласны все три прогона. Для каждого пункта придумай, как он мог быть неверным. Сверь валюту и период в подписи с метаданными выгрузки. Найди требования задачи, которых нет ни в одном отчёте` Разрешитель выяснит, что финал v3 заменил черновик. Оспариватель поймает «руб.» против метаданных. Судья соберёт исправленный отчёт и журнал проверок.
Источник: VeriHarness: Scaling Agentic Verification for Long-Horizon Tasks
ArXiv ID: 2610.00972 | Сгенерировано: 2026-10-06 10:00

Проблемы LLM

ПроблемаСутьКак обойти
Согласие нескольких ответов не значит, что они верныЗапускаешь задачу несколько раз. Берёшь ответ, который повторился чаще всего. Или просишь модель-судью выбрать лучший. Оба способа опираются на то, во что модель уже верит. Если все прогоны ошиблись одинаково, ошибка выглядит как уверенность. Чем больше совпадений, тем меньше желания перепроверять. Заметная доля совпавших значений оказывается неверной. Самый частый ответ в спорных местах тоже часто неверенНе считай голоса. Сверяй ответы с источниками: файлами, данными, метаданными, текстом задачи. Отдельно ищи ошибки там, где все согласны. Для этого дай модели список типовых ошибок. Например: «валюта в подписи против валюты в источнике» или «период в подписи против периода в данных»

Методы

МетодСуть
Два расследования и чистый судья — проверка результатов по источникамЗапусти задачу несколько раз (3–5 для простых задач, больше для дорогих). Дальше три отдельные сессии. Сессия 1, разрешитель споров. Находит места, где прогоны расходятся. Для каждого спора выписывает кандидатов. Выбирает проверку, которая их различает: история версий, пересчёт из сырых данных, метаданные. Выполняет её и исключает опровергнутых. Если опровергнуты все, новое значение пишет только при наличии доказательств. Иначе оставляет вопрос открытым. Сессия 2, оспариватель консенсуса. Берёт места, где все согласны. Для каждого придумывает, как оно может быть неверно. Проверяет три вида: значения (пересчёт, подписи против метаданных), прочтения (общая трактовка против файла из задачи), упущенное (требования задачи, которые не выполнил ни один прогон). Сессия 3, судья в чистом контексте. Видит задачу, прогоны и обе записи. Переписку следователей не видит. Подтверждает или отменяет каждую находку. Выбирает основу: прогон с наименьшим числом подтверждённых дефектов. Пишет план правок с доказательствами и список нерешённого. Формат записи: утверждение | кандидаты | проверка | доказательство | вердикт (подтверждено / опровергнуто / открыто). Потом примени план правок к основе. Нерешённое пометь в итоговом файле. Почему работает: спор показывает, где копать. Типовые ошибки подсказывают, что проверять там, где все согласны. Чистый судья не тащит чужие рассуждения. Каждая правка привязана к доказательству. Когда да: долгие задачи с файлами и данными, где ошибка дорогая. Есть источники для сверки. Когда нет: вопрос «из головы» без источников. Короткие и дешёвые задачи, где три прохода не окупаются. Выигрыш скромный, единицы пунктов. Правильный ответ бывает среди прогонов, но метод находит его не всегда. Дешевле: если правка не нужна, пусть судья только выберет лучший прогон. Остановку по условию «новые проверки вряд ли что-то изменят» можно заменить лимитом шагов

Тезисы

ТезисКомментарий
Для проверки согласия нужен список типовых ошибок, а не просто доступ к файламРасхождение само указывает, где проверять: два разных числа — готовая тема. У согласия нет конкурента для сравнения. Модель не знает, что оспаривать. Конкретная гипотеза ошибки задаёт проверяемое свойство даже когда все значения совпали. Агент с теми же инструментами, но без порядка проверки и списка ошибок, получает лишь около половины пользы. Применяй: запиши 3–10 строк «тип ошибки → как проверить» для своей области. Например: «знак вычета → пересчитай из сырых данных», «версия файла → сравни дату и статус», «определение термина → найди его в самом документе». Вставь их в запрос блоком
📖 Простыми словами

VeriHarness: Scaling Agentic Verification for Long-Horizon Tasks

arXiv: 2610.00972

Обычное голосование большинством в AI — полная фигня. Если запустить агента 10 раз, и он 10 раз сделает одну и ту же неочевидную ошибку, классическая система решит, что это железобетонная правда. У одинаковых LLM есть общие слепые зоны, из-за которых тупое единогласие выглядит как высшая степень уверенности. В итоге модель сама себя убеждает в бреде, а фатальная лажа беспрепятственно улетает в прод.

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

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

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

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

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

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

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