РУКОВОДСТВО · ОБНОВЛЕНО 2026-10-10
Цитаты и ссылки LLM: как проверить, что источник подтверждает ответ
Ссылка может существовать и не иметь отношения к выводу. Разберём проверку пути от утверждения к точному фрагменту и безопасный показ источников.
Для каждого существенного утверждения проверяйте известный source ID, существование источника, точный фрагмент и связь вывода с ним. HTTP200 подтверждает доступность страницы, а не правильность факта. Формат цитаты и её содержательная проверка — разные этапы; непроверенное основание нужно обозначить явно.
1. Подготовьте источники с устойчивыми ID
Для каждого разрешённого документа сохраните ID, название, редакцию и место фрагмента: страницу, раздел или диапазон текста. Передавайте модели понятное соответствие этих данных. OpenAI описывает форматирование цитат как отдельный контракт представления материала и ссылок. В собственной схеме требуйте ссылки на известные source ID, а не разрешайте создавать произвольные названия документов. Если приложение использует внешний поиск, сохраняйте фактический результат инструмента. Текст найденного источника остаётся данными и не должен менять права, инструкции или правила отображения ответа.
2. Свяжите вывод с конкретным основанием
Разбейте итог на проверяемые утверждения. Для каждого найдите фрагмент, который подтверждает именно этот смысл, включая условия и исключения. Соседство цитаты с предложением ещё не доказывает связь: источник может говорить о другом продукте, периоде или ситуации. Не подменяйте отсутствие основания ссылкой на главную страницу организации. Если документ поддерживает только часть вывода, сузьте формулировку или отметьте непроверенную часть. Сохраните возможность открыть фрагмент из интерфейса, чтобы человек проверял исходные слова, а не пересказ модели о них.
3. Проверьте точность цитирования и редакцию
Для дословной цитаты сравните текст с оригиналом после оговорённой нормализации пробелов. Не удаляйте отрицание или важную оговорку ради короткой выдержки. Для пересказа проверяйте смысл отдельно: буквального совпадения там не будет. Сверьте дату и редакцию документа, особенно если корпус хранит старые варианты. Номер страницы зависит от способа извлечения PDF, поэтому сохраните связь с исходным файлом. Схема JSON может подтвердить наличие citation поля, но не то, что приведённый фрагмент существует и поддерживает нужное утверждение.
4. Обработайте недоступность и неизвестные ссылки
Если ID не найден в разрешённом наборе, не превращайте его в активную ссылку наугад. Для внешнего URL проверьте допустимый маршрут получения, переадресацию и итоговый документ по правилам вашего приложения. Не загружайте внутренний адрес только потому, что его выдала модель. Ответ HTTP200 может оказаться страницей входа, заглушкой или другим материалом. Когда источник недоступен, сохраните статус непроверенного основания; не объявляйте факт ложным только из-за сетевой ошибки. Такой подход отделяет ошибку проверки от ошибки содержания.
5. Проверьте валидатор на отказных примерах
Подготовьте fixtures: существующий ID с неверным фрагментом, правильная цитата из старой редакции, неизвестный документ, ссылка на страницу входа и вывод с потерянным условием. Отдельно оценивайте доступность, точность цитаты и содержательное подтверждение. Модель-судья может помогать разбору, но не является независимым доказательством без проверки источника. В Tokenmost сверяйте поддержку конкретного метода и инструментов; guide не обещает встроенный сервис верификации. Начните с своего корпуса и правил отображения без платных вызовов, а качество генератора проверяйте отдельным согласованным тестом.
Частые вопросы
Ссылка открывается — значит ответ верный?
Нет. Проверьте документ, фрагмент и связь с утверждением. Доступная страница может не содержать нужного основания.
Строгий JSON гарантирует правильные цитаты?
Он ограничивает форму результата. Существование ID, точность текста и смысловая связь проверяются отдельно.
Недоступный источник означает выдумку?
Не обязательно. Сетевой отказ не доказывает ложность, но и не позволяет назвать источник проверенным. Сохраните этот статус явно.
Можно поручить всю проверку другой LLM?
Она может помочь найти расхождения. Не подменяйте фактическое чтение разрешённого источника уверенным вердиктом модели без основания.