Ваш RAG нашёл документ. Но потерял ответ

В базе знаний есть нужная инструкция. Поиск её находит. AI всё равно отвечает неправильно.

Например, сотрудник спрашивает: «Как отменить платёж, который ещё обрабатывается?» В контекст попадает абзац про возврат денег. А заголовок «Только для завершённых платежей» остался в соседнем фрагменте.

Текст похож на ответ. Условие, при котором он верен, потерялось.

В такой ситуации легко начать выбирать другую модель или векторную базу. Но сначала стоит открыть то, что мы вообще передали модели.

У Chip Huyen есть хороший разбор: при улучшении AI-приложений подготовка данных может дать больше, чем очередной спор об инструментах. Для RAG это вполне осязаемая работа:

  • сохранять с фрагментом заголовок раздела и условия применения;
  • не отрывать строку таблицы от названий столбцов;
  • отличать актуальную инструкцию от старой версии;
  • проверять, находится ли нужный фрагмент по словам пользователя, а не только по терминам автора документа.

Я бы начал с нескольких вопросов, на которых система уже ошибается. Для каждого посмотрел найденные фрагменты и попробовал ответить по ним сам. Если даже человеку не хватает условия или определения, менять LLM пока рано.

Если контекст полный и верный, а ответ всё равно плохой - тогда уже есть смысл разбирать промпт и модель. Это другой дефект, и исправление у него другое.

Перед следующим сравнением моделей откройте контекст одного неудачного запроса. Возможно, ответ потерялся ещё до вызова LLM.

По мотивам разбора Chip Huyen. Пример с платежом - иллюстрация, не кейс из её поста.

#AI #backend #RAG

Ваш RAG нашёл документ. Но потерял ответ | Сетка — социальная сеть от hh.ru