RAG: как языковая модель отвечает на основе ваших документов

· автор Pavel Kiyatkin · Для начинающих

RAG (Retrieval-Augmented Generation) соединяет поиск по источникам с языковой моделью: сначала система находит подходящие фрагменты, затем передаёт их модели вместе с вопросом для подготовки ответа.

Зачем нужен поиск

Языковая модель не знает автоматически о свежих внутренних документах. Например, службе поддержки казахстанского магазина нужно отвечать по актуальным правилам доставки и возврата. Вместо обучения модели на каждой новой версии правил можно искать нужные разделы в управляемой базе знаний и давать их модели как контекст.

RAG не устраняет ошибки сам по себе. Поиск может найти устаревший или неподходящий фрагмент, а модель — неверно его пересказать. Поэтому полезно показывать источник и предусмотреть ответ «не знаю», если доказательств недостаточно.

Из чего состоит система

  1. Подготовка документов. Очистите текст, сохраните название, дату, права доступа и ссылку на источник. Разбейте длинные документы на фрагменты так, чтобы смысл не терялся на границе.
  2. Индексирование. Текстовый поиск находит точные слова; векторный поиск сравнивает смысловые представления. Их можно сочетать. Например, PostgreSQL с расширением pgvector подходит для прототипа, если команда уже использует PostgreSQL.
  3. Поиск при запросе. Система учитывает права пользователя, извлекает несколько подходящих фрагментов и при необходимости пересортировывает их.
  4. Ответ. Модель получает вопрос и найденный контекст. Попросите её указать источники и не заполнять пробелы догадками.
  5. Проверка. Сравните ответы с контрольным набором вопросов: найден ли правильный документ, подтверждается ли каждый вывод и не раскрываются ли чужие данные.

RAG или дообучение?

RAG удобен, когда знания часто обновляются и нужны ссылки на документы. Дообучение может помочь с устойчивым форматом или поведением, но не заменяет механизм обновления источников. Для небольшой базы иногда достаточно обычного поиска без LLM: это дешевле и проще проверить.

С чего начать

Возьмите десяток проверенных документов и реальные вопросы пользователей, в том числе на русском и казахском. Зафиксируйте ожидаемые источники, измерьте качество поиска и ответов, затем расширяйте корпус. Проверяйте доступность выбранных сервисов и условия обработки данных в Казахстане до загрузки материалов.