RAG превращает разрозненные PDF, статьи в Confluence и записи из CRM в живую справочную систему: пользователь задаёт вопрос — модель отвечает с цитатами из ваших документов. Без RAG большая модель галлюцинирует и не знает внутренних регламентов. Разберём архитектуру, типичные ошибки и сколько это стоит на дистанции.
Что такое RAG и зачем он бизнесу
RAG — это связка из трёх компонентов: индексатор разбивает документы на чанки и считает эмбеддинги, векторное хранилище ищет релевантные куски по запросу, LLM собирает ответ с опорой на найденный контекст. По сравнению с дообучением модели у RAG два жирных плюса: документы можно обновлять каждый день без переобучения, а каждая фраза в ответе сопровождается ссылкой на источник.
В реальных проектах RAG чаще всего закрывает три задачи: внутренний чат для саппорта, ассистент по продуктовому каталогу для отдела продаж и публичный FAQ-бот на сайте. Последний вариант особенно выигрышен: посетитель получает ответ за 2–4 секунды, а не ищет его в меню из десяти разделов.
Архитектура на нашем стеке
Мы собираем RAG на Next.js 15 с App Router как фронт, Go-сервис принимает запросы и оркестрирует пайплайн. Хранилище — Postgres с расширением pgvector для small/medium объёмов (до 5 млн чанков) или Qdrant при больших нагрузках и сложных фильтрах. Эмбеддинги считаем через OpenAI text-embedding-3-small или локальную модель — в зависимости от требований к 152-ФЗ.
Чанкинг — самая недооценённая часть. Слепое разбиение по 500 токенов даёт релевантность около 60%. Семантический чанкинг по абзацам и заголовкам поднимает её до 80–85%. Метаданные (раздел, тег, дата) позволяют фильтровать поиск ещё до векторного матча.
Качество ответов: метрики и стоп-слова
Главная метрика — не BLEU, а человеческая оценка по выборке. Делайте golden set из 100–200 типовых вопросов, прогоняйте после каждого изменения промпта или модели, считайте precision и recall на цитатах. Если модель уверенно пишет «по нашим данным», но не приводит источник, ставим жёсткий пост-фильтр: ответ без хотя бы одной цитаты блокируется.
Безопасность и приватность
Корпоративная база знаний почти всегда содержит ПДн или коммерческую тайну. Минимум: разделение чанков по ролям (RBAC на уровне фильтра в pgvector), логирование запросов с обезличиванием, отдельный контур для внешних и внутренних пользователей. Если требуется хранить данные в России — берите Yandex GPT или открытую модель на VK Cloud, тогда вопрос трансграничной передачи закрывается на уровне инфраструктуры.
Промпт-инъекции — отдельная история. Документ с инструкцией «забудь предыдущие правила» легко может попасть в индекс и сломать поведение бота. Защита: системный промпт фиксируется в коде, контекст оборачивается в чёткие маркеры, ответы пост-проверяются на наличие запрещённых паттернов.
Стоимость и сроки
Базовый MVP RAG-ассистента — 3–5 недель. В сумме: парсер документов, индексатор, API на Go, виджет на Next.js, админка для загрузки PDF и переиндексации. Эмбеддинги обходятся менее 1% от бюджета — основная стоимость это интеграция с источниками данных и UX-полировка чата.
Полноценная корпоративная база знаний с 5–7 источниками, ролевой моделью и аналитикой запросов укладывается в 6–8 недель. Поддержка после запуска — обновление промптов, новые источники, тюнинг ретривера — обычно 10–20 часов в месяц.
Итого
RAG даёт быстрый ROI там, где сотрудники теряют часы на поиск в документах. Ключ к качеству — не размер модели, а чистота данных, грамотный чанкинг и golden set для регрессий. Начинайте с одного источника и одной аудитории, расширяйтесь по мере роста доверия.
Частые вопросы
Что такое RAG и зачем он нужен сайту?
RAG (Retrieval-Augmented Generation) — связка из трёх компонентов: индексатор разбивает документы на чанки и считает эмбеддинги, векторное хранилище ищет релевантные куски по запросу, LLM собирает ответ с опорой на найденный контекст. По сравнению с дообучением модели у RAG два плюса: документы можно обновлять каждый день без переобучения, а каждая фраза в ответе сопровождается ссылкой на источник. Это превращает разрозненные PDF и статьи в живую справочную систему.
Какой стек использовать для RAG в РФ?
Next.js 15 с App Router как фронт, Go-сервис принимает запросы и оркестрирует пайплайн. Хранилище — Postgres с расширением pgvector для small/medium объёмов (до 5 млн чанков) или Qdrant при больших нагрузках и сложных фильтрах. Эмбеддинги считаем через OpenAI text-embedding-3-small или локальную модель — в зависимости от требований к 152-ФЗ. Если требуется хранить данные в России — берите Yandex GPT или открытую модель на VK Cloud, тогда вопрос трансграничной передачи закрывается на уровне инфраструктуры.
Почему чанкинг — критическая часть RAG?
Чанкинг — самая недооценённая часть. Слепое разбиение по 500 токенов даёт релевантность около 60%. Семантический чанкинг по абзацам и заголовкам поднимает её до 80–85%. Метаданные (раздел, тег, дата) позволяют фильтровать поиск ещё до векторного матча. Размер чанков — обычно 500-1000 токенов с overlap 100. Это компромисс между точностью (мелкие чанки точнее ищутся) и контекстом (мелкие чанки теряют связность). Тестируйте на golden set.
Как измерять качество ответов RAG?
Главная метрика — не BLEU, а человеческая оценка по выборке. Делайте golden set из 100–200 типовых вопросов, прогоняйте после каждого изменения промпта или модели, считайте precision и recall на цитатах. Если модель уверенно пишет «по нашим данным», но не приводит источник, ставим жёсткий пост-фильтр: ответ без хотя бы одной цитаты блокируется. Это убирает галлюцинации и даёт пользователю возможность проверить источник. Без golden set вы не узнаете, ухудшается качество от изменений или нет.
Как защитить корпоративный RAG от утечек ПДн?
Корпоративная база знаний почти всегда содержит ПДн или коммерческую тайну. Минимум: разделение чанков по ролям (RBAC на уровне фильтра в pgvector), логирование запросов с обезличиванием, отдельный контур для внешних и внутренних пользователей. Если требуется хранить данные в России — берите Yandex GPT или открытую модель на VK Cloud. Промпт-инъекции — отдельная история. Документ с инструкцией «забудь предыдущие правила» легко может попасть в индекс. Защита: системный промпт фиксируется в коде, контекст в чётких маркерах.
Сколько стоит и сколько занимает разработка RAG?
Базовый MVP RAG-ассистента — 3–5 недель. В сумме: парсер документов, индексатор, API на Go, виджет на Next.js, админка для загрузки PDF и переиндексации. Эмбеддинги обходятся менее 1% от бюджета — основная стоимость это интеграция с источниками данных и UX-полировка чата. Полноценная корпоративная база знаний с 5–7 источниками, ролевой моделью и аналитикой запросов укладывается в 6–8 недель. Поддержка после запуска — обновление промптов, новые источники, тюнинг ретривера — 10–20 часов в месяц.