LLM-фактчек

Как отличить редкий факт от правдоподобного шума. Суть LLM почти не врёт прямо в длинных текстах — лишь 1,2% утверждений оказались ложными. Но 30,5% утверждений невозможно ни подтвердить, ни опровергнуть — модель генерирует гладкий, стилистически безупречный текст, где реальные редкие факты соседствуют с выдумкой, и внешне они неотличимы. Чем глубже тема (по цепочке ссылок), тем выше доля «непроверяемого» — с 6% до 44%.

Два практических приёма Приём 1. Факт-чек длинного ответа Логика: LLM честнее оценивает отдельное короткое утверждение, чем весь текст целиком. Разбивка снимает задачу «удержать связное повествование» и оставляет только «оценить один факт». Пошагово: Получить от модели связный текст на нужную тему. Отдельным запросом попросить разбить текст на отдельные фактические утверждения. Для каждого пункта запросить самооценку уверенности: общеизвестный факт вероятно верно, но нет способа проверить не уверен, могу ошибаться Вручную перепроверить только пункты с низкой уверенностью. Почему это работает: Уверенность падает по кускам легче, чем по абзацам. Модель не умеет сигналить «я не знаю» внутри связного текста — но умеет, если спросить прямо по каждому пункту.

Приём 2. Проверка framing без потери фактов Логика: Разные идеологические рамки меняют лексику и акценты, но почти не влияют на точность фактов (расхождение в пределах 3–4%). Пошагово: Попросить модель написать текст на тему от трёх лиц: нейтральный аналитик сторонник позиции А сторонник позиции Б Сравнить версии — факты должны совпадать, различаться должны только слова и формулировки. Где не работает: На нейтральных темах (античная история, естественные науки) framing почти не проявляется — все версии сходятся.

Пример применения Задача: Вы пишете статью о малоизвестном российском предпринимателе и хотите понять, каким деталям доверять. Промпт (отдельным запросом после получения текста): Разбей свой предыдущий ответ на отдельные фактические утверждения в виде маркированного списка. Для каждого пункта укажи: - "подтверждается" — если это общеизвестный факт - "не проверял" — если это вероятно верно, но у тебя нет способа проверить - "низкая уверенность" — если ты не уверен и можешь ошибаться в деталях

Результат: Модель выдаёт список с честными метками. Часть пунктов окажется «не проверял» — именно их стоит перепроверить вручную.

Шаблон для копирования: Ты — факт-чекер. Ниже я дам текст. Твоя задача: 1. Разбей его на отдельные фактические утверждения (каждое — один факт). 2. Для каждого утверждения поставь метку: — [ВЕРОЯТНО] — факт, который можно проверить по открытым источникам — [НЕПРОВЕРЯЕМО] — факт, который звучит правдоподобно, но проверить невозможно — [СОМНИТЕЛЬНО] — ты не уверен в точности Текст для проверки: {вставьте текст}

Границы применимости Метод полезен, когда: Вы проверяете длинные тексты на редкие, малоизвестные темы — именно там доля непроверяемых утверждений максимальна. Готовите материалы для внутреннего использования, где допустима последующая ручная проверка наиболее сомнительных пунктов. Хотите выявить «зоны риска» — утверждения, требующие дополнительной верификации, чтобы не принимать их на веру.

Метод бесполезен или вреден, когда: Тема тривиальна или сверхпопулярна — там и так всё общеизвестно, а самооценка модели не даст новых инсайтов (но и не навредит, просто теряет смысл). Вы принимаете критические решения (медицина, юриспруденция, финансы), опираясь исключительно на самооценку модели, без внешней проверки по независимым источникам. Пытаетесь выявить преднамеренную дезинформацию — метод не предназначен для борьбы с намеренным обманом, он лишь показывает, где модель сама не уверена.

Важно: «Не проверено» ≠ «ложь». Модель может знать редкий, но реальный факт, которого нет в открытых источниках. Не выбрасывайте — относитесь настороженно. Самооценка модели — не независимая проверка. Для важных решений нужен поиск по интернету.

Продолжение в комментарии.