Уверенно, гладко и неправда

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

Это и называют галлюцинацией. Термин неидеальный: у модели нет восприятия, которое могло бы её обмануть. Точнее было бы говорить о конфабуляции — так психиатры называют ситуацию, когда человек искренне заполняет провалы в памяти правдоподобными подробностями. Но слово «галлюцинация» прижилось, и спорить с ним уже бесполезно.

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

Откуда они берутся

Корень проблемы — в самой природе модели. Она обучена продолжать текст правдоподобно, а не проверять факты. Когда в обучающих данных было много надёжной информации по теме, правдоподобное почти всегда совпадает с верным. Когда информации мало, модель всё равно продолжает текст — и делает это так же гладко, потому что уверенный тон никак не связан с тем, насколько она «знает» ответ.

Есть и несколько усиливающих факторов:

  • Редкие факты. Дата рождения знаменитости встречается в данных тысячи раз, а дата рождения малоизвестного учёного — пару раз. Чем реже факт, тем выше шанс, что модель его досочинит.
  • Давление формы. Если вопрос подразумевает, что ответ существует («в какой главе книги говорится о…»), модели проще выдать что-нибудь, чем признать, что такой главы нет.
  • Обучение на одобрении. Люди, оценивающие ответы, нередко предпочитают уверенный и полный ответ осторожному «не знаю». Модель это усваивает.
  • Длинные цепочки. Мелкая ошибка в начале рассуждения тянет за собой следующие, и к концу ответа выдумка обрастает убедительными деталями.

Галлюцинация — не сбой в программе, а побочный эффект её главного достоинства: умения порождать новый текст, а не только цитировать старый.

Цена ошибки

В бытовом разговоре выдуманная деталь безобидна. В профессиональном контексте — нет. Уже был громкий случай, когда юристы принесли в американский суд ссылки на несуществующие прецеденты, сгенерированные чат-ботом, и получили за это санкции. Похожие истории регулярно случаются с выдуманными цитатами в статьях, несуществующими функциями в коде и фантомными пунктами в справках.

Опасность не в самой ошибке — люди ошибаются постоянно. Опасность в том, что ошибка модели выглядит точно так же, как её правильный ответ. Нет запинки, нет оговорки «кажется», нет интонации сомнения, по которой мы привыкли распознавать неуверенного собеседника.

Есть и более тонкий риск — привыкание к автоматике. Когда инструмент почти всегда прав, люди быстро перестают его проверять, и редкая ошибка проходит незамеченной. Чем лучше становятся модели, тем сильнее этот соблазн. Парадокс хорошо знаком авиации и другим отраслям, где автоматика давно работает бок о бок с человеком.

Как с этим живут

Полностью избавиться от галлюцинаций пока не удалось никому, но их частоту научились заметно снижать. Основные подходы такие:

  • Опора на источники. Самый распространённый метод называется RAG — генерация с дополнением из поиска. Перед ответом система находит релевантные документы и подкладывает их модели в контекст. Модель уже не вспоминает, а пересказывает найденное и может сослаться на конкретный фрагмент.
  • Разрешение не знать. Модели дообучают так, чтобы они чаще признавали отсутствие надёжных данных. Да и простая инструкция «если не уверен, так и скажи» работает лучше, чем можно было бы ожидать.
  • Самопроверка. Можно попросить модель перепроверить собственный ответ или сгенерировать его несколько раз и сравнить варианты. Выдуманные детали от попытки к попытке обычно меняются, а реальные факты остаются на месте.
  • Инструменты. Калькулятор не галлюцинирует в арифметике, а запрос к базе данных — в номерах договоров. Чем больше точных операций модель делегирует инструментам, тем меньше ей приходится досочинять.

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

Правило для пользователя

Практический вывод прост: относиться к ответу модели как к черновику толкового, но рассеянного коллеги. Идеи, структуру, формулировки — брать смело. Имена, цифры, цитаты, ссылки и всё, что пойдёт в официальный документ, — проверять. Это не дефект конкретного продукта, который исправят в следующей версии, а свойство технологии, с которым придётся работать ещё долго. Хорошая новость в том, что это вполне посильно: мы ведь как-то научились жить с поисковиками, которые тоже не гарантируют истину.

Понравился материал?
Подписывайтесь — так вы не пропустите новые.
RSS-лента

Комментарии 8

Будьте вежливы — это делает обсуждение лучше
PM
pavel_m
Самопроверка через несколько генераций — рабочий трюк, подтверждаю. Если на трёх запусках даты разные, значит, модель просто не знает.
К
Ксения
Преподаю в вузе. Студенты регулярно приносят списки литературы с несуществующими книгами — красивыми, с издательствами и номерами страниц. Теперь буду давать им эту статью до первой курсовой.
ВЛ
Виктор Л.
Мне кажется, сам термин «галлюцинация» вредный — он очеловечивает программу. Ошибка есть ошибка.
NR
nastya_reads
так в статье же ровно об этом, во втором абзаце
A
alex88
а RAG полностью решает проблему? у нас в поддержке бот с базой знаний всё равно иногда сочиняет
Р
РедакцияРедакция
Не полностью. RAG сильно снижает долю выдумок, но модель может неверно понять найденный фрагмент или достроить ответ, если нужной информации в базе нет. Помогает требование отвечать только по найденным документам, ссылаться на них и честно говорить «в базе этого нет». И, конечно, качество самой базы: если в ней есть противоречия, бот их добросовестно воспроизведёт.
A
alex88
понял, спасибо. база у нас, честно говоря, та ещё
МС
Марина Соколова
Спасибо за слово «конфабуляция» — давно искала, как это назвать, чтобы не звучало так, будто у программы глюки.