April 26

RAG-бот на основе базы данных

Что такое RAG простыми словами

Представьте, что вы сдаёте экзамен. Есть два варианта: отвечать только по памяти — или открыть шпаргалку с конкретными фактами прямо перед ответом. Первый вариант ненадёжен: можно перепутать или додумать. Второй — точный: отвечаешь строго по тому, что написано.

Канал с гайдами и контентом по claude code, выкладываем новости (когда режут лимиты в 10 раз) и какие инструменты через claude реализуем для проектов, канал: https://t.me/claudedevolper

Именно так работает RAG (Retrieval-Augmented Generation) — технология, которая добавляет языковой модели «шпаргалку» из ваших документов.

Суть в двух предложениях

Перед тем как ответить, RAG-система находит самые релевантные фрагменты из вашей базы знаний. Потом ИИ формулирует ответ на основе этих фрагментов — а не выдумывает из головы.

Это решает главную проблему ИИ-ботов — галлюцинации. Обычная языковая модель не знает, что творится у вас в компании: какие у вас цены, какие условия договора, какие регламенты. Она начинает фантазировать. RAG-бот этого не делает: если информации в базе нет — он честно скажет «не нашёл», вместо того чтобы сочинить что-то похожее на правду.

Термин появился в 2020 году в исследовании Facebook AI (Meta). Сегодня RAG — промышленный стандарт для любого бота, который должен работать с корпоративными знаниями: документами, регламентами, прайсами, базами клиентов.

Как работает RAG-бот изнутри

Процесс делится на два этапа: индексация (подготовка базы) и поиск + генерация (когда пользователь задаёт вопрос).

Этап 1: Индексация документов

Когда вы загружаете документ в RAG-систему, происходит следующее:

  1. Нарезка на фрагменты (чанкинг) — документ режется на небольшие куски по 200–500 токенов. Слишком большой чанк плохо ищется, слишком маленький — теряет контекст.
  2. Векторизация (embedding) — каждый фрагмент превращается в числовой вектор с помощью модели embeddings. Похожие по смыслу тексты получают похожие векторы.
  3. Хранение в векторной базе — векторы сохраняются (PostgreSQL + pgvector, Pinecone, Weaviate и т.д.) вместе с исходным текстом.

Этап 2: Поиск и ответ

Когда пользователь задаёт вопрос:

  1. Вопрос тоже векторизируется — превращается в числовой вектор той же моделью.
  2. Векторный поиск — система находит N самых «близких» фрагментов по математическому сходству векторов.
  3. Формирование контекста — найденные фрагменты вставляются в промпт к LLM вместе с вопросом.
  4. Генерация ответа — языковая модель формулирует ответ, опираясь на переданный контекст.

Продвинутый режим: RAG + SQL

Для таблиц и баз данных векторный поиск работает плохо. Умные RAG-агенты умеют сами выбирать: если вопрос про «найди все дома до 5 млн с тремя комнатами» — используется SQL-запрос. Если вопрос смысловой («расскажи про преимущества этого объекта») — векторный поиск. Такой подход показан в туториале ниже.

Где применяют RAG-ботов

RAG-боты используются везде, где нужно отвечать на вопросы по конкретным данным, а не в общем.

🏢 Корпоративная база знаний

HR-бот, который отвечает по регламентам и политикам компании. Сотрудник спрашивает «сколько дней отпуска?» — бот находит нужный абзац в PDF и отвечает точно, не по памяти.

🛒 Поддержка клиентов

Бот знает все ваши товары, условия доставки и возврата. Ищет ответ в базе товаров и FAQ, а не выдумывает. Снижает нагрузку на операторов на 60–80%.

🏠 Недвижимость

Загружаете каталог объектов в CSV — и бот умеет искать по параметрам: «двухэтажные дома с видом на реку до 20 млн». Комбинирует векторный поиск с SQL-фильтрацией.

⚖️ Юридические документы

Анализ договоров и регламентов. Юрист загружает договор и задаёт вопросы: «есть ли пункт про форс-мажор?», «какой срок расторжения?». Бот находит нужные места мгновенно.

📚 Обучение и онбординг

Новый сотрудник задаёт вопросы по внутренним инструкциям — бот отвечает по актуальным документам компании, а не по устаревшим скриптам, вшитым три года назад.

💊 Медицина и страхование

Поиск по нормативным актам, справочникам препаратов, условиям страховых полисов. RAG гарантирует точность там, где галлюцинация может причинить реальный вред.

RAG-бот vs обычный чат-бот

Когда RAG не нужен

Если ваш бот ведёт простые диалоги по скриптам («выбери тему» → «вот ответ»), RAG избыточен. Он нужен тогда, когда вопросы непредсказуемы и ответы должны браться из конкретных источников.

Видео: RAG-агент за 0 рублей на n8n и Л.И.С.А.

Я записал пошаговый туториал — полный цикл от нуля до работающего RAG-агента. Показываю как загрузить текстовый документ и CSV-таблицу, настроить векторный поиск и SQL-запросы, и задавать боту вопросы в чате.

Стек полностью self-hosted и бесплатный: n8n как оркестратор, PostgreSQL + pgvector как векторная база, Ollama для локальных embeddings, OpenRouter для подключения любой LLM.

Канал с гайдами и контентом по claude code, выкладываем новости (когда режут лимиты в 10 раз) и какие инструменты через claude реализуем для проектов, канал: https://t.me/claudedevolper