Все кейсы
Артефакт навыка · n8n Self-hosted · в проде 143 ноды

Self-hosted n8n production-пайплайн на 143 нодах

Не туториал и не сборка из шаблонов — рабочий контур обработки интервью в n8n. Один Telegram-бот как точка входа, AssemblyAI для транскрипции, OpenAI и DeepSeek как взаимозаменяемые analyzers, e-mail и DOCX-выдача, self-diagnosis. Поддерживается и развивается в проде.

Роль
Архитектор и разработчик воркфлоу
Стадия
В эксплуатации, развивается
Размер
143 ноды · 181 соединение · 28 ветвлений (20 If + 8 Switch)
Error-handling
31 узел с явной обработкой ошибок
Стек
n8n self-hosted · Telegram Bot API · AssemblyAI · OpenAI · DeepSeek · SMTP
Выдача
Telegram · DOCX · e-mail · preview

Проблема — записи интервью не превращаются в артефакты сами

У HR и руководителей накапливаются аудиозаписи собеседований, оценочных бесед и интервью разных типов. Ручная расшифровка долгая, шаблоны отчётов исторически разные, а готовые «no-code из шаблона» сборки разваливаются на первой же реальной нагрузке: нет состояний, нет обработки сбоев LLM или транскрипции, нет понятного fallback при отказе провайдера.

Нужна была одна дисциплина: загрузил файл — получил согласованную структуру вывода без переключения между инструментами; пайплайн должен переживать сбои внешних API и оставаться поддерживаемым одним инженером.

Решение — production-воркфлоу с шестью функциональными кластерами

Один workflow «production» в n8n self-hosted, разнесённый на шесть функциональных кластеров: приём, транскрипция, классификация типа интервью, ветки анализаторов, обработка ошибок и выдача. Точка входа — Telegram: пользователь отправляет голосовое или файл, бот извлекает идентификаторы и передаёт в трёхстадийный конвейер AssemblyAI (Upload → Start → Check).

Дальше — LLM-классификация типа встречи и маршрутизация в одну из шести предметных веток анализа (Type 1–6) плюс комплексный и корпоративный сценарии. Каждая ветка — собственный строго структурированный промпт; результат нормализуется под HTML для Telegram, при необходимости режется на части по лимитам мессенджера, конвертируется в DOCX и отправляется по SMTP.

n8n workflow production: 143 ноды, шесть функциональных кластеров — приём, транскрипция, классификация типа интервью, ветки анализаторов, обработка ошибок, выдача
n8n self-hosted, workflow «production» — пайплайн транскрипции и анализа интервью.

Multi-LLM с fallback — OpenAI и DeepSeek как взаимозаменяемые analyzers

OpenAI — основной провайдер, DeepSeek Chat — резервный. Переключение между ними реализовано так, чтобы не требовать переписывания воркфлоу: ветка fallback срабатывает при недоступности или ошибке основного провайдера, схема промптов и нормализация ответа общие.

Это снимает зависимость от одного облачного API и одновременно даёт инструмент для A/B-сравнения провайдеров на одних и тех же входах без миграции пайплайна.

Систематический error-handling — 31 узел обработки ошибок

В пайплайне 31 узел с явной обработкой ошибок. Подход — не «один глобальный catch», а локальные хендлеры по областям:

  • Отдельные обработчики для каждой ветки анализаторов (Type 1–6, Complex, Corporate) — со своими стратегиями ретрая и фолбэка.
  • По одному хендлеру на каждую из трёх стадий AssemblyAI (Upload / Start / Check) — разные сбои требуют разной реакции.
  • Retry с backoff и счётчиком, разделение retryable и критических ошибок: временные сбои LLM или сети не «съедают» сессию, критические — поднимаются наверх с понятным сообщением.

Telegram state-machine — состояния диалога без внешнего хранилища

Маршрутизация message vs callback_query разнесена в корне: inline-кнопки не пересекаются с обычными сообщениями. На уровне воркфлоу есть отдельные состояния — «ждём email», «подтверждение отправки», «выбор типа выдачи» (preview / file / DOCX / email), очистка устаревших записей. Это снижает «залипание» сценариев в продакшене.

Каталог промптов с UI прямо в боте

Отдельная ветка воркфлоу реализует каталог промптов: пользователь видит меню → preview содержимого → выбирает способ доставки (как сообщение, как файл или на e-mail). Под капотом — self-fetch воркфлоу, благодаря которому наполнение каталога живёт в одном месте и не дублируется по другим веткам.

Self-diagnosis — observability без внешних дашбордов

Отдельная ветка валидации и notify-каскад с диагностическими отчётами в Telegram. Состояние пайплайна, статусы внешних API, последние ошибки и счётчики ретраев видны прямо в чате администратора — без поднятия отдельной Grafana и без внешних дашбордов. Минимально достаточная наблюдаемость для одного инженера сопровождения.

Что демонстрирует этот артефакт

Что это значит для заказчика
Уверенно проектирую и поддерживаю production-воркфлоу с интеграциями LLM, аудио-транскрипции, мессенджеров и почты, многоуровневой обработкой ошибок и состояниями диалогов. Не «знаком с n8n» по resume — а проектирую и эксплуатирую артефакт такого класса самостоятельно.

Такой контур масштабируется сменой промптов и подключением корпоративных политик хранения данных без переписывания «с нуля». Шлюз псевдонимизации перед облачной моделью — см. Pseudonymizer MVP — подключается отдельной нодой и закрывает требование ИБ на работу с PII и коммерческой тайной.

Похожая задача?

Нужен такой воркфлоу под ваши регламенты?

Спроектирую цепочку, состояния диалога, error-handling и мульти-LLM-схему с учётом ИБ и хранения персональных данных. Работаю с self-hosted n8n и его связкой с внешними и on-prem-моделями.