ТерминРазработкаОбновлено

RAG

RAG (Retrieval-Augmented Generation) — схема, в которой нейросеть отвечает по найденным фрагментам вашей базы знаний, а не только по памяти. Подход описан в статье Патрика Льюиса и соавторов 2020 года.

Содержание
  1. 01RAG простыми словами: открытая книга вместо экзамена по памяти
  2. 02Путь вопроса через RAG: от нарезки документов до ответа
  3. 03Где RAG приносит деньги: поддержка, продажи, внутренний поиск
  4. 04Разбор на цифрах: бот поддержки по базе из 400 страниц
  5. 05RAG, дообучение и длинный контекст: что чем заменить
  6. 06Где RAG ломается: пять причин неверных ответов
  7. 07Частые вопросы

RAG простыми словами: открытая книга вместо экзамена по памяти

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

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

Термин закрепила статья «Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks» Патрика Льюиса и соавторов: первую версию подали в мае 2020 года, а работу приняли на конференцию NeurIPS 2020. Авторы соединили предобученную модель с плотным векторным индексом Википедии, откуда отдельный модуль достаёт нужные фрагменты.

Путь вопроса через RAG: от нарезки документов до ответа

Подготовка базы делается заранее, обработка вопроса — каждый раз заново.

ЭтапЧто происходитЧто можно сломать
НарезкаДокументы делят на фрагменты по смыслу: раздел, абзац, пара «вопрос — ответ»Крупные куски размывают смысл, мелкие теряют контекст
ВекторизацияМодель эмбеддингов превращает фрагмент в набор чисел — вектор — и кладёт в индексСмена модели эмбеддингов требует пересчитать всю базу
ПоискВопрос тоже становится вектором, система берёт ближайшие по смыслу фрагментыНаходится похожее, а не нужное: например, прошлогодний тариф
ОтветМодель получает вопрос, фрагменты и инструкцию «отвечай только по ним»Лишние фрагменты не помещаются в окно контекста и отбрасываются

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

Векторы хранят в специализированных базах вроде Qdrant или Milvus либо в обычной СУБД с расширением: для PostgreSQL это pgvector. Облачные платформы дают готовые части конвейера: в Yandex AI Studio есть Files API и Vector Store API, у GigaChat — модели эмбеддингов Embeddings, Embeddings-2 и EmbeddingsGigaR.

Где RAG приносит деньги: поддержка, продажи, внутренний поиск

RAG нужен там, где ответ лежит в ваших документах, а не в общем знании мира.

  • Поддержка клиентов. Чат-бот с RAG отвечает по инструкциям, условиям доставки и возврата, а при сомнении передаёт диалог оператору.
  • Продажи. Ассистент подбирает товар по описанию задачи, а менеджер получает подсказку по условиям договора.
  • Внутренний поиск. Сотрудник спрашивает про отпуск или регламент и получает ответ вместо поиска по сетевым папкам.
  • Договоры и закупки. Система находит нужный пункт и показывает цитату со ссылкой на документ.

Тот же механизм служит «памятью» для AI-ассистентов и агентов, о которых мы писали в обзоре ИИ-агентов для бизнеса.

Разбор на цифрах: бот поддержки по базе из 400 страниц

Допустим, у магазина 400 страниц инструкций и ответов, по 1 500 токенов на страницу — всего 600 000 токенов. Нарезка по 400 токенов даёт около 1 500 фрагментов.

  1. Индексация. Базу векторизуют один раз. По прайсу Yandex AI Studio эмбеддинги стоят около 0,01 ₽ за 1 000 токенов, значит, вся база обойдётся примерно в 6 ₽.
  2. Один вопрос. Пять найденных фрагментов — 2 000 токенов, вопрос с инструкцией — 200, ответ — ещё 300. Итого 2 500 токенов.
  3. Цена ответа. Допустим, модель стоит 1 ₽ за 1 000 токенов: ответ обойдётся в 2,5 ₽, а 3 000 обращений в месяц — в 7 500 ₽.
  4. Без RAG. Если отправлять всю базу в каждом запросе, вопрос потянет на 600 000 токенов, то есть 600 ₽, а месяц выйдет в 1 800 000 ₽. Разница — в 240 раз, и база может не влезть в окно модели.

Основные расходы проекта — не токены, а подготовка: очистка документов, настройка поиска, проверка ответов. Если RAG входит в крупный продукт — личный кабинет или SaaS-платформу, — его закладывают в архитектуру на этапе комплексной разработки.

RAG, дообучение и длинный контекст: что чем заменить

ПодходЧто делаетСлабое место
RAGПодставляет нужные фрагменты в момент вопросаКачество ответа упирается в качество поиска
ДообучениеМеняет веса модели на ваших примерах: стиль, формат, лексикаЗнания «запекаются» в модель, обновление — новое обучение, источников нет
Длинный контекстКладёт документы целиком в запросДорого на каждый вопрос и ограничено размером окна

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

Где RAG ломается: пять причин неверных ответов

  1. Мусор в базе. Рядом лежат три версии прайса и сканы без распознавания, и система честно отвечает по прошлогоднему тарифу.
  2. Неудачная нарезка. Правило попало в один фрагмент, исключение — в другой, поиск достал только первый.
  3. Нет права сказать «не знаю». При пустой выдаче модель отвечает из общей памяти, и вы возвращаетесь к исходной проблеме.
  4. Нет разграничения доступа. Сотрудник получает фрагмент закрытого документа. Права проверяют на этапе поиска, а не после генерации.
  5. Персональные данные в базе. Отправка писем и анкет во внешний сервис — передача данных третьему лицу, нужны основание и договор; детали — в разделе о соответствии 152-ФЗ.

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

Частые вопросы

RAG в нейросетях — что это такое и зачем нужен?

Это способ подключить к языковой модели вашу базу знаний без переобучения. Система находит в документах нужные фрагменты и передаёт их модели вместе с вопросом. Бот отвечает по актуальным данным компании, может сослаться на источник и реже выдумывает факты, которых нет в базе.

Чем RAG отличается от дообучения модели?

Дообучение меняет саму модель: она усваивает стиль и терминологию, но знания внутри трудно обновлять и нельзя проверить по источнику. RAG модель не трогает, а подаёт ей материал в момент ответа. Для быстро устаревающих данных — цен, регламентов, наличия — берут RAG, для стиля иногда добавляют дообучение.

Нужна ли для RAG векторная база данных?

Для прототипа хватает обычной СУБД с векторным расширением, например pgvector в PostgreSQL, или готового хранилища облачной платформы. Специализированные базы вроде Qdrant или Milvus берут, когда фрагментов много и нужна высокая скорость поиска. Для сотен страниц отдельная инфраструктура обычно избыточна.

Убирает ли RAG галлюцинации полностью?

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

Можно ли построить RAG на российских моделях?

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

Перейти к букве

Другие термины глоссария