aigenthubTelegram

ИИ-агент в n8n: пошаговая инструкция с примером

Как собрать ИИ-агента в n8n: узлы AI Agent, Chat Model, Simple Memory и Tools, подключение Ollama или OpenRouter и пример Telegram-бота, который отвечает по базе знаний.

АК Алексей КальсинОбновлено 12 мин чтения
Содержание
  1. Что такое ИИ-агент в n8n
  2. Из чего собирается агент
  3. Какую модель подключить
  4. Пример: Telegram-бот, который отвечает по базе знаний
  5. Частые ошибки
  6. Что улучшить дальше
  7. Частые вопросы

ИИ-агент в n8n собирается из четырёх частей: узла AI Agent, подключённой к нему языковой модели (Chat Model), памяти (Simple Memory) и хотя бы одного инструмента (Tool). Всё это — обычные узлы на холсте: никакого кода писать не нужно. Ниже — пошаговая инструкция на практическом примере: Telegram-бот, который принимает вопрос, ищет ответ в вашей базе знаний и отвечает в чат. Названия узлов и параметров сверены с документацией docs.n8n.io на октябрь 2026 года. Если n8n у вас ещё не установлен, начните со статьи «Установка n8n: локально, на сервере, в Docker», а общее знакомство с платформой — в материале «n8n: что это и как начать».

Коротко. Схема: Telegram Trigger принимает сообщение → AI Agent думает, при необходимости обращается к инструменту (поиск по базе знаний) и помнит диалог через Simple Memory → узел Telegram (операция Send Message) отправляет ответ. Модель подойдёт любая из поддерживаемых: в n8n есть узлы Ollama Chat Model (локальная модель) и OpenRouter Chat Model. OpenAI и Anthropic из России официально не работают, поэтому для российского пользователя практичнее локальная Ollama или агрегатор. Главное правило документации: к AI Agent нужно подключить минимум один инструмент.

Что такое ИИ-агент в n8n

В n8n «агент» — это узел AI Agent. Обычный сценарий n8n выполняет шаги строго по порядку: вы сами решаете, что за чем идёт. Агент устроен иначе: вы описываете ему задачу и даёте набор инструментов, а он сам решает, какой инструмент вызвать и сколько раз, пока не получит ответ. Как формулирует документация, агент определяет, какие у него есть возможности, и выбирает подходящие инструменты под задачу.

Важная деталь про версии. Раньше у узла был выбор типа агента (Conversational Agent, ReAct Agent и другие). По документации n8n, настройка типа агента устарела начиная с версии 1.82.0: теперь все узлы AI Agent работают как Tools Agent — этот режим и раньше был рекомендованным и самым популярным. Старая версия узла с выбором типа будет удалена в n8n 3.0. Если вы найдёте в интернете инструкцию с выбором типа агента — она устарела, ищите узел последней версии.

Из чего собирается агент

ЧастьУзел в n8nЗачем нужнаОбязательна
МозгChat Model (например, Ollama Chat Model, OpenRouter Chat Model)Языковая модель, которая понимает вопрос и формулирует ответДа
ПамятьSimple MemoryХранит последние реплики диалога, чтобы агент не «забывал» контекстНет, но для чата нужна
РукиTools (инструменты)Действия: поиск по базе, вызов другого сценария, запрос к сервисуДа, минимум один
ЯдроAI AgentУправляет моделью и инструментами, принимает решенияДа

К корневому узлу AI Agent модель, память и инструменты подключаются как «подузлы» (sub-nodes) — они цепляются к нижним входам узла. У подузлов есть особенность из документации: выражения в них всегда берут первый элемент входных данных, а не обрабатывают элементы по очереди, как обычные узлы.

Какую модель подключить

AI Agent работает с чат-моделями разных провайдеров: в документации по Tools Agent перечислены OpenAI, Groq, Mistral Cloud, Anthropic и Azure AI Foundry. Но для читателя из России выбор определяется доступностью:

  • Ollama Chat Model — локальная модель на вашем компьютере или сервере. В узле есть настройки Model, Sampling Temperature, Top K и Top P, а подключение задаётся через учётные данные Ollama: Base URL (по умолчанию http://localhost:11434) и необязательный API Key. Данные не покидают ваш сервер, платить за токены не нужно. Как поставить Ollama и выбрать модель — в статье «Ollama: установка и первые шаги». Модель должна уметь вызывать инструменты (tool calling), иначе агент не сможет ими пользоваться — проверяйте это в описании модели.
  • OpenRouter Chat Model — узел для моделей, доступных через сервис OpenRouter. В учётных данных нужен только API Key, который создаётся в личном кабинете openrouter.ai в разделе API keys. Список моделей в узле подгружается из вашего аккаунта.
  • OpenAI, Anthropic и другие облачные — узлы есть, но эти компании официально не работают в России, поэтому рассчитывать на них как на основной вариант не стоит. Как решают вопрос оплаты зарубежных сервисов — в отдельном материале «Как оплатить Claude и ChatGPT из России».

Для обучения проще всего Ollama: ничего не стоит, и вы сразу видите, как агент «думает». Если n8n и Ollama запущены в разных контейнерах Docker на одной машине, подключение может не сработать с адресом по умолчанию — документация советует подобрать адрес, доступный между контейнерами (через переменные OLLAMA_HOST и OLLAMA_ORIGINS), а при проблемах с localhost попробовать 127.0.0.1.

Пример: Telegram-бот, который отвечает по базе знаний

Задача: пользователь пишет боту вопрос («Какой у вас график работы?», «Как оформить возврат?»), бот находит ответ в загруженных документах компании и отвечает. Это классический первый агент для малого бизнеса — подробнее о самой идее в статье «ИИ-агент для базы знаний компании». Собираем из шести узлов.

Шаг 1. Создайте бота в Telegram

  1. Откройте в Telegram бота BotFather и отправьте команду /newbot.
  2. Укажите отображаемое имя и username: 5–32 символа, латинские буквы, цифры и подчёркивания, обязательно заканчивается на bot.
  3. Скопируйте выданный токен — он понадобится в n8n как Access Token.

Шаг 2. Добавьте Telegram Trigger

Создайте новый workflow и добавьте узел Telegram Trigger. В поле учётных данных создайте Telegram credential и вставьте Access Token. В параметре с событиями оставьте Message — тогда сценарий запускается только на сообщения, а не на все обновления (значение «All updates» по умолчанию шумнее). В опциях есть Restrict to Chat IDs и Restrict to User IDs — удобно, чтобы на время тестов бот отвечал только вам. Telegram доставляет события на адрес вашего n8n, поэтому инстанс должен быть доступен из интернета — для локального запуска это отдельная задача, а на VPS с доменом и HTTPS проблем нет (см. статью про установку).

Шаг 3. Добавьте узел AI Agent

Подключите к выходу триггера узел AI Agent. В параметре с промптом есть два варианта: Take from previous node automatically (ждёт поле chatInput, оно появляется у Chat Trigger, а у Telegram — нет) и Define below. Для Telegram выберите Define below и в поле Prompt (User Message) вставьте выражение с текстом сообщения:

{{ $json.message.text }}

Затем откройте Options → System Message — это текст, который отправляется модели до начала разговора и задаёт поведение агента. Пример для бота поддержки:

Ты помощник компании. Отвечай на вопросы клиентов вежливо и кратко, на русском языке.
Всегда сначала ищи ответ в базе знаний с помощью инструмента.
Если в базе нет ответа, честно скажи об этом и предложи написать менеджеру. Ничего не выдумывай.

Последняя строка — самая важная: без неё агент охотно «досочинит» ответ, которого нет в документах. Там же в опциях есть Max Iterations (по умолчанию 10 попыток получить ответ) — ограничитель, чтобы агент не зациклился, и переключатель Return Intermediate Steps: включите его на время отладки, чтобы видеть, какие инструменты агент вызывал.

Шаг 4. Подключите Chat Model

Под узлом AI Agent нажмите «+» у входа Chat Model и выберите Ollama Chat Model (или OpenRouter Chat Model). Создайте учётные данные, выберите модель из списка. Для ответов по базе знаний температуру (Sampling Temperature) лучше поставить низкой: чем она выше, тем разнообразнее и склоннее к выдумкам ответы.

Шаг 5. Подключите Simple Memory

Нажмите «+» у входа Memory и выберите Simple Memory (внутри — буфер скользящего окна на LangChain). Два параметра:

  • Session Key — идентификатор диалога. Чтобы у каждого человека была своя история, подставьте идентификатор чата Telegram: {{ $('Telegram Trigger').item.json.message.chat.id }}. Если оставить значение по умолчанию, все пользователи окажутся в одной общей беседе, и агент начнёт путать их вопросы.
  • Context Window Length — сколько последних реплик учитывать. Для бота поддержки хватит 5–10.

Ограничение из документации: если ваш n8n работает в режиме очередей (queue mode), этот узел не работает в активном рабочем сценарии, потому что запросы не гарантированно попадают на один и тот же воркер. Для обычной установки на один сервер это не проблема.

Шаг 6. Подключите инструмент поиска по базе знаний

Документация требует: к AI Agent нужно подключить хотя бы один инструмент. Для поиска по документам подойдёт Simple Vector Store в режиме Retrieve Documents (As Tool for AI Agent). Что настроить:

  1. Name и Description — для режима инструмента они обязательны. Описание читает сам агент, чтобы понять, когда обращаться к инструменту. Пишите конкретно: «База знаний компании: график работы, цены, условия возврата и доставки». В имени допустимы только латинские буквы и цифры, пробелы, дефисы и подчёркивания — специальные символы приводят к ошибке во время работы агента.
  2. Memory Key — название хранилища, например company-kb.
  3. Limit — сколько фрагментов возвращать на запрос (3–5 достаточно).
  4. К хранилищу подключите модель для эмбеддингов, например Embeddings Ollama с моделью nomic-embed-text (768 измерений) или all-minilm (384 измерения).

Само хранилище нужно один раз наполнить. Для этого создайте отдельный небольшой сценарий с тем же Simple Vector Store в режиме Insert Documents с тем же Memory Key и теми же эмбеддингами: он берёт ваши тексты (файл, таблицу, страницу сайта) и сохраняет их в хранилище. Параметр Clear Store по умолчанию включён и очищает хранилище перед записью — учтите это при повторной загрузке.

Два предупреждения из документации, которые важны для реального бота. Во-первых, данные Simple Vector Store хранятся в памяти n8n и пропадают при перезапуске; n8n рекомендует этот узел только для разработки, а для рабочих сценариев — постоянные векторные базы, например Pinecone. Если данные не должны уходить во внешний сервис, в n8n есть узлы и для баз, которые ставятся на свой сервер: Qdrant и PostgreSQL с расширением PGVector. Во-вторых, ключи памяти доступны всем пользователям инстанса независимо от прав на workflow — не кладите туда конфиденциальное. Как устроен поиск по документам и когда он нужен, объясняет статья про RAG для ИИ-агента.

Если базу знаний удобнее вести как отдельный сценарий (например, поиск по таблице или вашему сервису), вместо векторного хранилища можно подключить инструмент Call n8n Workflow Tool: он вызывает другой workflow и возвращает его результат агенту. В поле Description опишите, когда его вызывать. В режиме Database вызываемый сценарий должен быть опубликован, иначе агент получит ошибку «Workflow is not active and cannot be executed».

Шаг 7. Отправьте ответ в Telegram

К выходу AI Agent подключите узел Telegram, ресурс Message, операция Send Message. Заполните:

  • Chat ID — {{ $('Telegram Trigger').item.json.message.chat.id }};
  • Text — {{ $json.output }} (ответ агента лежит в поле output); максимум 4096 символов.

В дополнительных полях найдите Append n8n Attribution: по умолчанию включено, и к каждому сообщению добавляется подпись «This message was sent automatically with n8n». Для клиентского бота её лучше выключить. Заодно можно выбрать Parse Mode (HTML, Markdown или MarkdownV2).

Шаг 8. Проверьте и включите

  1. Нажмите Execute workflow и напишите боту вопрос, ответ на который есть в базе. Откройте узел AI Agent и посмотрите, какие шаги он прошёл.
  2. Задайте вопрос, ответа на который в базе нет — агент должен честно отказаться, а не придумать.
  3. Напишите два сообщения подряд («Сколько стоит доставка?» и «А в выходные?») — проверьте, что память работает.
  4. Когда всё в порядке, опубликуйте workflow (переключатель публикации в правом верхнем углу), и бот будет отвечать постоянно.

Частые ошибки

ПроблемаПричина и решение
Агент не вызывает инструмент и отвечает «из головы»Модель не поддерживает вызов инструментов или описание инструмента слишком общее. Возьмите модель с tool calling и перепишите Description конкретнее; в System Message прямо потребуйте сначала искать в базе.
Все пользователи видят общую историюНе задан Session Key в Simple Memory — подставьте идентификатор чата.
Ошибка при запуске агента, связанная с инструментомВ имени инструмента есть недопустимые символы — оставьте латиницу, цифры, пробелы, дефисы и подчёркивания.
Агент ходит по кругуУменьшите Max Iterations и включите Return Intermediate Steps, чтобы увидеть, где он застревает.
База пропала после перезапуска n8nSimple Vector Store хранит данные только в памяти. Загрузите документы заново или перейдите на постоянное векторное хранилище.
n8n не достучался до OllamaПроверьте Base URL; в Docker используйте адрес, доступный из контейнера, а не localhost.
Бот не реагирует на сообщенияWorkflow не опубликован или инстанс недоступен из интернета для Telegram; проверьте также фильтры Restrict to Chat IDs и User IDs.

Что улучшить дальше

Рабочий минимум собран. Дальше типовые шаги: заменить Simple Vector Store на постоянное хранилище, добавить инструменты действий (создать заявку, записать клиента), включить для чувствительных операций подтверждение человеком — в панели инструментов можно потребовать одобрение перед отправкой сообщения или изменением данных. Если нужна общая картина — как выбрать первый сценарий и не распылиться, читайте «Как создать ИИ-агента с нуля».

Частые вопросы

Нужно ли уметь программировать, чтобы создать ИИ-агента в n8n?

Нет. Агент собирается из узлов на холсте: AI Agent, модель, память и инструменты. Код понадобится только для нестандартных задач — для них есть отдельные узлы с кодом, но в примере из статьи он не нужен.

Чем AI Agent в n8n отличается от обычного сценария?

В обычном сценарии вы заранее задаёте порядок шагов. Агент сам решает, какие инструменты вызвать и сколько раз, чтобы выполнить задачу. Поэтому ему нужна языковая модель и хотя бы один инструмент.

Какая модель подойдёт для агента в России?

Любая из поддерживаемых узлов, у которой есть вызов инструментов. Для старта удобна локальная модель через узел Ollama Chat Model — бесплатно и без отправки данных наружу. Есть также узел OpenRouter Chat Model. OpenAI и Anthropic официально в России не работают.

Можно ли собрать агента без Telegram?

Да. Telegram Trigger — лишь один из способов получить вопрос. Для тестирования удобен Chat Trigger со встроенным окном чата: у него есть поле chatInput, и в AI Agent можно оставить автоматическое получение промпта.

Почему агент забывает предыдущие сообщения?

Либо не подключён узел Simple Memory, либо Context Window Length слишком мал, либо у каждого сообщения новый Session Key. Задайте постоянный идентификатор диалога, например ID чата.

Можно ли использовать Simple Vector Store в рабочем боте?

Для проверки идеи — да. Но по документации n8n данные в нём теряются при перезапуске, а сам узел рекомендован для разработки. Для рабочего бота подключите постоянную векторную базу: облачную (например, Pinecone) или свою на сервере (Qdrant, PostgreSQL с PGVector).

АК
Алексей Кальсин

Строю AI-агентов для своего бизнеса и клиентов, на сайте пишу о том, что запускал сам. Вопросы задавайте в Telegram.

@aaakalsin →

Ещё в разделе «Установка и настройка»

Новые агенты и рабочие связки раньше, чем в блоге

Короткие разборы, промокоды и ответы на вопросы в Telegram-канале.

Подписаться в Telegram