RAG-приложение с контентом WordPress
Построено поисковое приложение на основе контента WordPress с использованием OpenAI. Позволяет находить информацию из статей и генерировать новый контент автоматически.
Показать оригинал (англ.)
Automated workflow: RAG & GenAI App With WordPress Content. This workflow integrates 24 different services: stickyNote, scheduleTrigger, merge, switch, lmChatOpenAi. It contains 63 nodes and follows best practices for error handling and security.
Схема сценария, как в редакторе n8n: ноды и связи между ними. Кликните, чтобы рассмотреть.
- ТриггерWhen clicking ‘Test workflow’Manual
- ДействиеPostgres - Create documents tablePostgres
- ДействиеWhen chat message receivedNo Op
- ДействиеPostgres - Create workflow execution history tablePostgres
- ДействиеWordpress - Get all postsWordpress
- ДействиеWordpress - Get all pagesWordpress
- ДействиеSupabase - Retrieve documents from chatinputNo Op
- ДействиеEmbeddings OpenAI1No Op
- ДействиеMerge Wordpress Posts and PagesMerge
- ДействиеAggregate documentsAggregate
- ДействиеSet fields1Set
- ДействиеSet fieldsSet
- ДействиеFilter - Only published & unprotected contentFilter
- ДействиеEmbeddings OpenAINo Op
- ДействиеHTML To MarkdownMarkdown
- ДействиеAI AgentNo Op
- ДействиеDefault Data LoaderNo Op
- ДействиеOpenAI Chat ModelNo Op
- ДействиеToken SplitterNo Op
- ДействиеPostgres Chat MemoryNo Op
- ДействиеSupabase Vector StoreNo Op
- ДействиеAggregateAggregate
- ТриггерRespond to WebhookRespond To Webhook
- ДействиеSupabase - Store workflow executionSupabase
- ТриггерEvery 30 secondsSchedule
- ДействиеPostgresPostgres
- ДействиеWordpress - Get posts modified after last workflow executionHttp Request
- ДействиеWordpress - Get posts modified after last workflow execution1Http Request
- ДействиеMerge retrieved WordPress posts and pagesMerge
- ДействиеSet fields2Set
- ДействиеFilter - Only published and unprotected contentFilter
- ДействиеLoop Over ItemsSplit In Batches
- ДействиеMarkdown1Markdown
- ДействиеPostgres - Filter on existing documentsPostgres
- ДействиеStore documents on SupabaseNo Op
- ДействиеEmbeddings OpenAI2No Op
- ДействиеDefault Data Loader1No Op
- ДействиеToken Splitter1No Op
- ДействиеSwitchSwitch
- ДействиеSet fields4Set
- ДействиеAggregate1Aggregate
- ДействиеSupabase - Delete row if documents existsSupabase
- ДействиеStore workflow execution id and timestamptzSupabase
- ДействиеAggregate2Aggregate
- ДействиеSet fields3Set
Сценарий «RAG-приложение с контентом WordPress» состоит из 45 нод: When clicking ‘Test workflow’, Postgres - Create documents table, When chat message received, Postgres - Create workflow execution history table, Wordpress - Get all posts, Wordpress - Get all pages, Supabase - Retrieve documents from chatinput, Embeddings OpenAI1 и других. Интеграции: Httprequest, Wordpress, OpenAI, Splitinbatches, Markdown, Webhook, PostgreSQL, Supabase.
| Параметр | Значение | Описание |
|---|---|---|
| Учётные данные | Httprequest · Wordpress · OpenAI · Splitinbatches · Markdown · Webhook · PostgreSQL · Supabase | Для каждого сервиса нужен свой ключ/токен - впишете их в n8n после установки. |
| Объём сценария | 53 ноды · продвинутый | Число нод и уровень сложности логики. Больше нод - тоньше настройка. |
| Формат | n8n workflow JSON | Готовый воркфлоу. При развороте через кнопку импортируется автоматически. |
Развернуть n8n с этим сценарием
Готовый сервер с n8n из маркетплейса Fatmetal - воркфлоу уже загружен. Рекомендованная конфигурация уже подставлена в заказ: 2 CPU · 4 ГБ · 50 ГБ. Останется вписать свои ключи, и автоматизация заработает. Нужна помощь с настройкой под нагрузку или сетью? Напишите инженеру.
n8n отдаём закрытым, а не голым
n8n часто атакуют - поэтому инстанс приезжает уже защищённым, без ручной настройки.
Владелец создан заранее
Аккаунт администратора настроен автоматически при развёртывании. Окно самостоятельной регистрации закрыто - никто не перехватит ваш инстанс в первые минуты после запуска (частый вектор атаки на self-hosted n8n).
Единый пароль с сервером
Логин в n8n - тот же пароль, что у вашей машины. Не нужно искать отдельные креды в файлах, меньше шансов оставить дефолт.
fail2ban против перебора
Автоматически банит IP после серии неудачных попыток входа по SSH. Защита от брутфорса из коробки.
HTTPS и security-заголовки
Трафик шифруется (Let's Encrypt, авто-обновление), выставлены HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy - защита от кликджекинга, MIME-снифинга и downgrade-атак.
После оплаты - сервер с готовым сценарием
Сервер создаётся автоматически за несколько минут. Ничего настраивать вручную не нужно - n8n поднимется сам, а этот сценарий уже будет внутри.
Сервер создаётся
После оплаты сервер разворачивается автоматически за несколько минут: ставится n8n, база данных и HTTPS. Дождитесь готовности в личном кабинете.
Открываете адрес
Адрес формируется из IP сервера: замените точки на дефисы и добавьте .fatmetal.net. Например IP 45.15.159.10 → https://45-15-159-10.fatmetal.net/. HTTPS уже настроен. Готовый адрес также есть в личном кабинете - можно просто скопировать его оттуда.
Входите готовыми данными
Аккаунт владельца уже создан - регистрировать ничего не нужно. Логин: admin@<адрес вашего сервера> (тот же адрес, что открыли на шаге 2 - например admin@45-15-159-10.fatmetal.net). Пароль - тот же, что у вашего сервера: он в личном кабинете и в /root/n8n-credentials.txt на сервере. Войдите и при желании сразу смените пароль в настройках. Интерфейс английский - у n8n нет русской локализации.
Сценарий уже внутри
Этот сценарий уже импортирован - найдёте его в разделе Workflows. Останется вписать свои ключи для интеграций (Httprequest, Wordpress, OpenAI) в Credentials и включить сценарий.