№2. Как подключить Supabase к Нейро42

Введение

Это пошаговая инструкция по подключению Supabase к платформе Нейро42 для создания RAG-агентов (агентов с доступом к базе знаний).

 

Что мы будем делать:

Мы создадим векторную базу данных в Supabase, подключим её к агенту в Нейро42 и загрузим документ, по которому агент сможет отвечать на вопросы.

 

Что вы найдёте в этой инструкции:

  • Как зарегистрироваться и настроить проект в Supabase
  • Как получить Host и Service Role Secret для подключения
  • Как создать векторную таблицу через SQL
  • Как загрузить документ в векторную базу данных
  • Как протестировать работу агента с базой знаний
  • Как создать несколько векторных баз и фильтровать данные

 

Что такое Supabase?

Supabase — это облачный сервис типа «бэкенд как услуга» (Backend as a Service). Для наших задач он позволяет:

  • Создавать и хранить векторные базы данных в облаке
  • Подключать эти базы к любому ИИ-агенту для RAG-возможностей
  • Работать с данными без написания серверного кода

 

Что такое RAG?

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

 

Ключевые понятия

 

Термин Что это такое простыми словами
Supabase Облачный сервис для хранения данных, в том числе векторных баз данных.
Векторная база данных (Vector Store) База данных, где текст хранится в виде математических векторов. Позволяет находить смысловые совпадения, а не просто совпадения по словам.
Эмбеддинги (Embeddings) Числовые представления текста. С помощью модели OpenAI Embeddings текст превращается в вектор, который хранится в базе.
RAG-агент ИИ-агент, который перед ответом ищет релевантные данные в векторной базе и использует их для формирования ответа.
Host (Project URL) Адрес вашего проекта Supabase — нужен для подключения из Нейро42.
Service Role Secret Секретный ключ доступа к Supabase с расширенными правами. Хранить в тайне!
RLS (Row Level Security) Система безопасности Supabase, ограничивающая доступ к данным. Включаем для защиты таблицы.
Чанкинг (Text Splitting) Разбивка большого документа на небольшие части (чанки) для загрузки в векторную базу.

 

Что вам понадобится

 

Что нужно Зачем и как получить
Аккаунт в Нейро42 Платформа, где будет жить ваш агент. Регистрация бесплатная.
Аккаунт в Supabase Создаём на supabase.com — бесплатный план подходит для старта.
Аккаунт в OpenAI Нужен для модели эмбеддингов (text-embedding-3-small). Или другой провайдер эмбеддингов.
Документ для загрузки Любой файл (PDF, Google Doc и т.д.) — это будет ваша база знаний для агента.
30–40 минут Не торопитесь, делайте по шагам.

 

Часть 1: Добавляем Supabase Vector Store в воркфлоу

Шаг 1. Добавьте ноду Supabase Vector Store

Откройте ваш воркфлоу в Нейро42 с ИИ-агентом. Нам нужно подключить Supabase как инструмент агента.

 

  • Найдите ноду ИИ-Агент на рабочей области.
  • Нажмите на «+» в разделе «Tool» (Инструменты) под нодой агента.

 

  • В строке поиска нод введите «supabase».
  • Выберите «Supabase Vector Store» из результатов.

 

Нода Supabase Vector Store добавится к агенту как инструмент.

 

Шаг 2. Откройте форму создания учётных данных

Кликните на ноду Supabase Vector Store — откроется панель настроек.

 

  • Найдите поле «Credential to connect with» (Учётные данные для подключения).
  • Нажмите «Создать новые учётные данные».

 

💡  Оставьте эту вкладку открытой — мы вернёмся сюда после регистрации в Supabase, чтобы вставить нужные данные.

 

Часть 2: Регистрация и настройка Supabase

Шаг 3. Создайте аккаунт в Supabase

Перейдите на сайт supabase.com и откройте страницу регистрации.

 

  • Введите емаил и пароль, нажмите «Sign Up».
  • Проверьте почту — придёт письмо с подтверждением.
  • Нажмите на кнопку подтверждения в письме.

 

Шаг 4. Создайте организацию

После подтверждения вы попадёте на страницу создания организации.

 

  • В поле «Organization name» введите любое название, например «my org».
  • В поле «Type» выберите «Personal».
  • В поле «Plan» оставьте «Free».
  • Нажмите «Create organization».

 

Шаг 5. Создайте проект

После создания организации сразу откроется форма создания проекта.

 

  • В поле «Organization» выберите только что созданную организацию.
  • В поле «Project name» введите имя проекта, например «n8n».
  • Придумайте надёжный пароль базы данных и сохраните его в надёжном месте.
  • В поле «Region» выберите ближайший к вам регион.
  • Нажмите «Create new project».

 

⚠️  Пароль базы данных нельзя будет просмотреть повторно. Сохраните его сразу в надёжном месте — в менеджере паролей или заметках.

 

 

Проект разворачивается 1–2 минуты. Вы увидите индикатор загрузки вверху страницы — подождите его завершения.

 

✅  Готово! Проект создан. Теперь получим данные для подключения к Нейро42.

 

Часть 3: Получение данных для подключения

Шаг 6. Получите Project URL (Host)

В интерфейсе Supabase наведите курсор на боковое меню — оно раскроется.

 

  • Нажмите «Project Settings» (Настройки проекта).
  • Перейдите в раздел «Data API».
  • Скопируйте «Project URL» — это и есть ваш Host для подключения.

 

Шаг 7. Получите Service Role Secret

Оставаясь в разделе Project Settings, перейдите на вкладку «API Keys».

 

  • Найдите строку «service_role» — это ключ с расширенными правами.
  • Нажмите «Reveal» чтобы показать ключ.
  • Скопируйте ключ.

 

⚠️  Service Role Secret — это ключ с полными правами доступа к базе данных. Никому не передавайте и не публикуйте его в открытом виде.

Шаг 8. Подключите Supabase в Нейро42

Вернитесь в Нейро42. Откройте ноду «Supabase Vector Store» и найдите поле «Credential to connect with».

 

  • В поле «Host» вставьте скопированный Project URL.
  • В поле «Service Role Secret» вставьте скопированный ключ.
  • Нажмите «Save».

 

Если подключение успешно — вы увидите зелёную надпись «Connection tested successfully».

 

📸  [СКРИНШОТ: Зелёная надпись «Connection tested successfully» после сохранения]

 

 

Часть 4: Создание векторной таблицы в Supabase

Шаг 9. Скопируйте SQL-скрипт из документации Нейро42

Для создания векторной таблицы нужно выполнить SQL-скрипт. Его можно найти в документации Нейро42 (раздел Quick Start для Vector Store) или в n8n docs.

 

💡  SQL-скрипт создаёт таблицу documents с колонками: embedding (вектор), metadata (метаданные) и content (текст чанка), а также функцию поиска match_documents.

 

 

Шаг 10. Выполните SQL-скрипт в Supabase

Вернитесь в Supabase.

 

  • Наведите курсор на боковое меню и нажмите «SQL Editor» (Редактор SQL).
  • Вставьте скопированный SQL-скрипт в поле редактора.
  • Нажмите «Run» (Выполнить).

 

 

Ожидаемый результат: «Success. No rows returned» — это означает, что скрипт выполнился успешно.

 

 

⚠️  Если при выполнении появляется ошибка, связанная со строкой «extensions» — удалите эту строку из скрипта (она упоминается дважды) и нажмите Run снова.

 

Шаг 11. Проверьте созданную таблицу

В боковом меню Supabase нажмите «Table Editor» (Редактор таблиц).

 

  • Вы увидите новую таблицу с именем «documents».
  • В ней три колонки: embedding, metadata, content.

 

 

Шаг 12. Включите защиту RLS

Для безопасности включите Row Level Security (RLS) для таблицы.

 

  • В Table Editor нажмите на таблицу «documents».
  • Найдите кнопку «Enable RLS» (или значок щита) и нажмите её.
  • Подтвердите действие в появившемся окне.

 

 

✅  Готово! Векторная таблица создана и защищена. Теперь подключим её к агенту.

 

Часть 5: Настройка агента в Нейро42

Шаг 13. Подключите Supabase Vector Store к агенту

В воркфлоу с вашим RAG-агентом найдите ноду ИИ-Агент.

 

  • Нажмите «+» в разделе «Tool» (Инструменты) у ноды агента.
  • В поиске введите «Supabase» и выберите «Supabase Vector Store».
  • Выберите созданные учётные данные.
  • В поле «Description» введите описание, например: «Работа с данными в векторном хранилище». Это помогает агенту понять, когда использовать этот инструмент.
  • В поле «Table Name» выберите таблицу «documents».

 

 

Часть 6: Загрузка документа в векторную базу

Шаг 14. Добавьте ноду загрузки файла из Google Drive

Для загрузки документа в векторную базу сначала нужно получить сам файл. Мы покажем на примере файла из Google Drive.

 

  • В воркфлоу нажмите «+» для добавления новой ноды.

  • В поиске введите «Google Drive» и выберите «Download File» (Скачать файл).

  • Подключите учётные данные Google.

  • В настройках укажите нужный файл (например, через поиск по имени — «Employee Handbook»).

 

 

Шаг 15. Подключите Google Drive через Google Console

Прежде чем использовать ноду Google Drive в Нейро42, нужно настроить OAuth-доступ через Google Cloud Console. Это делается один раз.

 

13.1. Создайте проект в Google Cloud Console

  • Откройте браузер и введите в поиске «Google Console» или перейдите на console.cloud.google.com.

  • Нажмите на выпадающее меню выбора проекта (вверху слева) и выберите «New Project» (Новый проект).

  • Дайте проекту имя, например «test», и нажмите «Create».

  • Убедитесь, что вы переключились на новый проект (его имя отображается вверху слева).

 

13.2. Включите Google Drive API

  • В строке поиска Google Console введите «Drive».

  • Выберите «Google Drive API» из результатов.
  • Нажмите кнопку «Enable» (Включить).
  • После включения Google автоматически переведёт вас в раздел «APIs & Services».

13.3. Настройте OAuth Consent Screen

Это экран согласия, который пользователи увидят при авторизации через Google.

 

  • В левом меню выберите «OAuth consent screen».

  • Нажмите «Get Started».

  • Заполните поля: App name (любое название приложения) и User support email (ваша почта — обязательно).

  • В разделе Audience выберите «External».

  • Заполните контактный email в разделе Contact Information.

  • Нажмите «Finish».

 

13.4. Создайте OAuth-клиент

  • В левом меню перейдите в «Clients» (или «Credentials» → «Create Credentials» → «OAuth client ID»).

  • В поле «Application type» выберите «Web Application».

 

Теперь нужно взять OAuth Redirect URL из Нейро42:

  • Откройте Нейро42 в другой вкладке, перейдите к настройке подключения Google Drive.

  • Найдите поле «OAuth Redirect URL» (или «Redirect URL») и скопируйте эту ссылку.
  • Вернитесь в Google Console. В поле «Authorized redirect URIs» нажмите «Add URI» и вставьте скопированную ссылку.
  • Нажмите «Create».

Google покажет окно с Client ID и Client Secret — 

⚠️  Скопируйте Client ID и Client Secret прямо сейчас и сохраните их в надёжном месте. Они понадобятся на следующем шаге.

 

 

13.5. Получите Client Secret

Если вы закрыли окно — не беспокойтесь. Client Secret можно посмотреть повторно:

 

  • В разделе «Clients» (или «Credentials») нажмите на имя созданного клиента.
  • В разделе «Client Secrets» найдите ваш ключ или нажмите «Add Secret» для создания нового.
  • Скопируйте Client Secret.

 

 

13.6. Добавьте тестового пользователя

Поскольку приложение в режиме External и ещё не верифицировано, нужно добавить ваш аккаунт как тестового пользователя.

 

  • В левом меню перейдите в «OAuth consent screen» → раздел «Audience».
  • Найдите блок «Test users» и нажмите «Add users».
  • Введите вашу Google-почту и нажмите «Save».

 

⚠️  Этот шаг обязателен! Без добавления тестового пользователя авторизация через Google не пройдёт — вы получите ошибку доступа.

 

 

13.7. Введите данные в Нейро42 и авторизуйтесь

  • Вернитесь в Нейро42 в настройки подключения Google Drive.
  • В поле «Client ID» вставьте Client ID из Google Console.
  • В поле «Client Secret» вставьте Client Secret.
  • Нажмите «Save».
  • Нажмите «Connect with Google» — откроется окно авторизации Google.
  • Войдите в аккаунт и предоставьте все запрошенные разрешения.

 

 

 

✅  Google Drive успешно подключён! Теперь можно выбирать файлы из вашего диска прямо в Нейро42.

 

Шаг 16. Добавьте ноду загрузки файла из Google Drive

 

  • В настройках укажите нужный файл (например, через поиск по имени — «Employee Handbook» или черех ссылку).

 

 

Шаг 17. Выберите файл и конвертируйте в PDF

Теперь когда учётные данные подключены, укажите файл для загрузки и проверьте его формат.

 

  • В настройках ноды «Google Drive — Download File» в поле «File» введите имя документа (например, «Employee Handbook») или выберите из списка.
  • Нажмите «Выполнить эту ноду» для тестирования.

 

 

В результате выполнения вы увидите скачанный файл. Обратите внимание на поле mime type — скорее всего там будет формат Google Document, а не PDF.

 

 

💡  Для загрузки в векторную базу нам нужен PDF. Конвертируем прямо в этой же ноде — никакую новую не добавляем.

 

  • В панели настроек ноды нажмите «Add option».

  • Выберите «Google File Conversion».

  • В появившемся поле выберите «Google Docs → PDF».

 

 

  • Снова нажмите «Выполнить эту ноду».

 

Теперь в результате mime type изменился на «application/pdf» — файл успешно сконвертирован.

 

 

Шаг 18. Добавьте ноду загрузки в векторную базу

Теперь загрузим документ в Supabase.

  • Добавьте новую ноду, введите в поиске «Supabase Vector Store».

  • Выберите режим операции: «Add documents to vector store» (Добавить документы).

  • Выберите те же учётные данные Supabase.

  • В поле «Table Name» выберите таблицу «documents».
  • Поле «Embeddings Batch Size» оставьте 200 (по умолчанию).

Шаг 19. Настройте загрузчик документа

В разделе «Document» настройте, как именно будет загружаться файл.

  • Нажмите «+» в поле Document и выберите «Default Data Loader».

  • Тип данных (Type): «Binary».

  • Разбивка текста (Text Splitting): оставьте «Simple».

 

Шаг 20. Подключите модель эмбеддингов для загрузки

В разделе «Embedding» подключите ту же модель, что использовали в Шаге 12.

 

  • Нажмите «+» в разделе Embedding.
  • Выберите «OpenAI Embeddings» → модель «text-embedding-3-small».

 

Шаг 21. Выполните загрузку

  • Нажмите «Execute» на ноде загрузки.
  • Документ будет разбит на чанки и загружен в таблицу.

 

После успешного выполнения вы увидите результат: несколько строк с фрагментами текста, метаданными и векторами эмбеддингов.

 

 

Проверьте таблицу в Supabase (Table Editor → documents) — там должны появиться новые строки.

 

Подключите к нашу первую ноду supabase к модели Embeddings

✅  Документ загружен! Агент теперь может отвечать на вопросы по его содержимому.

 

Часть 7: Тестирование агента

Шаг 22. Задайте вопрос агенту

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

 

  • Откройте чат с агентом.
  • Задайте вопрос по содержимому вашего документа

 

Агент подумает и использует инструмент Supabase Vector Store для поиска ответа.

 

 

💡  Если агент возвращает мало фрагментов — увеличьте параметр Limit в настройках ноды Supabase Vector Store. По умолчанию 4, можно поставить 8 и более.

 

Типичные ошибки и решения

 

Проблема Причина и решение
Ошибка при выполнении SQL-скрипта (упоминание extensions) Расширения уже установлены. Удалите строки с «extensions» из скрипта и выполните снова.
Ошибка при повторном запуске SQL-скрипта Таблица уже существует. Измените имя таблицы и функции перед запуском.
Агент не отвечает по базе знаний Проверьте: 1) подключены ли учётные данные, 2) совпадают ли модели эмбеддингов при загрузке и поиске, 3) включена ли нода Vector Store.
Connection tested — не зелёный Проверьте правильность Host (Project URL) и Service Role Secret. Убедитесь, что проект Supabase запущен.
Query Name не работает для второй базы Имя функции в Query Name должно точно совпадать с именем, указанным в SQL-скрипте (например, match_new_vector).
Агент возвращает мало данных Увеличьте параметр Limit в настройках Supabase Vector Store (по умолчанию 4).

 

🎉  Поздравляем!

Ваш RAG-агент с векторной базой Supabase готов к работе!

 

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

 

Что делать дальше

  • Загрузите другие документы — каждый добавит агенту новые знания
  • Создайте несколько векторных таблиц под разные темы (HR, продажи, техническая поддержка)
  • Настройте метаданные для точной фильтрации данных
  • Напишите системный промпт агенту — объясните ему его роль и когда использовать базу знаний
  • Изучите следующий гайд: подключение внешних источников данных (Google Drive, Notion и другие)

 

💡  Совет: если агент отвечает неточно — первым делом проверьте его системный промпт. Агент должен понимать свою роль и знать, что у него есть инструмент для работы с базой знаний.

 

Предупреждение о применении иностранного языка

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

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

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

Мы обращаем внимание на тот факт, что наличие иностранного языка в данной документации обусловлено профессиональной необходимостью и соответствует установленным нормам и правилам использования специализированной литературы и документации в Российской Федерации.

Свяжитесь с нами

* нажимая на кнопку, Вы даете согласие на обработку персональных данных