Что такое RAG и зачем он нужен - объясняем простыми словами

Что такое RAG и какие проблемы нейросетей он решает

Любая языковая модель, будь то ChatGPT, Claude или GigaChat, обучена на огромном массиве текстов из интернета. Она запоминает закономерности языка, факты, стиль изложения. Но у этого подхода есть несколько ограничений.

Галлюцинации. Модель не всегда знает ответ и не всегда может честно сказать «я не знаю». Вместо этого она может сгенерировать правдоподобный, но ложный текст.

Устаревшие данные. Знания модели заморожены на момент обучения. Если модель обучили на данных до 2024 года, она ничего не знает о событиях 2025-го. Спрашивать её про свежие новости, актуальные цены или последние исследования бесполезно (если к модели не подключён поиск по интернету).

Закрытость от приватных данных. Модель не знает ваших внутренних документов, регламентов, договоров и инструкций. Она обучалась на открытых данных из интернета и понятия не имеет, как устроены процессы в вашей компании.

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

RAG (Retrieval-Augmented Generation) решает все четыре проблемы. В переводе с английского это «генерация, дополненная поиском». Суть подхода в том, что перед генерацией ответа нейросеть сначала ищет нужную информацию в подключённых документах, а уже потом формулирует ответ на её основе.

Проще всего представить RAG на аналогии с экзаменом. Обычная нейросеть отвечает как студент, который сдаёт экзамен по памяти. Он выучил учебники, но может перепутать детали или забыть что-то важное. RAG даёт студенту книгу прямо во время ответа: он по-прежнему сам отвечает на вопросы, но при этом может заглянуть в учебник и дать точный ответ с конкретной ссылкой на страницу.

Как работает RAG

RAG работает в два этапа. Сначала система готовит базу знаний, а потом использует её для ответов на вопросы.

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

Поэтому все документы предварительно разбиваются отдельными моделями нейросетей на небольшие фрагменты по 100–1000 слов. Этот процесс называется чанкование (от английского chunking, «нарезка на куски»).

Дальше каждый фрагмент превращается в набор чисел, который понимают компьютеры. Такой числовой слепок текста называется эмбеддинг (embedding, «вложение»). Суть эмбеддингов проще понять на примере.

Представьте карту, где каждое слово или текст представлены точкой. Слова «кошка» и «котёнок» стоят рядом, «собака» чуть дальше, но всё ещё в зоне домашних животных. А слово «ракета»…

🔒

Этот материал доступен участникам Клуба. Войдите или оформите доступ, чтобы читать целиком, открывать видео и комментировать.

Войти Вступить / купить доступ