Почему ИИ отвечает по инструкции из архива
Представим учебную базу знаний: старую инструкцию по выгрузке отчёта перенесли в архив, действующую положили рядом. Сотрудник спрашивает, как выгрузить отчёт сейчас, и получает прежний порядок действий. Одна из возможных причин такой ошибки находится в поиске, который подготовил материалы для модели.
В системе RAG приложение сначала находит фрагменты документов, затем передаёт их модели для ответа. Векторный поиск помогает подобрать близкий по смыслу текст. Статус "действует" требует отдельного учёта: архивная инструкция тоже может хорошо совпадать с вопросом.
Посмотрите, что нашлось
Начать проверку рекомендую с фрагментов, переданных модели. Из какого документа они пришли, какая это редакция, когда она действует и подходит ли к нужному продукту?
Если в контекст попал архив, стоит проверить правила отбора. Просьба в промпте "используй актуальные сведения" сама по себе не объясняет поисковой системе, какая редакция утверждена и применима к вопросу.
Передайте статус вместе с фрагментом
Для нашей учебной базы полезно хранить у каждого фрагмента идентификатор исходного документа, редакцию, статус, период действия и область применения. Это предлагаемый набор полей: схема зависит от задачи.
Приложение может использовать такие поля в фильтрах поиска и отбирать допустимые материалы для ответа о текущем порядке работы. Метаданные нужно заполнять и поддерживать. Если архивному фрагменту оставили статус "действует", фильтр повторит эту ошибку.
Дата изменения файла тоже требует осторожности. Архив могли пересохранить сегодня, а новую инструкцию могли утвердить с будущей датой начала действия. Для исторического вопроса правила отбора будут другими.
Проверьте состояние индекса
Перенос файла в архив не гарантирует обновления поискового индекса. Например, в Azure AI Search для индексаторов Azure Storage обнаружение удаления настраивается отдельно. Удалённый источник может оставить документ в индексе. У других способов загрузки свои механизмы синхронизации.
После смены редакции рекомендую повторить поиск и проверить, какие фрагменты реально возвращаются. Если одна инструкция разбита на части, нужно убедиться, что статус обновился у всех её частей.
Для проверки полезны вопросы о текущем порядке, о прежней редакции и о документе, которого в базе нет. При отсутствии подходящей версии приложение может сообщить о недостатке данных и передать вопрос ответственному человеку. Такие проверки помогают выявлять ошибки отбора, но не гарантируют правильность каждого ответа модели.
Техническая основа разбора: документация Microsoft по обогащению фрагментов RAG, фильтрам поиска и обновлению индекса.
Как у вас в базе знаний отмечают документы, которые уже утратили силу?