RAG (Retrieval-Augmented Generation, генерация с поиском) — это схема, при которой нейросеть перед ответом ищет подходящие куски в ваших документах и отвечает по найденному, а не по общей памяти из обучения. Проще говоря: сначала поиск по своей базе, потом ответ. Так помощник может говорить о ваших ценах, условиях и клиентах, которых модель никогда не видела.
Как это работает
Документы компании (инструкции, прайс, переписка, заметки) заранее режут на небольшие фрагменты. Когда приходит вопрос, система находит фрагменты, которые ближе всего к нему по словам или по смыслу, и вставляет их в запрос к модели вместе с вопросом. Модель читает этот текст и отвечает по нему.
Поиск бывает простым, по совпадению слов, или сложнее, по смысловой близости через векторную базу, хранилище, где похожие по смыслу фрагменты лежат рядом. Суть схемы от этого не меняется: качество ответа зависит от того, что нашёл поиск.
Пример
Допустим, у владельца сотни рабочих заметок, и он спрашивает голосового помощника: «Что мы решили по поставщику фасадов?» Без RAG модель ничего не знает о его поставщиках и в лучшем случае скажет общие слова, в худшем выдумает ответ. С RAG система находит две заметки, где упомянут поставщик, передаёт их модели, и ответ строится на тексте этих заметок. Помощник может ещё и назвать, из какой заметки взят ответ, чтобы его было легко проверить.
Частые ошибки
- Ждать от обычного чата знаний о вашей компании. Без подключённых документов модель отвечает только из общей памяти.
- Передавать модели всё подряд. Лишний текст не делает ответ точнее, а запрос становится дороже и медленнее.
- Не смотреть, что именно нашёл поиск. Если подобраны не те фрагменты, ответ будет уверенным и неверным.
- Забыть обновлять базу. Старый прайс в документах означает старые цены в ответах.
Рабочий пример такой схемы на личных заметках, собранный человеком без навыков программирования, разобран в статье второй мозг, который отвечает голосом. Насколько мало модели знают о реальных компаниях без подключённых данных, видно по аудиту 4 776 заведений: почему нейросети не рекомендуют ваш бизнес. По той же схеме отвечает Perplexity, только ищет на живых сайтах, а не в ваших документах. Называет ли она вашу компанию, можно бесплатно проверить в инструменте называют ли вас нейросети. Как подключить такую схему к своим документам, можно обсудить на консультации.
Частые вопросы
В обычном диалоге модель отвечает из того, что запомнила при обучении. В RAG перед ответом добавляется поиск по вашим документам, и ответ строится на найденном тексте.
Нет, но заметно снижает их там, где нужный факт есть в документах. Если ответа в базе нет, модель всё равно может ошибиться, поэтому полезно просить её ссылаться на источник.
Не обязательно. Простой поиск по совпадению слов в обычных текстовых заметках уже даёт рабочую схему. Векторная база нужна, когда документов много и вопросы задают разными словами.