Qdrant c n8n. Автоматизируем ИИ RAG-приложение. n8n examples.. n8n examples. n8n qdrant.. n8n examples. n8n qdrant. n8n rag.. n8n examples. n8n qdrant. n8n rag. n8n гайд.. n8n examples. n8n qdrant. n8n rag. n8n гайд. n8n как настроить.. n8n examples. n8n qdrant. n8n rag. n8n гайд. n8n как настроить. n8n настройка.. n8n examples. n8n qdrant. n8n rag. n8n гайд. n8n как настроить. n8n настройка. n8n пример.. n8n examples. n8n qdrant. n8n rag. n8n гайд. n8n как настроить. n8n настройка. n8n пример. qdrant rag.. n8n examples. n8n qdrant. n8n rag. n8n гайд. n8n как настроить. n8n настройка. n8n пример. qdrant rag. qdrant пример.

Недавно мы выпустили статью “Всё про Qdrant. Обзор векторной базы данных”, в которой подробно познакомились с данным сервисом. Сегодня мы рассмотрим векторную БД с практической стороны. В статье будет описана инструкция по разработке no-code RAG-приложения на основе n8n с использованием Qdrant.

Qdrant — это открытая векторная база данных для поиска документов по схожести, написанная на Rust. Qdrant предназначен для эффективного хранения и поиска эмбеддингов — векторов, представляющих картинки, текст и другие неструктурированные данные в высокоразмерном пространстве.

Работу Qdrant мы рассмотрим в статье на основе no-code RAG-приложения в n8n с использованием OpenAI.

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

Обычные LLM генерируют ответы «из головы» — на основе статичных данных, на которых они были обучены. У таких моделей есть knowledge cutoff — дата, после которой модель не знает новых фактов.

Но с RAG всё иначе:

  1. Документы превращаются в эмбеддинги и сохраняются в векторной БД (например, Qdrant).

  2. При запросе LLM:

    1. Генерирует эмбеддинг вопроса;

    2. Выполняет семантический поиск в БД;

    3. Извлекает релевантные куски текста;

    4. Вставляет их в prompt модели.

  3. LLM создаёт ответ уже с учётом этого контекста.

Настройка n8n

Для начала работы нам требуется запущенный n8n.

Запуск n8n мы произведем “одной кнопкой” в Amvera Cloud, где он есть как преднастроенный сервис. Это нам даст возможность развернуть и обновлять n8n одним действием из интерфейса, бесплатный домен с SSL, встроенное проксирование до OpenAI и возможность оплаты рублями моделей LLaMA (если нет иностранной карты для OpenAI).

  1. Переходим в личный кабинет Amvera Cloud.

  2. В панели снизу выбираем n8n

    Qdrant c n8n. Автоматизируем ИИ RAG-приложение - 1
  3. Вводим название и выбираем тариф.

  4. Ожидаем запуска сервиса около 1 минуты. Готово.

Теперь, когда мы имеем рабочий сервис n8n, можем приступить к работе.

Переходим к проекту, открываем раздел “Домены”.

Бесплатный домен с SSL

Бесплатный домен с SSL

Кликаем по доступному домену и переходим в интерфейс n8n.

Вы должны попасть на страницу входа. Вписываем данные и идём далее.

Мы попадём в главное меню n8n.

Меню n8n

Меню n8n

Разработка RAG Pipline

RAG pipeline (Retrieval-Augmented Generation pipeline) — это архитектурная схема работы ИИ‑системы, которая сочетает поиск релевантной информации (retrieval) и генерацию ответа (generation).

Именно pipeline называют весь этот процесс от запроса до ответа.

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

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

Приступим к разработке проекта.

Создаем Workflow. Для этого нажимаем на “+”.

Мы попадём в область работы.

Qdrant c n8n. Автоматизируем ИИ RAG-приложение - 4

Итак, мы начнём с построения процесса ввода документа.

Добавляем первый node: n8n Form

Qdrant c n8n. Автоматизируем ИИ RAG-приложение - 5

Настраиваем следующим образом:

Qdrant c n8n. Автоматизируем ИИ RAG-приложение - 6

Нажимаем  “Back to canvas”, и также делаем с другими nodes.

На этом этапе мы создаём лишь форму для дальнейшей загрузки файла.

Нам требуется добавлять документы в наше векторное хранилище, поэтому присоединяем и ищем Qdrant Vector Store – Add documents to vector store.

Qdrant выполняет функцию векторного хранилища, в котором сохраняются эмбеддинги наших документов вместе с их исходным содержимым и метаданными.
Это позволяет не только хранить векторные представления текстов, но и эффективно выполнять поиск релевантных фрагментов по запросу пользователя.
В нашем случае Qdrant используется как связующее звено между добавленными документами и последующим поиском по смыслу.

На этом этапе нам требуется добавить Credential (личные данные). Поэтому мы возвращаемся в Amvera Cloud за Qdrant.

Запуск Qdrant и получение URL

Аналогично с n8n, Qdrant является преднастроенным сервисом в Amvera Cloud, что позволяет быстро развернуть сервис и приступить к работе с ним.

В панели преднастроенных сервисов выберите Qdrant Vector Store, и также впишите название проекта и выберите тариф.

Далее, в проекте (в разделе “Инфо”)  скопируйте доменное имя и используйте его как URL следующим образом:

http://доменное_имя:6333

Создание Credential

В n8n под Credential понимается набор данных для подключения к внешнему сервису или API — логин, пароль, токен, ключ, URL и прочие параметры.

Мы уже выбрали Qdrant Vector Store и находимся в окне настройки.

В поле Credential to connect with выбираем Create new credential.

В строке Qdrant URL появившегося окна вписываем URL, как мы показали ранее.

Нажимаем кнопку Save. При успешном подключении высветится зелёное уведомление.

Qdrant c n8n. Автоматизируем ИИ RAG-приложение - 7

Альтернативный метод создания Credential.

Нажимаем “+”, выбираем Credential.

В появившемся окне ищем желаемый сервис (в нашем случае Qdrant Vector Store) и также его настраиваем.

Настройка Qdrant Vector Store в n8n

Мы уже настроили Credential, поэтому выбираем его и идём далее.

В Qdrant Collection мы должны вписать название коллекции из векторной базы данных Qdrant.

В Qdrant все данные группируются в коллекции — это изолированные пространства хранения, в которых находятся векторы, точки и связанные с ними данные (payload). Если провести аналогию с реляционными БД, то коллекция — это как таблица, только для векторных и семантических данных.

Выбираем тип “By ID” и вписываем произвольное название коллекции.

Qdrant c n8n. Автоматизируем ИИ RAG-приложение - 8

Теперь, когда мы добавили Qdrant Vector Store, нам требуется добавить ещё несколько элементов:

Добавление модели embeddings

Для представления PDF-файла в виде эмбеддингов (Числовых представлений объекта, полученное с помощью нейросети) нам требуется модель, которая будет превращать текст в эмбеддинги.

Мы будем использовать OpenAI.

Подготовка

Сперва мы должны получить API ключ. Его можно сгенерировать по ссылке. Далее —создать Credential по аналогии, представленной ранее. Вписываем лишь API Key.

Нажимаем на “+” c надписью Embeddings и выбираем в списке Embeddings OpenAI.

Возвращаемся на холст

  • Document Loaders

Нажимаем на +, выбираем Default Data Loader. Изменяем Type of Data на Binary

  • Text splitter

Здесь мы собираемся настроить, как разбить документ. В нашем проекте мы выберем Recursive Character Text Splitter, который рекомендуется в большинстве случаев использования.

Нам требуется определить размер чанков.

Чанки (chunks) — это небольшие фрагменты текста, на которые разбивается документ перед созданием эмбеддингов.

Иначе говоря:

Чанк — это кусок текста фиксированного размера (например, 300–500 слов), который можно подать модели для получения эмбеддинга.

Если у вас семантически простой документ, ставьте значение Chunk Size малым, если нет — напротив, большое. Мы же поставим усреднённое значение на 400. Chunk overlap рекомендуется ставить на ¼ от Chunk Size

Сейчас проект выглядит так:

Qdrant c n8n. Автоматизируем ИИ RAG-приложение - 9

Разработка RAG Chatbot

Сперва отдельно от всех создадим новый node: Chat Trigger. Нам требуется, чтобы срабатывал триггер на RAG после того, как сообщение появляется в чате.

Qdrant c n8n. Автоматизируем ИИ RAG-приложение - 10

Далее нам требуется присоединить AI Agent.

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

Без лишних настроек присоединяем его к Chat Trigger.

Настройка AI Agent

Первоначально нам требуется выбрать модель LLM. Мы и сейчас будем использовать OpenAI Chat Model. Для этого нам требуется нажать на +, и в списке моделей выбрать OpenAI Chat Model. Так как мы ранее настраивали Credential для OpenAI, то и сейчас за нас выбрана учётная запись. Далее вы можете выбрать любую удобную для вас модель GPT. Мы будем использовать gpt-4o-mini.

В Memory мы выбираем Simple Memory, здесь без изменений.

В Tool выбираем Qdrant Vector Store, здесь мы вписываем желаемое название и описание. Важно: имя Qdrant Collection должно соответствовать названию коллекции, выбранной ранее.

Limit — это количество фрагментов, которые можно извлечь из семантической базы данных. Вы можете установить это значение выше или ниже, в зависимости от того, сколько фрагментов вы хотите получить из БД.

Qdrant c n8n. Автоматизируем ИИ RAG-приложение - 11

Также вы можете для повышения эффективности создать системное сообщение, которое будет помогать LLM войти в курс дела.

Для этого в настройках AI Agent, разделе Options нажмите Add Option – System message. Системное сообщение должно описывать LLM его задачу, роль и деятельность. Пропишите его по желанию

Теперь мы также должны настроить модель для эмбеддингов. Это такая же модель, как и та, которую мы добавили ранее. Поэтому достаточно лишь соединить эти два nodes.

Qdrant c n8n. Автоматизируем ИИ RAG-приложение - 12

Схема готового проекта

Qdrant c n8n. Автоматизируем ИИ RAG-приложение - 13

Тестирование и работа проекта.

Для работы проекта требуется добавить документ с информацией, которая поможет LLM генерировать более точные ответы. Например, вы можете загрузить документацию какого-либо сервиса.

Для начала работы:

  • Запустите проект нажатием на Execute Workflow

  • В сплывающем окне загрузите документ формата .pdf

Qdrant c n8n. Автоматизируем ИИ RAG-приложение - 14
  • Ожидаем прогрузки и векторизации документа.

  • Задаём вопрос в чате.

  • Получаем ответ с учетом информации из документа.

Итоги

Мы реализовали локальную RAG‑систему на базе n8n c использованием векторной базы данных Qdrant которая позволяет:

  • Добавлять документы в векторное хранилище Qdrant.

  • Разбивать их на чанки и создавать эмбеддинги.

  • Выполнять поиск по смыслу среди загруженных данных.

  • Передавать найденные фрагменты в LLM‑модель через OpenAI для генерации ответа.

  • Управлять всем процессом через визуальные workflow в n8n.

Использование готовых нод и связок в n8n позволяет быстро настраивать pipeline без программирования.

Запуск мы произвели в Amvera Cloud, что позволило запустить n8n и Qdrant одной кнопкой из интерфейса, получить бесплатный домен c SSL и встроенное проксирование до OpenAI, а также подключить вывод LLM LLaMA без иностранной карты.

Автор: ovchinnikovproger

Источник

Rambler's Top100