TL;DR
Когда просишь LLM выбрать лучший вариант ответа из нескольких, она чаще всего работает хуже простого голосования большинством — иногда даже на 10 пунктов хуже, при этом уверенно и убедительно. EL-DGR — правило, которое не улучшает самого судью, а ограничивает его полномочия: судья может переопределить мнение большинства только если приложит точную цитату-доказательство из источника, подтверждающую свой выбор.
Проблема в том, что когда просишь модель оценить ответ одной оценкой "хорошо/плохо" или "выбери лучший", она смешивает в одну цифру разные вещи: логичность рассуждения и фактическую точность. Из-за этого получается парадокс: цепочка "ЧМ-2022 прошёл в Катаре → столица Катара Дубай → ответ: Дубай" звучит логично и связно, хотя второй шаг фактически неверен (столица Катара — Доха). Судья ставит высокую оценку за "гладкость", а ошибку не видит — потому что оценка не показывает, из-за чего именно она получилась высокой.
EL-DGR решает это, вводя иерархию приоритетов вместо одной оценки: по умолчанию побеждает консенсус (большинство одинаковых ответов). Судья может его перебить — но только если приведёт точную цитату из источника, которая подтверждает его выбор, а у консенсуса такой цитаты нет. Если ни один вариант не подтверждён — генерируется новая, дополнительно проверенная попытка ("ремонт").
Схема метода
ШАГ 1: Сгенерировать N вариантов ответа на вопрос → пронумерованный список кандидатов
ШАГ 2: Для каждого кандидата проверить — есть ли точная (verbatim) цитата в источнике, подтверждающая его ответ → метка "подтверждён / не подтверждён"
ШАГ 3: Определить консенсус — какой ответ встречается чаще всего среди кандидатов
ШАГ 4: Применить правило по порядку (не суммировать критерии!):
→ консенсус подтверждён → берём консенсус
→ консенсус не подтверждён, но другой кандидат подтверждён → берём его (с цитатой)
→ никто не подтверждён → генерируем и проверяем новый ответ ("ремонт"); если он подтверждён — берём его, иначе — честно говорим "недостаточно доказательств"
Все шаги можно выполнить в рамках одного развёрнутого промпта или через 2-3 последовательных запроса в чате.
Пример применения
Задача: Юрист или предприниматель заливает в чат договор аренды офиса (или ипотечный договор) и спрашивает: "Какая неустойка за просрочку платежа?" — модель при повторных попытках иногда путается и даёт разные цифры.
Промпт:
Вот текст договора:
{текст_договора}
Вопрос: какая неустойка предусмотрена за просрочку арендной платы?
Шаг 1. Дай 3 независимые попытки ответить на вопрос, используя только текст договора. Назови их Кандидат_1, Кандидат_2, Кандидат_3.
Шаг 2. Для каждого кандидата проверь: есть ли в тексте договора БУКВАЛЬНАЯ цитата, подтверждающая его ответ. Приведи цитату или отметь "не подтверждён".
Шаг 3. Определи, какой ответ повторяется чаще (консенсус).
Шаг 4. Реши, какой ответ выдать, строго по порядку:
- если консенсус подтверждён цитатой — верни консенсус
- если консенсус не подтверждён, а другой кандидат подтверждён — верни его с цитатой
- если никто не подтверждён — перечитай договор ещё раз, дай новый ответ и проверь его цитатой. Если и он не подтверждён — напиши "в договоре нет чёткого ответа"
Не выбирай ответ только потому что он звучит увереннее — выбирай только по наличию точной цитаты.
Результат: Модель покажет три варианта ответа, для каждого — цитату из договора или отметку "не найдено", определит, какой ответ повторялся чаще, и по чёткому правилу выдаст финальный ответ с указанием, на какую именно строчку договора она опирается. Если текст договора расплывчатый, модель честно скажет об этом, а не выдумает уверенную неправильную цифру.
Почему это работает
Когда LLM просят "оцени и выбери лучший вариант" одной шкалой, она сваливает в одно число разные вещи: насколько текст звучит убедительно и насколько он фактически верен. Это создаёт слепую зону — модель ставит высокий балл за красноречие, даже если факт неверный, и ошибка становится невидимой.
Зато модель хорошо умеет делать конкретную, проверяемую операцию — искать точное совпадение текста в источнике (это не оценочное суждение, а сопоставление). EL-DGR использует именно эту сильную сторону: вместо абстрактной оценки "какой ответ лучше" модель делает конкретную проверку "есть ли в тексте такая фраза буквально".
Рычаги управления: - Число кандидатов (N) — больше вариантов = выше шанс найти подтверждённый ответ, но дороже по времени/токенам. Для простых вопросов хватит 2-3. - Строгость сертификата (точная цитата vs пересказ смысла) — жёстче критерий = меньше ошибок, но больше отказов "недостаточно доказательств". Смягчи для творческих/пересказывающих задач. - Что default (консенсус или первый ответ) — можно поменять базовый вариант под свою задачу. - Шаг "ремонт" можно убрать для простых вопросов, где достаточно консенсуса + проверки судьи.
Шаблон промпта
Источник/документ: {текст}
Вопрос: {вопрос}
Шаг 1 — Кандидаты:
Дай {N} независимых попыток ответить на вопрос, используя только текст источника. Назови их Кандидат_1, Кандидат_2...
Шаг 2 — Сертификация:
Для каждого кандидата проверь: есть ли в источнике БУКВАЛЬНАЯ цитата, подтверждающая ответ. Приведи цитату или отметь "не подтверждён".
Шаг 3 — Консенсус:
Найди ответ, который повторяется у большинства кандидатов.
Шаг 4 — Правило выбора (строго по порядку, не смешивай критерии в одну оценку):
- Консенсус подтверждён → верни консенсус.
- Консенсус не подтверждён, но другой кандидат подтверждён → верни его, с цитатой.
- Никто не подтверждён → сгенерируй и проверь новый ответ. Верни его только если он подтверждён, иначе напиши "недостаточно доказательств в источнике".
Никогда не выбирай ответ только за убедительность звучания — выбирай только по наличию цитаты.
Плейсхолдеры: {текст} — документ/статья/отчёт, по которому нужен точный ответ. {вопрос} — сам вопрос. {N} — сколько вариантов ответа генерировать (обычно 3).
🚀 Быстрый старт — вставь в чат:
Вот шаблон правила отбора ответов EL-DGR. Адаптируй под мою задачу: {твоя задача}.
Задавай вопросы, чтобы заполнить поля.
[вставить шаблон выше]
LLM спросит какой у тебя источник и вопрос, сколько вариантов нужно сгенерировать — потому что без источника и явного вопроса правило "цитата = доказательство" не сработает. Она возьмёт логику страт (консенсус → подтверждённый выбор → ремонт) и подстроит под твою задачу.
Ограничения
⚠️ Только для проверяемых фактов: метод работает там, где есть источник с конкретными фактами или числами (договор, отчёт, статья). Для творческих или субъективных задач (оценка стиля текста, идей) цитаты-доказательства не существует — метод неприменим.
⚠️ Строгая цитата теряет верные пересказы: если модель ответила правильно, но своими словами, а не точной цитатой — метод отклонит этот ответ. Это осознанная цена за надёжность.
⚠️ Не улучшает саму генерацию: метод только выбирает среди уже сгенерированных вариантов. Если все варианты изначально плохие — метод не спасёт.
⚠️ Не работает как обучающий сигнал: если попытаться просуммировать все критерии оценки в один вес для "тренировки" модели — эффект нулевой. Работает только как правило отбора после генерации, не как способ сделать модель умнее в целом.
Как исследовали
Исследователи заморозили пул готовых ответов от четырёх разных обученных моделей на задачах GSM8K (математика) и HotpotQA (вопросы по документам) и сравнили четыре способа выбора финального ответа из этого пула: первый попавшийся, голосование большинством, судья с полной властью и EL-DGR. Судьёй была модель DeepSeek-R1-7B, которая никогда не видела правильный ответ.
Самое неожиданное: на контрольной выборке из 30 вопросов судья с полной властью оказался хуже, чем если бы его вообще не спрашивали — на 10 пунктов ниже голосования большинством, при этом уверенно выставляя оценки каждому варианту. Стоило дать тому же судье те же данные, но ограничить его право переопределять консенсус только доказательством — результат подскочил и стал лучшим среди всех вариантов.
Отдельно исследователи проверили, работает ли разбивка на несколько критериев оценки (логика, факты, уверенность и т.д.) как обучающий сигнал для модели — и это оказалось пустым результатом: точность не изменилась, а проверка "какой критерий важнее" показала, что ни один критерий не является обязательным сам по себе. Вывод: разбивка критериев помогает только когда используется как фильтр допуска, а не когда сводится в одну итоговую цифру для тренировки.
Ресурсы
When the Judge Should Not Decide: Evidence-Locked, Non-Compensatory Selection Bounds LLM-Judge Failure in Reasoning Pipelines — Yiyao Zhang, Diksha Goel, Hussain Ahmad, Shixun Huang, Jun Shen. University of Wollongong, CSIRO's Data61, Adelaide University. NeurIPS 2026 Workshop "Can We Trust the Judge?".
