TL;DR
MABPD — метод, где три роли-эксперта разбирают текст с разных углов (перекос в словах, доказательная база, подача фактов), а потом их вердикты взвешивают по формуле: вес роли × уверенность × наличие реальной цитаты из текста. Если эксперт кричит "здесь предвзятость!", но не может процитировать конкретное место в тексте — его голос обнуляется, сколько бы уверенности он не заявлял.
Одна LLM, играющая детектора предвзятости, склонна выдавать уверенный вердикт "на глаз", без реальной проверки — и после самокритики просто укрепляется в своём первом мнении, а не пересматривает его. Простое добавление нескольких "агентов" параллельно почти не помогает: без структурированного спора recall (умение находить реально предвзятые тексты) падает вдвое — модель становится слишком осторожной и упускает половину случаев.
Суть метода — не в количестве ролей, а в правиле бремени доказательства: обвинение в предвзятости без цитаты = 0 вес. Зато нейтральный вердикт без явных цитат всё равно получает частичный вес (0.6) — потому что "тщательно искал и не нашёл перекоса" — это тоже сигнал. Финальный судья (verifier) может только понизить вердикт "предвзято → нейтрально", но никогда не завышает его — так система не переусердствует.
Схема метода
ШАГ 1 (в одном промпте, роли независимы друг от друга):
Роль "Тон" (вес 0.5), Роль "Факты" (вес 0.25), Роль "Подача" (вес 0.25)
каждая выдаёт → вердикт (предвзято/нейтрально/не уверен) + до 5 цитат + уверенность 0-1 + контраргумент себе
ШАГ 2 (расчёт весов):
вес_эффективный = вес_роли × уверенность × коэффициент_доказательства
коэффициент = 0, если "предвзято" без цитаты
коэффициент = 0.6, если "нейтрально" без цитаты
коэффициент = 1, если цитата есть и подтверждена в тексте
ШАГ 3 (голосование):
побеждает вердикт с максимальной суммой эффективных весов
"предвзято" засчитывается только если хотя бы одна цитата реально подтверждена
ШАГ 4 (финальная проверка):
Судья может понизить "предвзято" → "нейтрально" (если доказательства слабые)
Судья НЕ МОЖЕТ повысить "нейтрально" → "предвзято"
Пример применения
Задача: Вы ведёте небольшой бренд, и блогер выпустил разгромный обзор вашего продукта. Вы не уверены — это объективная критика или предвзятая атака (может, у блогера конфликт интересов с конкурентом). Нужно разобраться перед тем, как отвечать публично.
Промпт:
Ты играешь роль трёх независимых экспертов, которые проверяют текст на предвзятость.
У каждого эксперта своя зона внимания и вес голоса.
Эксперт 1 — "Тон" (вес 0.5): ищет оценочные, эмоционально заряженные слова,
навешивание ярлыков вместо описания фактов.
Эксперт 2 — "Доказательства" (вес 0.25): проверяет, подтверждены ли утверждения
конкретными фактами, ссылками, примерами — или это голые заявления.
Эксперт 3 — "Подача" (вес 0.25): смотрит, что автор замолчал, чья точка зрения
не представлена, есть ли манипулятивная структура (например, только негатив без контекста).
Каждый эксперт должен выдать:
— Вердикт: "предвзято" / "нейтрально" / "не уверен"
— До 5 прямых цитат из текста как доказательство (не пересказ, а точные фразы)
— Уверенность от 0 до 1
— Контраргумент самому себе (что могло бы опровергнуть его вердикт)
ПРАВИЛО ВЕСА ДОКАЗАТЕЛЬСТВА (обязательно применить):
— Если вердикт "предвзято" и нет ни одной прямой цитаты — вес доказательства = 0
(голос эксперта не считается, независимо от уверенности)
— Если вердикт "нейтрально" без явных цитат предвзятости — вес доказательства = 0.6
(отсутствие признаков перекоса — это тоже сигнал)
— Если цитата есть — вес доказательства = 1
Рассчитай финальный вердикт как взвешенное большинство:
вес_роли × уверенность × вес_доказательства.
Чтобы объявить текст "предвзятым", минимум один эксперт обязан привести реальную цитату.
В конце — вынеси финальную проверку: если итоговый вердикт "предвзято", но доказательства
слабые (мало цитат, низкая уверенность) — понизь до "нейтрально".
Никогда не повышай "нейтрально" до "предвзято" на этом шаге.
Текст для анализа:
{текст обзора блогера}
Результат: Модель покажет три отдельные экспертизы с цитатами и уверенностью, затем — расчёт весов и итоговый вердикт с объяснением, почему именно так (например: "Эксперт 'Тон' назвал текст предвзятым, но не привёл цитат — его голос не засчитан; Эксперт 'Доказательства' нашёл 2 непроверенных заявления — вес учтён"). В конце — один финальный ответ: предвзято / нейтрально, с опорой на конкретные цитаты, а не на общее ощущение.
Почему это работает
Одна модель, которую просто попросить "оцени, предвзят ли текст", склонна выдать вердикт по общему ощущению — это быстро, но ненадёжно: она может почувствовать "что-то не так" и назвать текст предвзятым без реальной опоры на конкретные слова. Хуже того: если попросить её перепроверить себя, она чаще подтверждает первое мнение, а не пересматривает его.
Зато LLM отлично умеет находить и цитировать конкретные фрагменты текста, когда её явно об этом просят, и умеет удерживать разные "точки зрения" в рамках одного рассуждения, если дать им чёткие роли.
Метод использует это: заставляет каждую "роль" обязательно подтверждать вердикт цитатой, а потом математически обнуляет голоса без подтверждения. Так уверенность больше не подменяет доказательство.
Рычаги управления: - Веса ролей (0.5/0.25/0.25) → смени, если для твоей задачи важнее не тон, а факты или подача. - Коэффициент "нейтрально без доказательств" (0.6) → повысь, если хочешь больше доверять "чистому" вердикту; понизь — если хочешь жёстче требовать доказательства даже для нейтральных заключений. - Порог для финального вердикта (0.5 в оригинале) → повысь до 0.7, если нужен более строгий отбор явных случаев. - Асимметрия судьи (может только понижать) → это ключевой рычаг против ложных срабатываний; если тебе важнее не упустить случаи, а не избежать ложных обвинений — можно сделать симметричным.
Шаблон промпта
Ты играешь роль {количество} независимых экспертов, анализирующих {тип_текста}
на предмет {что_ищем — предвзятость/манипуляцию/натянутые выводы}.
Эксперт 1 — "{роль_1}" (вес 0.5): {что_проверяет}
Эксперт 2 — "{роль_2}" (вес 0.25): {что_проверяет}
Эксперт 3 — "{роль_3}" (вес 0.25): {что_проверяет}
Каждый эксперт выдаёт:
— Вердикт: "{вариант_1}" / "{вариант_2}" / "не уверен"
— До 5 прямых цитат из текста как доказательство
— Уверенность от 0 до 1
— Контраргумент самому себе
ПРАВИЛО ВЕСА ДОКАЗАТЕЛЬСТВА:
— Вердикт "{вариант_1}" без цитаты → вес доказательства = 0
— Вердикт "{вариант_2}" без явных цитат → вес доказательства = 0.6
— Есть цитата → вес доказательства = 1
Финальный вердикт = сумма (вес_роли × уверенность × вес_доказательства) по каждому варианту,
победитель — максимум. Чтобы объявить "{вариант_1}", минимум один эксперт обязан привести цитату.
Финальная проверка: если итоговый вердикт "{вариант_1}" при слабых доказательствах —
понизь до "{вариант_2}". Никогда не повышай в обратную сторону.
Текст для анализа:
{текст}
Что подставить: {тип_текста} — статья, отзыв, письмо, коммерческое предложение; {что_ищем} — предвзятость, манипуляция, недостоверность; роли — подбери 2-3 угла зрения под свою задачу (например, для проверки резюме: "факты", "преувеличения", "недосказанность").
🚀 Быстрый старт — вставь в чат:
Вот шаблон многоагентной проверки на предвзятость с бременем доказательства.
Адаптируй под мою задачу: {твоя задача}.
Задавай вопросы, чтобы заполнить поля.
[вставить шаблон выше]
LLM спросит, какие три угла зрения важны для твоего типа текста и какой из двух исходов (предвзято/нейтрально или другая пара) ты проверяешь — потому что вес и правило доказательства настраиваются именно под эту пару вердиктов.
Ограничения
⚠️ Короткие тексты: метод требует цитат как доказательства. На твитах, коротких комментариях или заголовках просто нет материала для 5 подтверждённых цитат — роли будут работать вхолостую.
⚠️ Лишняя работа на простых случаях: полный цикл (3 роли + расчёт весов + финальная проверка) избыточен для текста, который явно нейтрален или явно токсичен. В оригинале для этого есть "быстрый путь" — в чате его придётся добавлять отдельно.
⚠️ Проверено в основном на новостных текстах: перенос на другие жанры (реклама, личные посты, деловая переписка) в исследовании не подтверждён — логика бремени доказательства может требовать адаптации формулировок ролей.
⚠️ Асимметрия судьи снижает чувствительность: система специально настроена не переусердствовать (не завышает вердикт "предвзято"). Если для твоей задачи важнее не пропустить манипуляцию, а не избежать ложных обвинений — асимметрию нужно убрать.
Как исследовали
Команда взяла датасет BABE — 4121 предложение из новостей, размеченное экспертами на предвзятость, и сравнила MABPD с классическими подходами: fine-tuned BERT, RoBERTa и текущий SOTA (MAGPIE, модель, обученная на 59 вспомогательных задачах). Все роли в MABPD запускались на одной и той же модели (LLaMA 3.3 70B) — специально, чтобы вычленить эффект именно архитектуры, а не "умности" конкретной модели.
Ключевой эксперимент — абляция: убрали модуль дебатов, оставив только правила голосования → результат упал на 9-10 баллов F1, в основном из-за того, что модель стала слишком осторожной и упускала половину реально предвзятых текстов. Убрали вообще все роли, кроме одной → упало ещё на 9-19 баллов. Это доказывает: дело не в том, что "много агентов лучше одного", а конкретно в правиле бремени доказательства и споре между ролями.
Проверили ещё и на разных моделях — заменили две вспомогательные роли на более слабые модели (Mixtral, LLaMA 8B) — результат почти не изменился (разница 0.1 балла). Это значит, что выигрыш даёт сама структура взвешенного спора, а не "умная" модель внутри. Дополнительно проверили перенос метода на другой датасет (SemEval HyperPartisan, статьи, а не предложения) — результат почти дотянул до supervised SOTA без единой размеченной обучающей выборки, что подтверждает: метод не подогнан под конкретный датасет.
