Цифровий співзасновник.
Мета: Створити інтелектуального AI-партнера для власника будівельно-девелоперської компанії. Система мала об'єднати офлайн-базу знань (Obsidian) з потужністю хмарного AI (OpenAI GPT-4o). Ключові вимоги:
- RAG (Retrieval-Augmented Generation): Відповіді мають базуватися виключно на внутрішніх регламентах та документах компанії.
- Двосторонній зв'язок: Агент повинен не тільки "читати" базу, але й "писати" в неї (створювати нові файли/регламенти за командою в Telegram).
- Економія ресурсів: Розумна індексація, щоб не перечитувати незмінені файли.
Мій Внесок / Рішення:
Рішення побудовано на базі Self-hosted n8n (Railway), векторної бази даних Supabase та хмарного сховища Google Drive. Архітектура складається з 3-х складних воркфлоу:
1. Воркфлоу "Розумний Індексатор" (ETL Pipeline):
Google Drive (Recursive Search): Реалізовано складний алгоритм пошуку файлів (.md, .txt, .pdf) по всьому диску з обходом вкладених папок та фільтрацією "чужих" файлів.
Incremental Sync (Економія коштів): Розроблено логіку порівняння метаданих. Воркфлоу порівнює файли з диска з таблицею file_tracker у Supabase (SQL). На обробку (Embedding) відправляються тільки нові або змінені файли. Це економить до 90% токенів OpenAI.
Vectorization: Текст розбивається на чанки, перетворюється на вектори (OpenAI Embeddings) і зберігається в Supabase.
2. Воркфлоу "Мозок" (Conversational AI Agent):
AI Agent (LangChain): Використовує модель GPT-4o з кастомним системним промптом "Цифрового Співзасновника".
Long-term Memory: Підключено Postgres Chat Memory (в Supabase), що дозволяє боту пам'ятати контекст діалогів безстроково.
Vector Store Tool: Реалізовано інструмент пошуку, який використовує кастомну SQL-функцію match_documents для знаходження найбільш релевантних відповідей у базі знань.
3. Воркфлоу "Руки" (File Generator Tool):
Автономне створення контенту: Агент може викликати цей саб-воркфлоу для створення нових документів.
Smart Parsing (JavaScript): Написано скрипт-санітайзер, який розбирає відповідь AI (навіть якщо вона приходить у нестандартному форматі) на filename та content.
Write-back: Файл завантажується на Google Drive, після чого автоматично синхронізується з локальним Obsidian замовника через Google Drive Desktop.
Результат:
Клієнт отримав повністю автономну систему управління знаннями:
"Жива" База: Будь-яка зміна в нотатці Obsidian автоматично потрапляє в "мозок" бота.
Стратегічний партнер: Власник може радитися з ботом щодо стратегії, і бот відповідає, спираючись на історію та контекст компанії, а не на загальні фрази.
Автоматизація рутини: Бот працює як секретар — створює чернетки договорів, ідей та планів прямо в робочу папку власника.
Надійність: Вирішено проблеми з тайм-аутами серверів та дублікатами даних за допомогою SQL-оптимізації та налаштувань Railway.
#n8n #OpenAI #RAG #Supabase #VectorDatabase #PostgreSQL #Obsidian #KnowledgeManagement #WorkflowAutomation #JavaScript #Railway #SelfHosted #GoogleDriveAPI #AIagent
- RAG (Retrieval-Augmented Generation): Відповіді мають базуватися виключно на внутрішніх регламентах та документах компанії.
- Двосторонній зв'язок: Агент повинен не тільки "читати" базу, але й "писати" в неї (створювати нові файли/регламенти за командою в Telegram).
- Економія ресурсів: Розумна індексація, щоб не перечитувати незмінені файли.
Мій Внесок / Рішення:
Рішення побудовано на базі Self-hosted n8n (Railway), векторної бази даних Supabase та хмарного сховища Google Drive. Архітектура складається з 3-х складних воркфлоу:
1. Воркфлоу "Розумний Індексатор" (ETL Pipeline):
Google Drive (Recursive Search): Реалізовано складний алгоритм пошуку файлів (.md, .txt, .pdf) по всьому диску з обходом вкладених папок та фільтрацією "чужих" файлів.
Incremental Sync (Економія коштів): Розроблено логіку порівняння метаданих. Воркфлоу порівнює файли з диска з таблицею file_tracker у Supabase (SQL). На обробку (Embedding) відправляються тільки нові або змінені файли. Це економить до 90% токенів OpenAI.
Vectorization: Текст розбивається на чанки, перетворюється на вектори (OpenAI Embeddings) і зберігається в Supabase.
2. Воркфлоу "Мозок" (Conversational AI Agent):
AI Agent (LangChain): Використовує модель GPT-4o з кастомним системним промптом "Цифрового Співзасновника".
Long-term Memory: Підключено Postgres Chat Memory (в Supabase), що дозволяє боту пам'ятати контекст діалогів безстроково.
Vector Store Tool: Реалізовано інструмент пошуку, який використовує кастомну SQL-функцію match_documents для знаходження найбільш релевантних відповідей у базі знань.
3. Воркфлоу "Руки" (File Generator Tool):
Автономне створення контенту: Агент може викликати цей саб-воркфлоу для створення нових документів.
Smart Parsing (JavaScript): Написано скрипт-санітайзер, який розбирає відповідь AI (навіть якщо вона приходить у нестандартному форматі) на filename та content.
Write-back: Файл завантажується на Google Drive, після чого автоматично синхронізується з локальним Obsidian замовника через Google Drive Desktop.
Результат:
Клієнт отримав повністю автономну систему управління знаннями:
"Жива" База: Будь-яка зміна в нотатці Obsidian автоматично потрапляє в "мозок" бота.
Стратегічний партнер: Власник може радитися з ботом щодо стратегії, і бот відповідає, спираючись на історію та контекст компанії, а не на загальні фрази.
Автоматизація рутини: Бот працює як секретар — створює чернетки договорів, ідей та планів прямо в робочу папку власника.
Надійність: Вирішено проблеми з тайм-аутами серверів та дублікатами даних за допомогою SQL-оптимізації та налаштувань Railway.
#n8n #OpenAI #RAG #Supabase #VectorDatabase #PostgreSQL #Obsidian #KnowledgeManagement #WorkflowAutomation #JavaScript #Railway #SelfHosted #GoogleDriveAPI #AIagent