Prod-RAG: Корпоративная база знаний с ИИ-ассистентом

🛠 n8n + Supabase 🧠 GigaChat API 🔒 Self-hosted ⏱ ~3 дня

🎯 Бизнес-проблема

Команда продаж тратила 30–40 минут в день на поиск информации в разрозненных источниках (Google Docs, Notion, PDF). Онбординг нового менеджера занимал до 2 недель.

✅ Цель решения

Собрать production-ready RAG-конвейер, который:

⚙️ Архитектура

[Документы] → n8n (loader) → Text Splitter (1000/200) → HuggingFace Embeddings (384 dim) → Supabase + pgvector (upsert) → n8n (retrieval) → GigaChat → Ответ + источник

Инфраструктура: VPS 7 ГБ RAM, Docker + Dokploy, домен supabase.eduardwit.ru с авто-SSL, пересозданные JWT-ключи.

📸 Как это выглядит в production

Реальные скриншоты работающей системы — без мокапов и постановочных кадров:

RAG-воркфлоу в n8n
🛠 Воркфлоу в n8n

Полная цепочка: Telegram-триггер → классификатор тем → Supabase Vector Store → GigaChat-агент → логирование в NocoDB. Active 🔘 — работает 24/7.

Диалог с ИИ-ассистентом в Telegram
💬 Диалог с ИИ-ассистентом

Бот отвечает на вопросы по базе знаний, указывает источник в конце ответа и корректно обрабатывает вопросы вне темы («В базе нет данных»).

Таблица documents в Supabase
🗄 База знаний в Supabase

10 чанков по 5 темам: automation, project, consultation, sales, faq. Векторные эмбеддинги (384 dim) + метаданные для фильтрации.

Логирование в NocoDB
📊 Аналитика в NocoDB

Таблица rag_logs: вопрос, определённая тема, ответ ИИ, источники, latency (мс), статус (success / no_data / error). Полная прозрачность и отладка.

💡 Кликните на изображение, чтобы открыть в полном размере

🤖 Попробовать в действии

Напишите ИИ-ассистенту в Telegram — он ответит на вопросы по базе знаний, укажет источник и не будет «галлюцинировать».

Примеры вопросов, которые стоит задать:

  • 💰 «Сколько стоит Telegram-бот с AI-классификацией?»
  • 🌐 «Какая цена лендинга под ключ?»
  • 🎓 «Проводите ли обучение по n8n?»
  • 🎁 «Какие есть скидки?»
  • 📞 «Как с вами связаться?»
✈️ Открыть @EduardWIT_assistent_bot

🗂 5 тематических маршрутов

База знаний разделена на 5 изолированных разделов. Классификатор определяет тему по ключевым словам и фильтрует поиск в Supabase через metadata->>'topic':

🤖 automation

n8n, RAG-системы, Telegram-боты, AI-классификация, интеграции с API

🌐 project

Вёрстка, лендинги, многостраничные сайты, React/Angular, поддержка legacy

💡 consultation

Технический аудит, консультации, архитектурные сессии, обучение, менторство

💰 sales

Цены, скидки, условия оплаты, договор, гарантии, SLA, интеллектуальная собственность

❓ faq

Общие вопросы: контакты, договор, технологии, Tilda/Glide, иностранные заказчики

📊 Результат

−70%
Время онбординга
−85%
Поиск информации
~40 ч/мес
Экономия на команду
2.1 сек
Среднее время ответа

При стоимости часа менеджера 800 ₽ экономия только на поиске = ~32 000 ₽/мес на команду из 7 человек.

🛡 Production-ready фичи

То, что отличает демо от реальной системы, готовой к нагрузке и сбоям:

🎯 Тематическая маршрутизация

Классификатор определяет тему вопроса (automation, project, consultation, sales, faq) и фильтрует поиск в Supabase через metadata->>'topic'.

📊 Логирование в NocoDB

Таблица rag_logs: вопрос, определённая тема, ответ ИИ, источники, latency, статус (success / no_data / error). Полная аналитика и отладка.

🔄 Retry + Fallback

GigaChat перезапрашивается до 2 раз с задержкой 3 сек при timeout. При полном падении — fallback-ответ «Техническая заминка, передаю специалисту».

🔐 Self-hosted инфраструктура

Supabase + n8n + NocoDB в Dokploy. Данные заказчика не покидают периметр, все API-ключи и JWT под полным контролем.

📈 Production-метрики (из реальных логов)

~2.1 сек
End-to-end latency
85%
Релевантность top-3
100%
Ответов с источником
0%
Галлюцинаций

Жёсткий системный промпт («отвечай строго по контексту, указывай источник») + порог схожести minScore: 0.5 полностью исключают выдуманные факты.

💡 Ценность для бизнеса

🌍 Где ещё работает