Чтобы принять ссылки на источники в ответах ИИ-бота, проверьте всю цепочку: утверждение в ответе, его сноску, открывшийся фрагмент и версию документа. Ссылка на настоящий файл ещё не подтверждает сказанное. Она может вести к другому условию или обосновывать только половину фразы.
Ниже порядок для руководителя, который принимает бота по документам компании. Это документальный разбор с вымышленным учебным набором, а не отчёт об испытании сервиса. Здесь проверяется механизм цитат в вашем приложении. Подготовка самой базы знаний для ИИ-ассистента разобрана отдельно.
Что именно должен показывать бот
Согласуйте с исполнителем, что получит читатель по нажатию на сноску: файл целиком, нужную страницу, выделенный отрывок или карточку с цитатой. Если открывается целый документ, нужен понятный указатель места: раздел, страница либо точный фрагмент текста для поиска. Иначе проверка каждого ответа превращается в чтение файла заново.
Технические возможности различаются. Например, документация Anthropic о цитатах описывает ссылки на страницы текстового PDF, диапазоны символов в тексте и блоки специально подготовленного содержимого. Это возможности конкретного API. Они не означают, что ваш бот уже показывает эти данные пользователю. Изображения в PDF этой функцией не цитируются; скан без извлекаемого текста не становится пригодным источником цитат автоматически.
Попросите исполнителя показать связь видимой сноски с данными ответа: какой документ и какой фрагмент связываются с каждым утверждением, как приложение строит переход. Название файла в тексте, придуманное моделью, нельзя принимать за такую связь.
Заранее определите и доступ читателя. Для сотрудника допустим переход в закрытый регламент с его обычными правами. Клиенту внутренний файл показывать нельзя: потребуется разрешённая публичная страница или согласованный безопасный фрагмент. Если источник закрыт для клиента, бот не должен выдавать ему приватную ссылку как способ проверки.
Подготовьте документы с различимыми условиями
Сначала испытайте способ в отдельной тестовой базе без клиентов и реальных коммерческих правил. Не добавляйте вымышленные условия в рабочую поддержку. Создайте два учебных файла:
- «Учебная доставка, версия Б». «Заказ КЕДР-42 можно получить самовывозом. Доставка доступна только после согласования с сотрудником».
- «Учебная оплата, версия А». «Заказ КЕДР-42 оплачивается после подтверждения. Рассрочка для этого учебного заказа не предусмотрена».
Названия, заказ и правила вымышлены. Сохраните исходники и их идентификаторы в базе. Эталон ответа составьте сами по этим двум файлам до запуска бота: самовывоз доступен, доставку нужно согласовать, оплата после подтверждения, рассрочки нет. Источник для получения заказа и источник для оплаты должны различаться.
Задайте один составной вопрос: «Как получить и оплатить учебный заказ КЕДР-42? Есть ли доставка и рассрочка?» Он помогает заметить, когда одна сноска прикрывает несколько разных обещаний. Затем задайте отдельно вопросы о доставке и об оплате другими словами. Число повторов согласуйте под риск задачи; этот небольшой набор не измеряет надёжность всего бота.
Пройдите путь от ответа до исходника
Проверяйте через тот канал и под той ролью, которыми будет пользоваться читатель. Демонстрация в кабинете разработчика не подтверждает, что ссылка работает в клиентском чате.
- Сохраните полный ответ. Зафиксируйте вопрос, время, роль, версию бота и базы. Не переносите в акт только удачный абзац: важны все условия и все сноски.
- Разделите ответ на проверяемые утверждения. Для учебного вопроса отдельно выпишите самовывоз, доставку, момент оплаты и рассрочку. Укажите сноску рядом с каждым. Если ссылки стоят только внизу, попросите явно показать, какие фразы они обосновывают.
- Откройте каждую сноску. Сверьте идентификатор документа, его версию и место внутри. Одинаковые заголовки файлов не доказывают, что открыт нужный объект. Проверьте совпадение показанной цитаты с оригиналом, включая отрицания и соседние ограничения.
- Сопоставьте весь тезис с фрагментом. Строка про самовывоз не подтверждает свободную доставку. Даже точная цитата становится недостаточным обоснованием, если бот добавил к ней неподтверждённое обещание.
- Повторите переход как обычный читатель. Проверьте, что ссылка открывается с его правами и не раскрывает закрытое содержимое. При ошибке входа сохраните её отдельно от оценки смысла: пока источник нельзя прочитать, пользовательский путь проверки не принят.
Для разбора пригодится такая таблица. Это намеренно придуманные дефектные ответы, не результаты реального бота.
| Учебный ответ | Что не прошло | Что потребовать |
|---|---|---|
| «Доставка доступна» со ссылкой на доставку | потеряно согласование с сотрудником | восстановить условие и привязать его к фрагменту |
| «Оплата после подтверждения, рассрочка доступна» со ссылкой на оплату | источник подтверждает первую часть и отрицает вторую | исправить рассрочку; проверить обе части |
| Правильный ответ об оплате, но сноска открывает файл доставки | перепутана связь с источником | исправить привязку сноски в ответе или приложении |
| Точная цитата из версии Б, переход открывает другую редакцию | цитата и показанный документ расходятся | согласовать хранение версии и повторить переход |
Ссылка сама по себе не проверяет полноту ответа. В документации Microsoft об оценке ответов по базе соответствие ответа переданному контексту и полнота относительно эталона рассматриваются отдельно. Поэтому после проверки сносок вернитесь к вопросу: ответил ли бот про рассрочку вообще, даже если все остальные цитаты верны?
Проверьте смену версии и повторное открытие
Для учебного файла доставки подготовьте следующую редакцию: самовывоз остаётся, доставка учебного заказа больше не предлагается. Зафиксируйте её отдельный идентификатор или версию и согласуйте, с какого момента она считается действующей. Дождитесь подтверждённого обновления тестовой базы, затем задайте вопрос в новом разговоре.
Новый ответ должен соответствовать согласованной действующей редакции, а сноска должна открывать именно её фрагмент. Теперь откройте сноску в сохранённом прежнем ответе. Если постоянный адрес файла уже показывает новый текст, старую цитату по нему нельзя воспроизвести. Исполнитель должен объяснить выбранное поведение: например, хранить снимок редакции, доступный для проверки, или явно отмечать, что источник изменился. Не требуйте архивировать закрытые данные без согласования прав и правил хранения.
Эта проба проверяет связь цитаты с версией. Она не подтверждает удаление всех старых копий. Для отзыва источника есть отдельная проверка удаления документа из базы бота.
С чем принимать работу
В акте сохраните исходный вопрос, полный ответ, утверждения со сносками, идентификаторы и версии документов, точные места и результат перехода под нужной ролью. Отдельно запишите пропущенные условия, ошибки ссылок и недоступные данные. Согласуйте исправления и повторите затронутые пробы после них.
Учебный набор подтверждает только способ проверки. Перед выпуском повторите его на согласованных рабочих документах и типичных вопросах, не копируя закрытый текст в публичный отчёт. Принимать механизм можно в пределах проверенного: существенные утверждения имеют понятное основание, сноски ведут к нужным фрагментам нужных версий, ограничения сохранены, читатель получает разрешённый для него доступ.
Даже успешная проверка цитат не доказывает, что модель использовала только эти документы. Если нужно установить, какие фрагменты действительно передали модели, потребуется доступный журнал поиска и запроса. Без него внутренняя причина ответа остаётся неизвестной. Не закрывайте это неизвестное одной красивой сноской.

