Что такое Retrieval Augmented Generation (RAG)?

«Что такое Retrieval Augmented Generation (RAG)?» — вопрос из категории Other, который задают на 33% собеседований Data Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Retrieval Augmented Generation (RAG) — это архитектура для языковых моделей, которая комбинирует генерацию текста с извлечением релевантной информации из внешнего хранилища знаний (например, базы документов, векторной БД).

Как это работает:

  1. Retrieval (Извлечение): Поступающий запрос пользователя преобразуется в векторное представление (эмбеддинг) и используется для поиска наиболее релевантных документов или фрагментов текста из внешнего источника.
  2. Augmentation (Расширение): Найденные релевантные контексты добавляются к исходному промпту пользователя.
  3. Generation (Генерация): Языковая модель (например, GPT) получает расширенный промпт и генерирует финальный ответ, основываясь как на своих внутренних знаниях, так и на предоставленном внешнем контексте.

Преимущества RAG:

  • Актуальность: Позволяет модели использовать свежие данные, которых не было в её обучающем наборе.
  • Точность: Снижает вероятность "галлюцинаций" (выдачи неправдоподобной информации), так как модель опирается на проверенные источники.
  • Объяснимость: Можно отследить, из какого документа была взята информация для ответа.
  • Контроль: Легче обновлять знания системы, просто добавляя новые документы в хранилище, без дорогостоящего переобучения модели.

Пример применения: Чат-бот для техподдержки, который ищет ответы в актуальной внутренней базе знаний, а не полагается только на общие знания модели.