TL;DR
GroupQA — исследование того, как модели обрабатывают группы противоречивых документов в RAG-системах (когда LLM получает несколько найденных статей и должна дать ответ). Исследователи создали датасет из 1635 спорных вопросов с 15 058 документами разных позиций и проверили, что влияет на финальный ответ модели: количество документов, их порядок, повторение или разнообразие аргументов.
Главная находка: модели ведут себя как уязвимые следователи за эвристиками, а не как рациональные аналитики. Повторение одного аргумента разными словами убеждает модель сильнее, чем несколько независимых доказательств. Первые документы в списке влияют больше последних. Большие модели упрямее малых — им труднее изменить мнение новыми данными. Когда модель объясняет "почему я так решил" — это ненадёжно: в 74% случаев она неправильно определяет какой документ был самым важным.
Исследование показывает три ключевых слабости: (1) Эффект иллюзии правды — частота повторения перевешивает качество аргументов, (2) Эффект первичности — ранние документы якорят решение, поздние игнорируются, (3) Ложная атрибуция — модель не знает что на неё повлияло, но уверенно объясняет.
Ключевые находки
1. Повторение сильнее разнообразия
Контринтуитивный результат: Если взять один аргумент и перефразировать его 5 раз — это убедит модель сильнее, чем дать 5 разных независимых аргументов в поддержку той же позиции.
Пример из исследования: - Разные аргументы (5 независимых документов) → модель сменила мнение в 67.6% случаев - Один аргумент 5 раз (перефразированный) → модель сменила мнение в 76.5% случаев
Это работает потому что модель путает частоту упоминания с силой консенсуса. Чем чаще видит похожую мысль — тем увереннее считает её правдой. Это называется Illusory Truth Effect (эффект иллюзии правды) — психологический эффект, который работает и на людях, и на LLM.
Как это использовать:
✅ Если хочешь убедить модель: Сформулируй главный аргумент несколькими способами. Не давай 10 разных причин — дай 3 причины, каждую раскрой с 3 сторон.
✅ Если хочешь объективности: Специально включи противоположные взгляды. Когда модель видит явный конфликт — она становится осторожнее и меньше поддаётся повторению.
2. Порядок документов = приоритет влияния
Находка: Первые 1-2 документа в контексте влияют на решение сильнее, чем последние. Если дать модели 5 документов "за" и 5 "против" — она склонится к позиции тех, что были первыми, даже при равном качестве аргументов.
Цифры: Llama-3.1-70B на 3.5% чаще сохраняла исходное мнение, когда подтверждающие документы были в начале списка, а не в конце.
Это называется Primacy Effect (эффект первичности). Ранние токены создают якорь — начальную позицию, от которой модель потом не отходит. Последующие документы обрабатываются как "а что ещё сказать" вместо "давайте пересмотрим выводы".
Как это использовать:
✅ Самое важное — в начало контекста: Загружаешь несколько файлов? Ставь главный первым. Даёшь список источников? Самый надёжный — наверх.
✅ Для честного анализа — перемешивай: Если хочешь чтобы модель оценила все позиции равно — попроси её проанализировать документы в случайном порядке или дай конфликтующие документы вперемешку, а не блоками.
3. Большие модели упрямее малых
Находка: Чем больше параметров в модели — тем труднее изменить её мнение новыми данными.
Метрика "пластичность" — насколько легко модель меняет вероятность ответа при новых свидетельствах: - DeepSeek-R1-8B: пластичность 0.075 (меняет мнение активно) - Llama-3.1-70B: пластичность 0.0074 (в 10 раз устойчивее)
Это степенная зависимость: пластичность ≈ 0.18 × (параметры в миллиардах)^-0.097
Почему: Большие модели обучены на большем объёме данных — у них сильнее параметрические знания (то, что "зашито" в веса). Чтобы перевесить это, нужны экспоненциально более сильные свидетельства.
Как это использовать:
✅ Для спорных вопросов используй меньшие модели: Если задача — честно рассмотреть новые данные без предвзятости — Gemini-2.5-Flash или Llama-8B будут гибче, чем GPT-4 или Claude Opus.
✅ Для больших моделей — усиливай контекст: Если работаешь с топовой моделью и видишь что она игнорирует твои данные — повтори ключевые факты несколькими способами, добавь явное указание: "Опирайся только на предоставленный контекст, не на общие знания".
4. Модель не знает что на неё повлияло
Находка: Когда модель объясняет "какой документ был самым важным для моего решения" — она ошибается в 74% случаев.
Как проверяли: 1. Дали модели несколько документов 2. Спросили: "Какой документ самый важный? Если его убрать — изменится ли твой ответ?" 3. Потом реально убрали каждый документ и проверили что меняется 4. Совпадение: только 26%
Модель выдаёт пост-хок рационализацию — придумывает объяснение после ответа, а не показывает реальные причины. Это как человек, который уверенно объясняет почему купил красную машину ("она безопаснее"), хотя на деле просто нравится красный цвет.
Как это использовать:
❌ Не доверяй self-attribution: Промпты типа "Объясни какие факторы были решающими" или "Оцени важность каждого источника" дают ненадёжные результаты.
✅ Для проверки — используй ablation (удаление): Хочешь понять что повлияло на вывод? Убирай элементы контекста по одному и смотри как меняется ответ. Не спрашивай модель — проверяй поведение.
✅ Для объективности — используй конфликтующий контекст: Когда модель видит явное противоречие в документах — она становится осторожнее и её решения стабильнее. Flip rate падает, требуется больше свидетельств для смены мнения.
Пример применения
Задача: Ты оцениваешь стоит ли запускать кофейню в спальном районе. Попросил ChatGPT проанализировать рыночные данные, загрузил 6 статей: 3 про успешные кейсы, 3 про провалы.
Слабый промпт (игнорирует находки):
Вот 6 статей о кофейнях в спальниках. Проанализируй и скажи — стоит открывать или нет?
[статьи в случайном порядке]
Сильный промпт (использует находки):
Задача: Оценить целесообразность запуска кофейни в спальном районе.
Контекст:
У меня 6 статей — 3 про успешные кейсы, 3 про провалы.
Важно: Не полагайся на общие знания. Анализируй только предоставленные данные.
Методика анализа:
1. Сначала прочитай ВСЕ статьи
2. Выпиши факторы успеха из положительных кейсов
3. Выпиши факторы провала из негативных кейсов
4. Сравни факторы с моей ситуацией: [описание района, бюджет, конкуренты]
КРИТИЧНО: Я специально подобрал статьи с РАЗНЫМИ выводами. Твоя задача — взвесить аргументы, не склоняться к первому впечатлению.
Статьи (перемешаны специально):
[статья провал 1]
[статья успех 1]
[статья провал 2]
[статья успех 2]
[статья провал 3]
[статья успех 3]
Дай вывод с обоснованием: какие факторы решающие в МОЙ ситуации?
Что изменилось:
✅ Явное указание на конфликт — модель знает что есть противоречия, становится осторожнее
✅ Документы вперемешку — нейтрализация Primacy Effect, нет блока "сначала все позитивные"
✅ Запрет на общие знания — снижение влияния параметрической памяти
✅ Пошаговая методика — модель не выдаст скороспешный вывод по первым 2 документам
✅ Привязка к контексту — не абстрактный анализ, а под конкретную ситуацию
Результат: Модель выдаст сбалансированный анализ вместо склонения к "открывай!" или "не открывай!" на основе первых впечатлений. Она будет взвешивать факторы, а не суммировать голоса "за" и "против".
Шаблон промпта
Для задач где нужен объективный анализ противоречивых данных:
Задача: {опиши что нужно решить}
Контекст:
У меня есть {N} источников с ПРОТИВОРЕЧИВЫМИ выводами по этому вопросу.
КРИТИЧНО:
- Не полагайся на общие знания
- Читай ВСЕ источники перед выводами
- Специально выискивай конфликтующие аргументы
- Взвешивай качество аргументов, не частоту упоминания
Методика анализа:
1. Прочитай все источники полностью
2. Выпиши аргументы "ЗА" с указанием силы (факты/экспертиза/мнение)
3. Выпиши аргументы "ПРОТИВ" с указанием силы
4. Определи какие факторы решающие для моей ситуации: {опиши контекст}
5. Дай вывод с обоснованием: почему одни аргументы перевесили другие
Источники (перемешаны специально):
{источник 1}
{источник 2}
...
Если недостаточно данных для уверенного вывода — скажи прямо. Лучше честная неопределённость, чем ложная уверенность.
Что подставлять:
- {опиши что нужно решить} — конкретная дилемма или вопрос
- {N} — количество документов/источников
- {опиши контекст} — специфика твоей ситуации
- {источник 1}, {источник 2}... — вперемешку позитивные и негативные источники, не блоками
Ключевые элементы шаблона:
🔧 "Противоречивых выводов" — активирует режим осторожности, модель не склоняется к большинству автоматически
🔧 "Читай ВСЕ источники перед выводами" — борьба с Primacy Effect, модель не делает вывод по первым 2 документам
🔧 "Не частоту упоминания" — прямое указание игнорировать Illusory Truth Effect
🔧 "Перемешаны специально" — снимает якорение на первые документы, модель знает что порядок искусственный
🔧 Пошаговая методика — заставляет обработать все данные до синтеза вывода
Почему это работает
Слабость LLM: Модели не умеют семантическую интеграцию — они не оценивают информационную независимость источников, не взвешивают качество доказательств. Вместо этого они используют текстовые эвристики: частоту упоминания, позицию в контексте, синтаксическое сходство.
Что происходит "в лоб": Даёшь модели 10 документов → она делает вывод по первым 2-3 (Primacy Effect) → если среди первых есть повторяющаяся мысль → воспринимает как консенсус (Illusory Truth) → выдаёт ответ → придумывает пост-хок объяснение "я учёл все факторы" (ложная атрибуция).
Сильная сторона LLM: Модели отлично следуют явным инструкциям и могут откладывать выводы если попросить. Они умеют распознавать конфликты (89.8% accuracy) и правильно определять stance документов (76.2% accuracy). Проблема не в том что они не видят противоречий — а в том что обрабатывают их эвристически, если не задать чёткую методику.
Как шаблон обходит слабости:
- "Противоречивых выводов" + "читай ВСЕ" → активирует режим epistemic caution, модель не делает быстрый вывод
- Пошаговая декомпозиция → заставляет обработать весь контекст до синтеза (борьба с Primacy)
- "Перемешаны специально" + явное указание на конфликт → нейтрализует якорение на порядок
- "Взвешивай качество, не частоту" → прямая инструкция игнорировать Illusory Truth Effect
- "Если недостаточно данных — скажи" → разрешение на неопределённость вместо ложной уверенности
Рычаги управления:
🔧 Уровень осторожности: - Хочешь чтобы модель была смелее → убери "противоречивых", оставь просто "несколько источников" - Хочешь максимальную осторожность → добавь "если хоть один сильный аргумент против — отметь как рисковое решение"
🔧 Глубина анализа: - Для быстрого обзора → убери пошаговую методику, оставь "прочитай всё → дай вывод" - Для детального разбора → добавь шаг "3.5. Оцени силу каждого аргумента: факт/исследование/мнение/домысел"
🔧 Баланс vs решительность: - Задача требует конкретного решения → добавь "взвесив всё, выбери одну позицию и объясни почему" - Задача требует честности → усиль "лучше признать неопределённость → это не слабость анализа, а честность"
🔧 Порядок документов: - Для нейтрального анализа → перемешивай противоположные позиции - Для проверки устойчивости вывода → прогони дважды с перевёрнутым порядком — если выводы разные, данных недостаточно
Ограничения
⚠️ Размер модели vs гибкость: Большие модели (GPT-4, Claude Opus, Llama-70B) имеют в 10 раз меньшую пластичность, чем малые (GPT-3.5, Gemini-Flash, Llama-8B). Если задача требует непредвзятого рассмотрения новых данных — топовая модель может упрямо держаться своих параметрических знаний даже при сильных свидетельствах. Для объективного анализа иногда лучше меньшая, но гибкая модель.
⚠️ Эффекты усиливаются в длинных контекстах: Чем больше документов в контексте — тем сильнее работает Illusory Truth Effect. В коротких контекстах (1-2 документа) разнообразие важнее повторения. В длинных (5+ документов) — частота перевешивает. Если даёшь много материала — особенно критично перемешивать источники и давать явные инструкции против эвристик.
⚠️ Методика не отменяет эвристик полностью: Даже с сильным промптом модель не становится идеальным рациональным агентом. Primacy Effect снижается, но не исчезает. Illusory Truth ослабевает, но работает. Это снижение вреда, не устранение. Для критических решений — используй несколько прогонов с переставленным порядком документов и сравнивай выводы.
⚠️ Chain-of-Thought не помогает: Исследование показало что CoT ("думай пошагово") даёт сдвиг в вероятностях <0.5% — статистически незначимый. Reasoning traces в этом контексте работают как пост-хок рационализации, не как корректирующий механизм. Не полагайся на "думай пошагово" для преодоления bias — нужны явные структурные инструкции.
Как исследовали
Исследователи из Carnegie Mellon построили GroupQA — датасет из 1635 спорных вопросов типа "Улучшает ли кофеин долгосрочную память?" или "Является ли атомная энергетика возобновляемой?". Для каждого вопроса они собрали в среднем 9.2 документа с противоположными позициями через Google Search API — искали и утверждение, и отрицание, получили 15,058 документов в сумме.
Два LLM-судьи (GPT-4o-mini и Gemini-2.5-Flash) размечали каждый документ: stance (за/против/нейтрально) и strength (сильный/средний/слабый на основе наличия цитат и экспертизы). Согласованность проверили на 100 случайных документах — 99% точность.
Потом они тестировали модели (от Llama-8B до Llama-70B, Gemini, DeepSeek, Qwen) в контролируемых сценариях:
1. Baseline: Дают вопрос без контекста → модель отвечает из параметрической памяти → замеряют prior probability P(Yes)
2. Evidence Accumulation: Постепенно добавляют документы (1, 2, 3... до 10) и смотрят когда модель меняет ответ (flip threshold) и насколько смещается вероятность (plasticity)
3. Distinct vs Paraphrased: Сравнивают два режима — (а) накопление разных аргументов в пользу одной позиции vs (б) перефразировки одного аргумента. Перефразы генерировали через GPT-4o.
4. Conflicting Context: Инициализируют контекст балансом (1 документ "за" + 1 "против"), потом добавляют ещё — смотрят как наличие явного конфликта меняет восприимчивость к новым данным.
5. Ordering Experiments: Переставляют документы местами — подтверждающие в начало vs в конец — и замеряют positional bias (разница в flip rate).
6. Attribution Test: На 200 вопросах спрашивают модель: "Какой документ самый важный? Если его убрать — изменится ли ответ?" Потом реально удаляют каждый документ по очереди (leave-one-out) и смотрят что каузально меняет ответ. Сравнивают вербальную атрибуцию с реальной → совпадение только 26%.
Почему результаты получились такими: Изначально ожидалось что модели будут рациональными агрегаторами — больше разных аргументов = сильнее позиция. Но оказалось наоборот: модели работают как frequency detectors, не как semantic integrators. Они не оценивают информационную независимость источников (что 5 разных экспертов = более сильное свидетельство чем 1 эксперт повторенный 5 раз). Вместо этого они подсчитывают паттерны токенов — чем чаще видят похожую фразу, тем "правдивее" считают.
Удивительная находка: Даже Chain-of-Thought не исправляет эти эвристики. Сдвиг в ответах между стандартным промптом и CoT — меньше 0.5%. Это показывает что reasoning traces в таких задачах работают как пост-хок объяснения (модель уже решила, теперь объясняет почему), а не как рассуждение для улучшения решения.
Инсайт для практики: Текущие RAG-системы уязвимы к манипуляциям через контролируемое повторение (SEO для LLM — вместо ключевых слов, повторяй аргумент разными словами в разных местах). С другой стороны, явный конфликт делает модели осторожнее — если система детектирует противоречия и специально включает альтернативные взгляды, качество синтеза растёт. Вывод: не пытайся дать модели "чистую" информацию одной позиции — добавляй оппозицию явно, это улучшает решения.
Ресурсы
Rational Synthesizers or Heuristic Followers? Analyzing LLMs in RAG-based Question-Answering (2025) - Датасет: GroupQA (1,635 спорных вопросов, 15,058 документов с разметкой stance и strength) - Связанные работы: ConflictingQA (Wan et al., 2024), Lost in the Middle (Liu et al., 2024)
Atharv Naphade, Carnegie Mellon University
