
Як створювати AI-воркфлоу за допомогою n8n та LangChain
n8n і LangChain разом вирішують проблему, з якою рано чи пізно стикається більшість команд: ви хочете мати AI-агентів, які підключаються до реальних даних і запускають реальні дії, але інтеграція LangChain у Python означає необхідність підтримки цілого стека додатків. Нативні вузли LangChain у n8n дозволяють перетягувати агентів, ланцюжки, пам’ять і векторні сховища у візуальні воркфлоу, а потім підключати їх до понад 400 інтеграцій без написання коду SDK.
Що ви отримуєте: бібліотека вузлів LangChain у n8n
n8n постачається з понад 70 AI-вузлами, які реалізують концепції LangChain як візуальні будівельні блоки. Замість того щоб імпортувати langchain у Python і склеювати модулі разом, ви просто з’єднуєте вузли на полотні. Ось повний огляд:
| Категорія вузлів | Що робить | Ключові вузли |
|---|---|---|
| Кореневі вузли | Основна логіка AI («мозок») | AI Agent, Basic LLM Chain, Q&A Chain, Summarization Chain |
| Чат-моделі | Підключення до LLM | OpenAI, Anthropic Claude, Google Gemini, Ollama, Groq, Mistral, DeepSeek |
| Пам’ять | Збереження контексту розмови | Simple Memory, Redis, Postgres, MongoDB, Zep |
| Векторні сховища | Зберігання та пошук документів | Pinecone, Qdrant, Supabase, Chroma, Weaviate, PGVector, In-Memory |
| Ембедінги | Перетворення тексту у вектори | OpenAI, Cohere, HuggingFace, Ollama, AWS Bedrock |
| Інструменти | Зовнішні можливості для агентів | Calculator, SerpAPI, Wikipedia, Custom Code, MCP Client, Workflow Tool |
| Парсери виводу | Форматування структурованих відповідей | Auto-fixing, Structured, Item List |
| Розділювачі тексту | Розбиття документів на частини | Character, Recursive Character, Token |
Архітектура використовує те, що n8n називає кластерними вузлами: кореневий вузол (наприклад, AI Agent) підключається до підвузлів (чат-модель, пам’ять, інструменти), які розширюють його можливості. Уявіть це як модульну систему LangChain, але у візуальному форматі.
Як n8n співвідноситься з концепціями LangChain
Якщо ви вже використовували LangChain у коді, маппінг у n8n буде зрозумілим:
| Концепція LangChain | Еквівалент у n8n | Коли використовувати |
|---|---|---|
ChatOpenAI() | Підвузол OpenAI Chat Model | Будь-який воркфлоу, що потребує LLM |
ConversationBufferMemory() | Simple Memory / Redis Memory | Багатокрокові розмови |
RetrievalQA.from_chain_type() | Q&A Chain + Vector Store Retriever | Відповіді на запитання щодо документів |
AgentExecutor з інструментами | Вузол AI Agent (тип Tools Agent) | Динамічний вибір інструментів |
RecursiveCharacterTextSplitter() | Підвузол Recursive Character Text Splitter | Розбиття документів для RAG |
FAISS.from_documents() | Simple Vector Store (Insert Documents) | Локальне зберігання ембедінгів |
Критична відмінність? У коді вам потрібно написати 50–100 рядків, щоб з’єднати ці компоненти. У n8n ви підключаєте 4–6 вузлів на полотні та налаштовуєте їх через випадаючі меню.
Побудова конвеєра запитань і відповідей на основі документів (RAG)
Давайте створимо щось реальне. Цей воркфлоу імпортує PDF-документи, зберігає їх у векторній базі даних і відповідає на запитання щодо їхнього вмісту. Це класичний шаблон RAG (Retrieval-Augmented Generation), найкорисніший воркфлоу LangChain для бізнес-команд.
Крок 1: Налаштування воркфлоу імпорту даних
Створіть новий воркфлоу для завантаження документів. Ви запускатимете його щоразу, коли у вас з’являться нові документи для додавання.
Вузли для додавання:
- Manual Trigger, Натисніть, щоб запустити імпорт
- Google Drive node (або HTTP Request, Read Binary File), Отримує ваші вихідні документи
- Simple Vector Store, Встановіть операцію Insert Documents
- Підвузол OpenAI Embeddings, Підключається до векторного сховища, перетворює текст у вектори
- Підвузол Default Data Loader, Автоматично аналізує вміст документів на частини
- Підвузол Recursive Character Text Splitter, Розбиває вміст на частини приблизно по 500 токенів зі зміщенням у 50 токенів
Деталі конфігурації для векторного сховища:
- Операція:
Insert Documents - Ключ пам’яті: Дайте йому описове ім’я, наприклад
company-docs(так ви будете посилатися на нього пізніше) - Data Loader підключається як підвузол і автоматично обробляє парсинг PDF/тексту
Конфігурація для розділювача тексту:
- Розмір частини: 500 (токенів)
- Зміщення частин: 50 (гарантує, що контекст не втрачається на межах)
- Метод розбиття: Recursive Character (розумно обробляє Markdown, HTML та звичайний текст)
Крок 2: Побудова воркфлоу агента запитань і відповідей
Тепер створіть другий воркфлоу, саме з ним взаємодіятимуть користувачі.
Вузли для додавання:
- Chat Trigger, Забезпечує інтерфейс чату для запитань
- AI Agent (тип Tools Agent), «Мозок», який вирішує, що робити
- Підвузол OpenAI Chat Model, Підключіть GPT-4o або GPT-4o-mini
- Підвузол Simple Memory, Запам’ятовує контекст розмови
- Підвузол Vector Store Tool, Надає агенту доступ до ваших документів
Конфігурація для вузла AI Agent:
- Тип агента: Tools Agent (найгнучкіший варіант, він сам вирішує, коли і як використовувати інструменти)
- Системний промпт:
Ви — корисний помічник, який відповідає на запитання на основі документів нашої компанії. Завжди вказуйте, з якого документу ви взяли відповідь. Якщо інформації немає в документах, чітко повідомте про це.
Конфігурація для Vector Store Tool:
- Назва:
search_documents - Опис:
Шукати релевантну інформацію в базі знань компанії. Використовуйте цей інструмент, коли користувач запитує про політики компанії, процедури або документацію. - Векторне сховище: Виберіть ваше Simple Vector Store
- Модель ембедінгів: Та сама модель OpenAI Embeddings, яку ви використовували під час імпорту
- Top K: 4 (кількість релевантних частин для отримання)
Цей опис важливіший, ніж може здатися. Агент використовує його, щоб вирішити, коли викликати інструмент, а коли відповідати, спираючись на власні знання. Будьте конкретними.
Крок 3: Тестування та вдосконалення
Натисніть Chat у нижній панелі, щоб відкрити вбудований інтерфейс чату n8n. Задайте запитання щодо ваших документів. Спостерігайте за трасуванням виконання: n8n показує, які саме вузли спрацювали, яке було міркування агента та які частини документів були отримані.
Поширені проблеми на цьому етапі:
- Агент не використовує інструмент: Ваш опис інструменту надто загальний. Зробіть його більш конкретним щодо того, які знання містить інструмент.
- Отримання нерелевантних частин: Збільште зміщення частин або зменште розмір частини. Спробуйте 300 токенів зі зміщенням 100.
- Повільні відповіді: Переключіться на GPT-4o-mini для чат-моделі. Це в 10 разів дешевше і достатньо швидко для більшості завдань запитань і відповідей.
Побудова агента з викликом інструментів
Наведений вище конвеєр запитань і відповідей чудово підходить для документів. Але що робити, якщо потрібен агент, який може шукати в інтернеті, виконувати обчислення, робити запити до баз даних І відповідати на основі документів? Саме тут справді сяє Tools Agent.
Налаштування воркфлоу
- Chat Trigger, Вхідні дані від користувача
- AI Agent (Tools Agent), Маршрутизація до потрібного інструменту
- OpenAI Chat Model, GPT-4o для складних міркувань
- Simple Memory, Історія розмови
- Підключено кілька інструментів:
- SerpAPI Tool, Можливість пошуку в веб-мережі
- Calculator Tool, Математичні операції
- Vector Store Tool, Ваша база знань із документів
- Custom Code Tool, Будь-яка функція JavaScript, яку ви напишете
- Workflow Tool, Запускає інший воркфлоу n8n як інструмент
Workflow Tool — це секретна зброя n8n. Вона дозволяє обернути будь-який воркфлоу n8n в інструмент, який може викликати агент. Маєте воркфлоу, який перевіряє наявність товарів? Зробіть його інструментом. Той, що надсилає повідомлення в Slack? Інструмент. Той, що робить запити до вашої CRM? Інструмент. Саме так понад 400 вузлів інтеграції n8n стають доступними для вашого AI-агента.
Системний промпт для мультиінструментальних агентів
Ваш системний промпт має повідомляти агенту про його можливості:
You are a research assistant with access to the following tools:
- search_documents: Search our internal knowledge base
- web_search: Search the internet for current information
- calculator: Perform mathematical calculations
- send_notification: Send a Slack message to the team
For factual questions about our company, always check search_documents first.
For current events or external data, use web_search.
Show your reasoning before giving a final answer.Цей шаблон промпту безпосередньо контролює, як агент маршрутизує запити між інструментами. Нечіткі промпти призводять до того, що агенти використовують веб-пошук, коли спершу слід перевірити ваші документи.
Вибір правильного типу агента
n8n пропонує шість типів агентів. Ось коли варто обирати кожен із них:
| Тип агента | Найкраще для | Підтримує інструменти? | Примітки |
|---|---|---|---|
| Tools Agent | Більшість випадків використання | Так | Вибір за замовчуванням, гнучкий, надійний |
| Conversational Agent | Прості чат-боти | Так | Менш потужний, але легший |
| ReAct Agent | Складні ланцюжки міркувань | Так | Показує явні кроки міркування |
| OpenAI Functions Agent | Функції, специфічні для OpenAI | Так | Використовує API виклику функцій OpenAI |
| Plan and Execute Agent | Багатокрокові завдання | Так | Спочатку планує, потім виконує; добре для складних воркфлоу |
| SQL Agent | Запити до бази даних | Обмежено | Генерує та виконує SQL-запити до вашої бази даних |
Для більшості команд Tools Agent є правильною відправною точкою. Він добре обробляє маршрутизацію між кількома інструментами, працює з будь-яким постачальником LLM, і ви завжди можете змінити його пізніше. Якщо порівнювати це з побудовою агентів у коді за допомогою фреймворків на кшталт LangGraph або CrewAI, перевага тут полягає у відсутності накладних витрат на розгортання: ваш агент працює всередині інфраструктури n8n.
Додавання постійної пам’яті
За замовчуванням підвузол Simple Memory зберігає історію розмов у пам’яті, яка зникає після перезапуску воркфлоу. Для продакшену вам знадобиться постійна пам’ять.
Ваші варіанти:
| Тип пам’яті | Постійність | Складність налаштування | Найкраще для |
|---|---|---|---|
| Simple Memory | Лише сесія | Відсутня | Тестування, прототипування |
| Redis Chat Memory | Постійна, швидка | Середня (потрібен Redis) | Продакшен чат-боти |
| Postgres Chat Memory | Постійна, доступна для запитів | Середня (потрібен Postgres) | Коли потрібно аналізувати розмови |
| MongoDB Chat Memory | Постійна, гнучка | Середня (потрібен MongoDB) | Документо-орієнтоване зберігання |
| Zep Memory | Постійна + підсумовування | Середня (потрібен Zep) | Довгі розмови, що перевищують вікно контексту |
Zep варто виділити, якщо ви будуєте щось із довгою історією розмов. Він автоматично підсумовує старі повідомлення, щоб ваш агент не витрачав увесь контекст уже на 50-му кроці розмови.
Щоб додати постійну пам’ять, просто замініть підвузол Simple Memory на Redis/Postgres/Zep. Решта вашого воркфлоу залишається незмінною.
Підключення до різних постачальників LLM
Кожен кореневий вузол, якому потрібен LLM, приймає підвузол Chat Model. Зміна постачальника — це зміна одного вузла:
| Постачальник | Назва вузла | Доступні моделі | Примітки |
|---|---|---|---|
| OpenAI | OpenAI Chat Model | GPT-4o, GPT-4o-mini, o1, o3-mini | Найбільш тестований з n8n |
| Anthropic | Anthropic Chat Model | Claude 3.5 Sonnet, Claude 3 Opus | Сильний для аналізу та довгого контексту |
| Google Gemini Chat Model | Gemini 1.5 Pro, Gemini Flash | Хороший безкоштовний тариф | |
| Ollama | Ollama Chat Model | Llama 3, Mistral, Phi-3 | Повністю локально, без витрат на API |
| Groq | Groq Chat Model | Llama 3, Mixtral | Надзвичайно швидкий інференс |
| AWS Bedrock | AWS Bedrock Chat Model | Claude, Titan, Llama | Корпоративна інтеграція AWS |
Для локальної розробки та тестування Ollama є варіантом із нульовими витратами: запустіть моделі на своїй машині та підключіть n8n до localhost:11434. Для продакшену більшість команд використовують OpenAI або Anthropic залежно від завдання.
Реальні рецепти воркфлоу
Ось три готові до використання шаблони, які можна побудувати менш ніж за 30 хвилин:
Рецепт 1: Автоматична класифікація тікетів підтримки
Тригер: Надходить новий електронний лист (вузол Gmail/Outlook) Ланцюжок: Basic LLM Chain із промптом класифікації Вивід: Маршрутизація до різних каналів Slack залежно від категорії
Промпт виконує основну роботу: Класифікуйте цей лист підтримки точно в одну категорію: billing, technical, feature_request або other. Відповідайте лише назвою категорії.
Рецепт 2: Щотижневий дайджест контенту
Тригер: Розклад (щопонеділка о 9:00) Агент: Tools Agent із SerpAPI + Custom Code Tool Пам’ять: Не потрібна (одноразове завдання) Вивід: Підсумкований звіт, надісланий у Slack/Email
Агент шукає новини галузі, підсумовує топ-5 статей і формує дайджест. Custom Code Tool обробляє будь-яку логіку форматування, яку простіше реалізувати в JavaScript, ніж у промпті.
Рецепт 3: Бот для Slack на основі документів
Тригер: Повідомлення в Slack у певному каналі Агент: Tools Agent із Vector Store Tool Пам’ять: Redis Chat Memory (з ключем за ID гілки Slack) Вивід: Відповідь у гілку Slack
Це той самий конвеєр запитань і відповідей, що й раніше, але запускається через Slack замість інтерфейсу чату. Ключ пам’яті на основі гілок означає, що кожна розмова в Slack має свій власний контекст.
Для команд, які досліджують, які інструменти RAG використовувати разом із n8n, вибір векторного сховища має менше значення, ніж стратегія розбиття на частини. Почніть із Simple (In-Memory) Vector Store для прототипування, а потім перейдіть на Pinecone або Qdrant для продакшену.
Поширені помилки та способи їх уникнення
Після створення десятків AI-воркфлоу в n8n, ось пастки, в які потрапляють люди:
1. Пропуск системного промпту. Вузол AI Agent працює без системного промпту, але погано. Завжди визначайте роль агента, доступні інструменти та бажану поведінку. Десять хвилин на промпт економлять години налагодження дивних відповідей.
2. Використання одного величезного воркфлоу. Розділіть імпорт і запити на окремі воркфлоу. Воркфлоу імпорту запускається періодично (коли з’являються нові документи). Воркфлоу запитів працює постійно. Їхнє змішування створює конфлікти виконання.
3. Вибір неправильного розміру частини. Розбиття за замовчуванням (1000 символів) підходить для загального контенту. Для технічної документації зменште до 300–500 токенів. Для юридичних документів збільште до 800–1000 токенів із більшим зміщенням. Не існує універсального «правильного» розміру частини, тестуйте на своїх реальних документах.
4. Ігнорування журналу виконання. n8n показує повний журнал виконання для кожного запуску воркфлоу. Коли агент дає неправильну відповідь, перевірте, який інструмент він викликав (або не викликав), які частини були отримані та яке міркування він продемонстрував. Журнал точно показує, де щось пішло не так.
5. Оплата GPT-4o, коли це не потрібно. Для класифікації, підсумовування та простих запитань і відповідей GPT-4o-mini на 90% такий же хороший, але коштує в 10 разів менше. Залиште GPT-4o або Claude для складних багатокрокових міркувань.
Як Techsy підходить до AI-автоматизації в n8n
Ми створювали AI-воркфлоу в n8n для клієнтів — від стартапів із 3 осіб до корпоративних команд. Наш процес:
- Картування потоку рішень, Перед відкриттям n8n ми діаграмуємо кожну точку прийняття рішення та джерело даних
- Прототипування з Simple Vector Store, Отримуємо робочу основну логіку зі зберіганням у пам’яті
- Раннє тестування на реальних даних, Синтетичні тестові дані приховують проблеми з розбиттям і пошуком
- Додавання пам’яті та постійності, Тільки після валідації основної логіки запитань і відповідей або агента
- Моніторинг та ітерації, Відстежуємо, які виклики інструментів успішні, які частини отримуються та де користувачі стикаються з труднощами
Якщо ви будуєте AI-агентів для бізнес-процесів і хочете допомогти з проектуванням архітектури, зверніться за безкоштовною консультацією.
Часті запитання
Чи потрібно знати LangChain, щоб використовувати AI-вузли n8n?
Ні. n8n абстрагує LangChain у візуальні вузли з налаштуваннями через випадаючі списки. Розуміння концепцій LangChain (агенти, ланцюжки, пам’ять, ретривери) допомагає приймати кращі проектні рішення, але вам ніколи не доведеться писати код LangChain, якщо ви не вирішите використовувати вузол LangChain Code.
Чи можна використовувати локальні LLM з n8n замість OpenAI?
Так. Підключіть підвузол Ollama Chat Model до будь-якої моделі, що працює на вашій машині (Llama 3, Mistral, Phi-3 тощо). Вкажіть адресу http://localhost:11434, і ви отримаєте повністю приватний AI-воркфлоу з нульовими витратами. Groq — ще один варіант для швидкого інференсу без управління власним обладнанням.
У чому різниця між ланцюжком (Chain) і агентом (Agent) у n8n?
Ланцюжок дотримується фіксованої послідовності: вхідні дані проходять через крок A, потім B, потім C. Агент динамічно вирішує, які інструменти викликати, залежно від вхідних даних. Використовуйте ланцюжки для передбачуваних завдань (підсумовування, класифікація). Використовуйте агентів, коли воркфлоу має приймати рішення про те, що робити далі.
Скільки документів може обробляти Simple Vector Store?
Simple (In-Memory) Vector Store добре працює для прототипування з кількома сотнями документів. Для продакшену з тисячами документів перейдіть на Pinecone, Qdrant, Supabase або Chroma. Воркфлоу залишається тим самим, ви просто замінюєте вузол векторного сховища.
Чи можна запускати AI-воркфлоу n8n із зовнішніх додатків?
Так. Використовуйте вузол Webhook Trigger, щоб зробити ваш AI-воркфлоу доступним як API-ендпоінт. Будь-який додаток, який може робити HTTP-запити, може надсилати дані вашому агенту та отримувати відповідь. Саме так ви інтегруєте AI-воркфлоу n8n у наявні продукти.
Чи є n8n безкоштовним для AI-воркфлоу?
n8n Community Edition має повністю відкритий код і безкоштовний для самостійного хостингу. Усі вузли LangChain включені. Хмарні плани починаються від $24/місяць, якщо ви не хочете керувати інфраструктурою. Витрати на API LLM (OpenAI, Anthropic тощо) є окремими та оплачуються постачальнику.
Як n8n обробляє помилки у воркфлоу AI-агентів?
n8n має вбудовану обробку помилок на рівні вузлів. Ви можете налаштувати логіку повторних спроб, шляхи відновлення та воркфлоу обробки помилок. Для проблем, специфічних для AI (наприклад, таймаути LLM або обмеження швидкості), додайте повторну спробу з експоненціальним відступом на підвузол Chat Model. Журнал виконання показує, де саме сталися збої.
Чи можна використовувати AI-воркфлоу n8n зі своїми API-ключами?
Так. Кожен вузол LLM вимагає створення облікових даних із вашим власним API-ключем. n8n зберігає облікові дані в зашифрованому вигляді. Якщо ви використовуєте самостійний хостинг, ключі ніколи не покидають вашу інфраструктуру.
Для чого потрібен вузол LangChain Code?
Вузол LangChain Code дозволяє писати власний JavaScript, який безпосередньо використовує модулі LangChain. Це «аварійний вихід» для випадків, коли візуальні вузли n8n не покривають ваш конкретний випадок використання: можливо, вам потрібен власний ретривер, специфічний шаблон промпту або модуль LangChain, який n8n ще не обернув.
Як ділитися AI-воркфлоу n8n зі своєю командою?
Експортуйте воркфлоу у форматі JSON (Ctrl+Shift+E) і поділіться файлом. Будь-хто може імпортувати його у свій екземпляр n8n. Для командної співпраці n8n Cloud включає спільні робочі простори з історією версій. Ви також можете фіксувати JSON-файли воркфлоу в Git для контролю версій.