TL;DR
OBJECTION — техника, где вместо обычного "критика" в модель встраивается роль адвоката защиты, который на каждом шаге рассуждения обязан искать основания для оправдания, а не просто проверять логику на ошибки. Модель сначала выносит промежуточное решение, затем "адвокат" атакует это решение конкретными доводами защиты, и только после этого модель пересматривает вердикт — и так на трёх последовательных этапах оценки.
Юридические тексты почти всегда написаны с точки зрения обвинения — раз дело дошло до суда, значит следствие уже "уверено" в виновности. LLM, обученная на таких текстах, перенимает этот перекос и склонна штамповать обвинительные вердикты даже когда есть явные основания для оправдания. Хуже того — если просто заставить модель рассуждать "по шагам" (без роли защитника), это только усиливает обвинительный уклон, потому что структурированное рассуждение без противовеса превращается в детальное обоснование уже готового вывода.
Решение — не общий "критик", который спрашивает "логика верна?", а роль с конкретной установкой "есть ли разумные сомнения?", встроенная в каждый из трёх шагов оценки (состав деяния → обстоятельства, снимающие вину → личная ответственность), а не приклеенная в конце после готового вердикта.
Схема метода
ШАГ 1 (Offense — состав деяния): модель извлекает факты по структуре
Субъект / Объект / Действие / Намерение → выносит первичное суждение
ШАГ 2 (Lawyer Agent атакует шаг 1): модель в роли адвоката ищет
оправдывающие обстоятельства (самозащита, отсутствие умысла) → доводы защиты
ШАГ 3 (модель пересматривает): исходная модель видит доводы защиты
и обстоятельства → выносит финальный вердикт по этапу
→ Если на любом этапе найдено достаточное основание для оправдания —
процесс останавливается (Early Exit), дальше не идём
→ Иначе повторить цикл Шаг1-3 для следующего этапа (Unlawfulness → Culpability)
Все три раунда выполняются в рамках одной сессии рассуждения, но каждый раунд — отдельный обмен "первое суждение → атака защиты → пересмотр".
Пример применения
Задача: Руководитель разбирает провал проекта и должен понять, кто виноват в срыве дедлайна, перед тем как принять решение об увольнении сотрудника. Отчёт от менеджера проекта уже написан с обвинительным уклоном — он описывает факты так, чтобы обосновать вину конкретного исполнителя.
Промпт:
Я дам тебе отчёт о провале проекта, написанный менеджером. Отчёт может быть
предвзятым — написан, чтобы обосновать вину исполнителя.
Проведи оценку в три этапа. На каждом этапе:
1. Сначала оцени как "прокурор" — есть ли основания считать сотрудника виновным?
2. Затем переключись в роль "адвоката защиты сотрудника" — активно ищи
любые смягчающие обстоятельства, даже если на первый взгляд их не видно:
были ли объективные препятствия, недостаток ресурсов, неясные инструкции,
форс-мажор.
3. Пересмотри вывод с учётом доводов защиты.
Этапы:
А) Были ли объективные основания считать, что срыв — следствие
действий сотрудника, а не системных проблем?
Б) Были ли обстоятельства, снимающие ответственность (отсутствие ресурсов,
изменение требований на ходу, нечёткие инструкции руководства)?
В) Можно ли лично сотруднику предъявить ответственность, или проблема —
в организации процесса?
Если на любом этапе находишь достаточное основание снять вину —
останавливайся и делай вывод сразу, не продолжай искать вину дальше.
Отчёт менеджера: {текст отчёта}
Результат: Модель пройдёт три раунда — сначала обвинительная версия, затем аргументы защиты (конкретные: например "в отчёте не упомянуто, что требования менялись три раза за две недели"), затем пересмотренный вывод по каждому этапу. Если на этапе Б находится веское основание — модель остановится и даст вывод "ответственность снимается из-за смягчающих обстоятельств", не переходя к этапу В.
Почему это работает
LLM, обученная на текстах с обвинительным уклоном, по умолчанию воспринимает предвзятое описание фактов как объективную истину — она не различает "что случилось" и "как это подали, чтобы обвинить". Просьба "подумай ещё раз" или "проверь логику" не помогает, потому что модель проверяет внутреннюю согласованность уже предвзятого нарратива, а не сам нарратив.
Зато модель хорошо умеет отыгрывать роль с чёткой установкой. Если роль — просто "критик", модель ищет логические ошибки в рассуждении, но не ставит под вопрос сами исходные факты. Если роль — "адвокат, чья единственная задача — найти разумные сомнения", модель начинает искать альтернативные интерпретации фактов, а не только ошибки в цепочке рассуждений.
Ключевой рычаг здесь — не количество агентов, а специфичность роли. Исследователи проверили: если заменить "адвоката" на обычного второго критика без конкретной установки на поиск смягчающих обстоятельств, обвинительный перекос почти не снижается. Значит дело не в том, что "второе мнение спрашивают", а в том, что роль явно и узко сформулирована — "твоя единственная задача — искать основания для оправдания", а не "оцени, всё ли верно".
Второй рычаг — где вставлять роль-противовес. Если добавить проверку защитника только в конце, после готового вердикта, эффект слабее, чем если встраивать её на каждом промежуточном шаге рассуждения. Модель проще "передумывает" по шагам, чем ломает уже сформированный финальный вывод.
Шаблон промпта
Я дам тебе описание ситуации/дело, которое может быть представлено
с обвинительным уклоном (написано так, чтобы обосновать вину {субъект}).
Оцени ситуацию в {число} этапа. На каждом этапе:
1. Дай первичную оценку на основе описания — есть ли основания
для вывода "виновен/проблема на стороне {субъект}"?
2. Переключись в роль защитника {субъект}. Твоя единственная задача —
активно искать основания для оправдания, даже если на первый взгляд
их не видно. Не проверяй логику первичной оценки — ищи альтернативные
объяснения фактов, смягчающие обстоятельства, недостающий контекст.
3. Пересмотри вывод с учётом доводов защиты. Итоговое решение должно
явно учитывать, изменились ли выводы после атаки защитника.
Этапы оценки:
1) {критерий проверки №1 — базовое основание для вывода}
2) {критерий проверки №2 — обстоятельства, снимающие ответственность}
3) {критерий проверки №3 — личная/прямая ответственность субъекта}
Если на любом этапе находишь достаточное основание для оправдания —
останавливайся сразу, не переходи к следующему этапу.
Описание ситуации: {текст}
🚀 Быстрый старт — вставь в чат:
Вот шаблон метода "адвокат-агент против перекоса". Адаптируй под мою задачу:
{твоя задача}. Задавай вопросы, чтобы заполнить поля.
[вставить шаблон выше]
LLM спросит какие именно этапы проверки нужны и кто "субъект" оценки — потому что метод работает только если этапы отражают реальную логику вынесения решения в твоей области (не любые 3 шага подойдут, они должны быть последовательными и содержательными).
Ограничения
⚠️ Перегиб в другую сторону: если базовая модель уже специально дообучена определять невиновность (как LJPIV в исследовании), добавление роли-адвоката сверху приводит к обратному эффекту — модель начинает оправдывать почти всех подряд. Не комбинируй метод с моделью/промптом, который уже сам заточен искать смягчающие обстоятельства.
⚠️ Нужен структурный якорь: без предварительного разбора фактов на составляющие (кто, что, при каких обстоятельствах) роль-адвокат начинает "фантазировать" оправдания без опоры на реальные детали — растёт число необоснованных оправданий. Перед запуском адвокатского раунда дай модели явно разложить факты по пунктам.
⚠️ Непредсказуемость на разных моделях: эффект силы метода заметно различается между разными LLM — на одних моделях перекос снижается сильно, на других слабо. Стоит проверить эффект на своей модели перед тем как полагаться на метод в важных решениях.
Как исследовали
Команда взяла реальную проблему юридического ИИ: модели, предсказывающие виновность по материалам дела, систематически "штампуют" обвинительные вердикты, потому что тексты дел изначально написаны обвинением. Они собрали новый датасет из 3400 реальных дел с оправдательными приговорами (а не искусственно сгенерированных, как делали раньше) — потому что синтетические примеры оправдания содержат "искусственные подсказки", на которые модель просто учится реагировать, а не реально анализирует ситуацию.
Проверяли на трёх открытых LLM (Qwen, Llama, Gemma) и сравнивали с четырьмя вариантами обычного промптинга плюс с fine-tuned моделью-чемпионом, обычным self-critique и раунд-стол дебатами. Главная метрика — процент невиновных, ошибочно признанных виновными.
Результат удивил тем, что "дообучение специально под невиновность" (LJPIV) хорошо работало на синтетических данных, но проваливалось на реальных оправдательных делах — модель переобучилась на искусственных подсказках вместо реального анализа. А обычный "раунд-стол дебатов" оказался нестабильным: на одной модели он почти не помогал, на другой — переусердствовал и начинал оправдывать виновных без разбора. Только роль с узкой и явной установкой "искать сомнения на каждом шаге" дала стабильный эффект на разных моделях.
