Снижение галлюцинаций

Модель уверенно выдумывает — это свойство, а не баг; задача промпт-инженера — загнать её в рамки проверяемого.

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

Почему модель выдумывает

Модель оптимизирована продолжать текст правдоподобно, а не «знать правду». Если в её «памяти» нет точного факта, она всё равно сгенерирует наиболее вероятное продолжение — и оно может звучать убедительно, будучи ложным. Особенно опасны точные на вид детали: даты, цифры, цитаты, имена, ссылки.

Приём 1: заземление на контекст (grounding)

Дайте модели нужные факты в промпте и запретите выходить за них. Это основа RAG-систем.

Ответь на вопрос, используя ТОЛЬКО текст в блоке «Контекст».
Если ответа там нет — напиши «В контексте нет ответа».
Не используй сторонние знания.

Контекст:
"""
Гарантия на устройство — 24 месяца с даты покупки.
"""

Вопрос: Какая гарантия на устройство?

Заземление превращает задачу из «вспомни факт» (где модель фантазирует) в «найди ответ в данном тексте» (где ошибиться труднее).

Приём 2: разрешить «не знаю»

По умолчанию модель «не хочет» признавать незнание. Явно разрешите это — резко падает доля выдумок.

Если ты не уверен или данных недостаточно,
ответь «Не знаю» вместо предположения.

Приём 3: требовать опоры и проверяемость

Просите указывать, откуда взят каждый факт, или цитировать фрагмент контекста. Это и снижает выдумки, и даёт возможность проверить ответ.

После каждого утверждения в скобках цитируй
точный фрагмент контекста, на котором оно основано.
Если подтверждения нет — не пиши утверждение.

Чего ждать и не ждать

ПриёмЧто даёт
Заземление на контекстРезко меньше выдумок по фактам из контекста
Разрешение «не знаю»Меньше уверенной лжи
Цитаты/ссылкиПроверяемость, самоконтроль
Низкая температураМеньше «креатива» в фактах

Важно: просьба «дай ссылки» без реального контекста не спасает — модель может выдумать и сами ссылки. Ссылки надёжны только когда есть проверяемый источник (заземление) или модель реально ходит в инструмент/поиск.

Итог

  • Галлюцинации — следствие того, что модель продолжает текст правдоподобно, а не знает истину.
  • Заземляйте ответ на данный контекст и запрещайте выходить за него.
  • Явно разрешайте «не знаю» — выдумок становится меньше.
  • Требуйте цитаты/опору для проверяемости; «дай ссылки» без источника не помогает.
Проверьте себя
1. Почему LLM склонны выдумывать факты?
AИх специально учат лгать
BОни оптимизированы правдоподобно продолжать текст, а не гарантированно знать истину
CЭто всегда ошибка интернета
DИз-за низкой температуры
2. Что такое заземление (grounding) ответа?
AПонижение температуры до нуля
BПередача нужных фактов в контексте и запрет выходить за них
CЗапрет модели отвечать вообще
DДобавление эмодзи
3. Почему просьба «дай ссылки» без реального контекста ненадёжна?
AСсылки запрещены политикой
BСсылки всегда корректны
CЭто удорожает запрос
DМодель может выдумать и сами ссылки, если нет проверяемого источника или инструмента