3,583 papers
arXiv:2511.10375 66 13 нояб. 2025 г. FREE

TruthfulRAG: разрешение конфликтов на уровне фактов в генерации с дополненным поиском с помощью графов знаний

КЛЮЧЕВАЯ СУТЬ
RAG-системы подают LLM информацию абзацами текста — и модель путается, когда этот текст противоречит её «внутренней энциклопедии» (параметрическим знаниям). Метод TruthfulRAG позволяет радикально снизить галлюцинации при работе с внешними данными, которые конфликтуют со знаниями модели. Вместо сплошного текста система извлекает атомарные факты в формате (Субъект, Отношение, Объект) — например, (Мария, является, CEO), (Мария, работает в, ТехноСфера) — и подаёт их как структурированную карту. LLM в 2-3 раза точнее следует таким данным, чем повествовательному тексту.
Адаптировать под запрос
📌

Ключевые аспекты исследования:

Исследование предлагает систему TruthfulRAG, которая борется с "галлюцинациями" и ошибками LLM, возникающими, когда предоставленная ей информация (например, из поиска в интернете) противоречит ее собственным, "зашитым" в память знаниям. Для этого система автоматически превращает текст в структурированную карту фактов (граф знаний), находит нужные факты и отфильтровывает те, что вызывают у модели "неуверенность", заставляя ее опираться на проверенные данные извне.

Ключевой результат: Предоставление LLM информации в виде структурированных фактов (субъект-отношение-объект) значительно повышает ее доверие к этой информации и, как следствие, точность и правдивость итогового ответа.


🔬

Объяснение всей сути метода:

Представьте, что у LLM есть своя "внутренняя энциклопедия", сформированная при обучении. Если вы даете ей новый текст, который противоречит этой энциклопедии (например, в ее данных CEO компании — Иван, а в вашем тексте — уже Мария), модель может запутаться и выдать неверный ответ, смешав старые и новые данные.

Метод TruthfulRAG решает эту проблему не на уровне промпта, а на уровне системы, работающей "под капотом" чат-бота.

  1. Превращение текста в факты: Вместо того чтобы просто "скармливать" модели абзац текста, система сначала извлекает из него атомарные факты в формате "триплетов": (Субъект, Отношение, Объект). Например, из текста "Мария стала новым CEO компании 'ТехноСфера' в 2024 году" извлекаются триплеты: (Мария, является, CEO), (Мария, работает в, ТехноСфера), (Вступление в должность, произошло в, 2024 год).
  2. Построение "карты фактов" (графа знаний): Из этих триплетов строится логическая схема, где все факты связаны между собой.
  3. Поиск и фильтрация: Когда вы задаете вопрос, система ищет по этой "карте" наиболее релевантные цепочки фактов. Затем она хитро проверяет, какие из этих фактов вызывают у LLM "когнитивный диссонанс" (повышают энтропию, т.е. неуверенность в ответе).
  4. Формирование "правдивого" контекста: Система берет только те факты, которые исправляют неверные знания модели, и подает их в финальный промпт в структурированном виде.

Для обычного пользователя главный вывод: LLM гораздо лучше "верит" не сплошному повествованию, а четко структурированным, разложенным на атомы фактам. Ваша задача — сымитировать работу TruthfulRAG вручную, став для модели "сборщиком фактов".


📌

Анализ практической применимости:

  • Прямая применимость: Нулевая. Пользователь не может запустить этот фреймворк в стандартном интерфейсе ChatGPT или Claude. Это требует программирования и развертывания отдельной системы.

  • Концептуальная ценность: Очень высокая. Исследование наглядно доказывает фундаментальный принцип: структура побеждает нарратив, когда речь идет о фактах. Оно дает пользователю понимание, что для LLM кусок текста — это "суп из слов", а таблица или список фактов — это четкая инструкция. Это помогает сформировать "ментальную модель" LLM как машины, которая ценит порядок и однозначность.

  • Потенциал для адаптации: Огромный. Вместо сложного графа знаний пользователь может использовать простые и доступные инструменты структурирования прямо в промпте:

    • Markdown-списки: Разбивать информацию на пункты и подпункты.
    • XML/HTML-теги: Оборачивать ключевые данные в теги, например <fact>...</fact> или <data>...</data>.
    • Формат "ключ-значение": Предоставлять данные в виде Имя: Мария, Должность: CEO.
    • Таблицы: Использовать Markdown-таблицы для представления сравнительных данных.
    • Двухэтапный промптинг: На первом шаге попросить LLM саму извлечь факты из текста в таблицу, а на втором — дать задание, основываясь только на этой таблице.

🚀

Практически пример применения:

Представим, что вам нужно написать краткую биографию нового генерального директора для внутреннего портала компании, используя информацию из пресс-релиза.

Ты — опытный HR-копирайтер. Твоя задача — написать краткую, но емкую биографическую справку (100-150 слов) о новом CEO, Марии Ивановой, для публикации на внутреннем портале компании.

**Критически важно:** В своем ответе используй **ТОЛЬКО** факты, представленные ниже в разделе ``. Не добавляй никакой информации из своих знаний и не делай предположений.


- **Полное имя:** Иванова Мария Сергеевна
- **Новая должность:** Генеральный директор (CEO)
- **Компания:** ООО "Инновационные Решения"
- **Дата вступления в должность:** 1 июня 2024 года
- **Предыдущее место работы:** Технический директор в компании "ГлобалТех"
- **Период работы в "ГлобалТех":** 2018-2024 гг.
- **Ключевое достижение в "ГлобалТех":** Запуск и масштабирование облачной платформы "CloudSphere", которая увеличила выручку на 40%.
- **Образование:** Магистр компьютерных наук, МГУ, 2012 г.
- **Цитата:** "Я верю, что наша команда способна достичь новых высот за счет инноваций и фокуса на клиенте".


Напиши биографическую справку, основываясь строго на этих данных.
🧠

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

Этот промпт — ручная адаптация принципов TruthfulRAG:

  1. Симуляция "Graph Construction": Вместо сплошного текста пресс-релиза мы предоставляем данные в виде структурированного списка ключ: значение. Это аналог извлеченных "триплетов" (Мария, имеет имя, Мария Сергеевна), (Мария, имеет должность, CEO). Модели гораздо проще "увидеть" эти факты и не перепутать их.
  2. Симуляция "Conflict Resolution": Инструкция используй ТОЛЬКО факты, представленные ниже и Не добавляй никакой информации из своих знаний — это прямой приказ модели предпочесть предоставленный контекст (аналог "правдивого" контекста из TruthfulRAG) своей внутренней, возможно, устаревшей или неполной информации.
  3. Четкие разделители: Использование тега <Factual_Data> помогает модели четко отделить блок с проверенными данными от остальной части промпта, что повышает фокус ее внимания на нужной информации.

📌

Другой пример практического применения

Задача: Составить сравнительный анализ двух смартфонов для личного выбора на основе нескольких обзоров.

Ты — эксперт по мобильной технике, который помогает мне сделать выбор. Проанализируй два смартфона на основе предоставленных характеристик и дай рекомендацию.

**Инструкция:**
1.  Внимательно изучи данные в таблице ``.
2.  Напиши краткий сравнительный анализ (плюсы и минусы каждого).
3.  В конце дай четкую рекомендацию, какой телефон выбрать, если для меня **главный приоритет — время автономной работы и качество фото при слабом освещении**.
4.  Основывай свой анализ и рекомендацию **ИСКЛЮЧИТЕЛЬНО** на данных из таблицы.


| Характеристика | Модель "AuraPhone X" | Модель "NovaPixel 7" |
| :--- | :--- | :--- |
| **Процессор** | Snapdragon 8 Gen 3 | Tensor G4 |
| **Батарея (мАч)** | 4800 | 5200 |
| **Быстрая зарядка (Вт)** | 120 | 45 |
| **Основная камера (Мп)** | 200 | 50 |
| **Размер сенсора осн. камеры** | 1/1.3" | 1/1.12" |
| **Ночной режим (оценка экспертов)** | 7/10 | 9/10 |
| **Экран (яркость, нит)** | 2000 | 1800 |
| **Цена ($)** | 999 | 949 |
🧠

Объяснение механизма почему этот пример работает.

Этот промпт также имитирует логику TruthfulRAG, но с использованием другого формата структурирования:

  1. Структурирование через таблицу: Markdown-таблица — это идеальный способ представить сравнительные данные. Она является еще более строгой формой "графа знаний", где каждая ячейка представляет собой точный факт (Смартфон, имеет характеристику, значение). Это максимально упрощает для модели сопоставление параметров.
  2. Приоритезация критериев: Указание главный приоритет — время автономной работы и качество фото работает как аналог "query-based graph retrieval" (поиск по графу с учетом запроса). Мы явно говорим модели, какие "ветки" в нашей "карте фактов" (таблице) являются самыми важными для принятия решения.
  3. Принуждение к фактической точности: Команда Основывай свой анализ... ИСКЛЮЧИТЕЛЬНО на данных из таблицы заставляет модель игнорировать любые маркетинговые заявления или общие знания о брендах, которые могут храниться в ее памяти, и работать только с предоставленной "достоверной" информацией, что напрямую снижает риск галлюцинаций и предвзятости.
📌

Оценка полезности: 66

📌

Основные критерии оценки

  • A. Релевантность техникам промтинга: Низкая. Исследование описывает сложную бэкенд-систему (фреймворк), а не конкретные формулировки для промптов, которые пользователь может написать вручную.
  • B. Улучшение качества диалоговых ответов: Высокое (для системы). Метод значительно повышает фактическую точность ответов, но это результат работы системы, а не промпта пользователя.
  • C. Прямая практическая применимость: Очень низкая. Пользователь не может реализовать построение графов знаний, графовый поиск и энтропийную фильтрацию в обычном чате с LLM. Это требует серьезной инженерной обвязки, кода и доступа к внутренним параметрам модели (вероятностям токенов).
  • D. Концептуальная ценность: Высокая. Исследование дает важнейшее концептуальное понимание: LLM больше доверяет структурированной, атомарной информации (фактам-триплетам), чем сплошному тексту, особенно при наличии конфликтов с ее внутренними знаниями. Это объясняет, почему структурирование контекста в промпте так эффективно.
  • E. Новая полезная практика (кластеризация): Работа попадает в кластеры:
    • #2 (Поведенческие закономерности LLM): Демонстрирует, как LLM реагирует на конфликт знаний и как структурированные данные повышают ее "уверенность".
    • #6 (Контекст и память): Предлагает продвинутый способ управления контекстом (RAG) для повышения точности.
    • #7 (Надежность и стабильность): Основная цель работы — снижение галлюцинаций и повышение фактической точности.
  • Чек-лист практичности (+15 баллов): Да, исследование раскрывает неочевидные особенности поведения LLM и предлагает (концептуально) способы улучшить точность ответов. Это дает +15 баллов к базовой оценке.
📌

Цифровая оценка полезности

Базовая оценка находится в диапазоне 30-64 ("Любопытно, но не очень практично"), так как прямая применимость метода для пользователя равна нулю. Однако концептуальная ценность очень высока. Она дает пользователю "ментальную модель" для работы с фактами. Добавляя 15 баллов за концептуальную пользу, мы получаем оценку в районе 65-69 ("Интересно, попробую адаптировать"). Итоговая оценка 66 отражает этот баланс: метод нельзя применить напрямую, но его главную идею можно и нужно адаптировать в своих промптах.

Аргументы за более высокую оценку: * Ключевой вывод — "структурированные данные повышают доверие LLM к внешнему контексту" — это один из самых мощных принципов промт-инжиниринга. Если пользователь поймет и начнет применять его адаптацию (например, всегда структурировать данные в промпте), качество его результатов вырастет драматически. С этой точки зрения, исследование может заслуживать и 75+ баллов.

Аргументы за более низкую оценку: * Исследование на 99% посвящено сложной системе, недоступной обычному пользователю. Чтобы извлечь из него пользу, нужно проделать серьезную мыслительную работу по "переводу" системного подхода на язык промптов. Средний пользователь, скорее всего, пропустит это исследование, посчитав его сугубо академическим и нерелевантным.


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

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

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