Ваш ИИ — не поисковик, научите его экстракции фактов

Ваш любимый ChatGPT — не Шерлок Холмс, а очень дорогой авторегрессивный угадыватель следующего токена. Когда вы кидаете ему 100 страниц договора и просите «найди ставку 10%», он не сканирует документ, как поисковик. Он пытается предсказать, какое число выглядит правдоподобно в данном контексте. И предсказывает — часто мимо. Это не галлюцинация в мистическом смысле, это математическое ожидание ошибки, заложенное в архитектуру.

Почему сложные промпты типа «ты — внимательный юрист, проверь каждый пункт» бесполезны? Потому что они не меняют механизма внимания (attention). Трансформеры имеют ограниченное окно и квадратичную сложность — на 100 страницах информация о конкретной цифре тонет в шуме. Вы не можете «усилить волю» модели, как не можете усилить волю калькулятора, умоляя его не ошибаться.

Выход есть, и он скучен, но надёжен. Это RAG с жёсткой постобработкой.

Принцип №1: режьте на чанки с координатами. Не кормите весь документ. Разбивайте по страницам или абзацам, каждый кусок снабжайте меткой. Это не магия, это база для верификации.

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

Принцип №3: требуйте паспорт данных. Ответ должен содержать не просто цифру, а дословную цитату и номер фрагмента. Если цитаты нет — ответ «не найдено». Это превращает ИИ из «генератора» в «экстрактор». Генератор врёт, экстрактор — нет.

Покажу на пальцах.

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

✅ Стало (рабочий промпт): «Перед тобой фрагменты: [1] стр.5, [2] стр.12, [3] стр.78. Найди в них точное значение процента, который идёт после фразы “в случае просрочки”. Если такого фрагмента нет — скажи “НЕТ”. Если есть — выведи цитату + номер фрагмента. Больше ничего не пиши».

Этот подход называют «закрытой книгой» (closed-book) с принудительной аттестацией. Он не гарантирует 100% — потому что модель может ошибиться в цитировании, но вероятность падает на порядок, потому что длина входного контекста сокращается с 100 страниц до 2–3 абзацев.

Резюмирую одной фразой: единственный способ победить галлюцинации — перестать просить ИИ думать и начать просить его переписывать уже найденное вами (или вашим поисковиком) с точным адресом.

Кто уже ловил нейросеть на том, что она «вспоминала» несуществующий пункт в вашем же договоре? И что делали — ругали или внедряли RAG?

Ваш ИИ — не поисковик, научите его экстракции фактов | Сетка — социальная сеть от hh.ru