RAG для юридичних документів: HallucinationGuard та CitationValidator у продакшені
AI впевнено цитує неіснуючі статті та вигадує номери справ. У юридичній сфері це не просто помилка — це мальпрактіс. Ми побудували два рівні захисту: HallucinationGuard перевіряє кожне твердження, CitationValidator валідує кожне посилання. Нульова толерантність до вигадок.
RAG для юридичних документів: HallucinationGuard та CitationValidator
AI впевнено цитує неіснуючі статті. У юридичній сфері це не помилка — це мальпрактіс.
Проблема: AI бреше впевнено
Попросіть ChatGPT назвати судові рішення щодо захисту авторських прав в Україні. Він видасть 5 номерів справ. Перевірте їх — 4 з 5 не існують. П'ятий існує, але стосується зовсім іншої теми.
Для юридичної платформи це неприпустимо. Кожен номер справи, кожна стаття закону, кожна цитата — мають бути реальними.
Архітектура захисту
Рівень 1: HallucinationGuard
Працює до відповіді користувачу. Перевіряє кожне фактичне твердження в AI-відповіді:
- Витяг тверджень — парсить відповідь на окремі factual claims
- Пошук джерел — для кожного твердження шукає підтвердження в результатах tool calls
- Класифікація: supported (є в джерелах), unsupported (немає в джерелах), contradicted (суперечить джерелам)
- Рішення: unsupported claims маркуються або видаляються, contradicted — завжди видаляються
Рівень 2: CitationValidator
Працює з конкретними посиланнями:
- Номери справ — перевіряє існування через ZakonOnline API
- Статті законів — верифікує через API Верховної Ради
- Цитати з рішень — порівнює з фактичним текстом рішення
Рівень 3: Precedent Status
Кожне рішення повертається зі статусом:
- valid — чинне, не скасоване
- limited — звужене вищою інстанцією
- overruled — скасоване
- questioned — під сумнівом
Правило #1 системного промпту
"Ніколи не генерувати номери справ, статті законів або судові рішення з пам'яті. Завжди використовувати інструменти для отримання фактичних даних."
Це не рекомендація — це жорстка інструкція. AI не може назвати жодну статтю ЦК, не викликавши get_legislation_article. Не може послатися на справу, не знайшовши її через search_legal_precedents.
Результат
Кожне посилання в відповіді — клікабельне. Натиснув на номер справи — відкрився повний текст. Натиснув на статтю закону — побачив чинну редакцію. Юрист не довіряє AI на слово — він перевіряє в один клік.
Нульова толерантність до галюцинацій — це не фіча. Це фундамент.