Когда мы запускали корпоративный блог, перед нами стояла нетривиальная задача. С одной стороны, площадка должна быть молниеносной, красивой и хорошо индексироваться поисковиками. С другой — мы хотели, чтобы контент появлялся регулярно, но при этом не отвлекал разработчиков и редакторов от основных задач.
Компромисс был найден на стыке трех технологий: Next.js в качестве фронтенд-фреймворка, n8n как оркестратор процессов и большие языковые модели (LLM) в роли креативного ядра. Рассказываем, как мы построили систему, которая сама пишет, форматирует и публикует статьи, пока мы пьем кофе.
Почему Next.js, а не WordPress?
Next.js был выбран по трем ключевым причинам:
- Производительность и SEO. Блог — это не внутренний дашборд, он должен летать на мобильных устройствах и нравиться Google Lighthouse. Next.js с генерацией статических страниц и инкрементальной регенерацией позволяет загружать статьи мгновенно.
- Единая экосистема. Сайт изначально разрабатывался для идеального SEO. Ведение блога на Next.js — это работа в привычной среде с полным контролем над кодом. Мы не зависим от плагинов PHP и уязвимостей чужих тем.
- Данные откуда угодно. Next.js не требует привязки к конкретной БД, что позволяет создавать любую структуру базы данных для максимального удобства разработки.
Сердце автоматизации: n8n
n8n — это инструмент автоматизации с открытым исходным кодом, который используется как оркестратор, управляющий всей системой — от исходных данных до рендеринга страниц пользователю. У n8n есть огромное количество возможностей, что сильно экономит время разработки проектов:
- Прозрачность и логирование. Каждый запуск воркфлоу виден визуально. Если языковая модель сгенерировала не тот результат, который ожидался, или API вернул ошибку, мы видим, на каком именно узле произошел сбой, и как отработали остальные узлы.
- Self-hosted. Безопасность данных для нас критична. n8n развернут в нашем контуре, и все промпты, ключи API и черновики статей не покидают периметр корпоративной сети.
- Гибкость. n8n умеет работать со всеми популярными сервисами.
Архитектура: Как рождается статья без человека?
Процесс выглядит как конвейер, состоящий из пяти основных этапов. Управляет всем воркфлоу в n8n, запускаемый по расписанию.
Этап 1: Генерация тем
Воркфлоу для генерации тем запускается, когда нужно сгенерировать новый набор тем для блога.
Этап 2: Промпт-инжиниринг и генерация текста (LLM Node)
Встроенный узел n8n отправляет запрос к API языковой модели. Промпт — это отдельный вид искусства. Мы не просим «напиши статью про Next.js». Мы задаем строгий контекст:
«Ты — технический специалист компании. Напиши статью на русском языке объемом ~5000 символов. Стиль: дружелюбный, но экспертный. В статье должны быть: проблема, решение с кодом (если применимо), польза для бизнеса. Используй Markdown-разметку для заголовков и списков. Целевая аудитория — потенциальные клиенты компании.»
Этап 3: Пост-обработка и валидация (Code Node)
Сырой ответ модели часто содержит лишние вступления вроде «Конечно, вот ваша статья…» или форматирование с ошибками. Специальный узел на JavaScript внутри n8n очищает текст, убирает артефакты, генерирует slug для URL и добавляет мета-теги.
Этап 4: Уведомление
После генерации статьи n8n отправляет уведомление ответственному сотруднику в корпоративный мессенджер, после чего сотрудник может проверить текст статьи вручную.
Этап 5: SEO
После публикации искусственный интеллект анализирует весь сайт целиком, создавая карту перелинковки статей с учетом новой статьи.
Будущее: полностью автономный редактор?
Сейчас наша связка Next.js + n8n + LLM — это идеальный конвейер, на выходе которого продукт, контролируемый модераторами.