Представьте: приходит обращение клиента, нейросеть выделяет главное и готовит черновик ответа. Или каждое утро из нескольких источников собирается короткая сводка. Такие сценарии можно построить в n8n — визуальном редакторе автоматизаций, где отдельные действия соединяются в цепочку.
GoRouter обеспечивает доступ к моделям через совместимый с OpenAI API. Поэтому для подключения достаточно стандартного узла n8n, ключа GoRouter и адреса API.
В этой инструкции развернём n8n на Beget, подключим GoRouter и соберём небольшой чат для обработки обращений. Если n8n у вас уже работает, переходите к созданию API-ключа.
Сначала подготовим n8n. Для сценариев, которые должны работать постоянно, удобно разместить его на VPS. У Beget есть готовое решение с предустановленным n8n: его можно выбрать при создании сервера.
Порядок запуска:
Откройте страницу n8n в маркетплейсе Beget и нажмите «Создать VPS».
Войдите в аккаунт или зарегистрируйтесь.
Выберите расположение сервера и подходящую конфигурацию.
Укажите домен: можно начать с технического адреса Beget или выбрать собственный.
Задайте данные администратора и создайте сервер.
После установки откройте «Информация о n8n» в карточке VPS — там будут адрес панели и данные доступа.
Эти шаги описаны в инструкции Beget по установке n8n. Стоимость выбранной конфигурации проверяйте при оформлении.
В этой связке Beget размещает n8n, а запросы к моделям выполняются через GoRouter. Аренда сервера и использование моделей оплачиваются отдельно. Обновления n8n и резервные копии стоит включить в регулярное обслуживание сервера.
Теперь создадим ключ GoRouter. Войдите в личный кабинет, пополните баланс для платных запросов и откройте раздел API-ключей.
Создайте отдельный ключ, например n8n, и задайте ему подходящий расходный лимит. Скопируйте секрет сразу: полностью он показывается только при создании. Для вызова моделей нужен обычный API-ключ — inference key. Типы ключей описаны в документации GoRouter.
Подключим GoRouter в n8n. Откройте раздел Credentials, создайте подключение типа OpenAI и назовите его GoRouter.
Заполните поля:
Поле | Значение |
|---|---|
API Key | Ваш API-ключ GoRouter, без префикса |
Organization ID | Оставьте пустым |
Base URL |
|
Сохраните подключение. Тип credentials называется OpenAI, но позволяет задать собственный Base URL — это предусмотрено в реализации n8n.
Адрес должен заканчиваться на /api/v1. Конкретный путь запроса, например /chat/completions, узел добавит самостоятельно. Этот базовый адрес также указан в быстром старте GoRouter.
Соберём первый сценарий. Начнём с помощника, который читает обращение клиента и предлагает ответ. Основная цепочка будет такой:
Chat Trigger → Basic LLM Chain
К разъёму Model у Basic LLM Chain подключим OpenAI Chat Model.
Создайте новый workflow, добавьте Chat Trigger и соедините его с Basic LLM Chain. В настройках цепочки выберите получение запроса из предыдущего узла — Take from previous node automatically. Так текст сообщения будет браться из поля chatInput.
В разделе Chat Messages добавьте сообщение типа System:
Ты помогаешь сотруднику поддержки обрабатывать обращения.
На каждое обращение подготовь:
1. Краткую суть проблемы.
2. Какие сведения нужно уточнить.
3. Вежливый черновик ответа клиенту.
Не придумывай условия обслуживания, сроки и обещания.
Если информации недостаточно, прямо укажи, чего не хватает.
Отвечай на русском языке.Basic LLM Chain поддерживает отдельное системное сообщение и передачу пользовательского запроса из предыдущего узла. Подробнее — в документации этого узла.
Откройте подключённый OpenAI Chat Model и выберите credentials GoRouter. В поле модели укажите полный ID из каталога GoRouter. Для первого теста можно использовать:
openai/gpt-4o-miniЕсли модель не отображается в списке, переключите поле Model в режим ID и вставьте значение вручную.
Для примера задайте следующие настройки:
Настройка | Значение |
|---|---|
Use Responses API | Выключено |
Maximum Number of Tokens |
|
Timeout |
|
Max Retries |
|
Так узел будет использовать Chat Completions. GoRouter также поддерживает Responses, но для первого сценария зафиксируем один формат. Переключатель API, ограничение ответа и таймаут описаны в документации OpenAI Chat Model.
Проверим результат. В Chat Trigger оставьте публичный доступ выключенным. Если доступна настройка Response Mode, выберите When Last Node Finishes: чат получит ответ после завершения цепочки. Такой режим описан в документации Chat Trigger.
Откройте тестовый чат в редакторе n8n и отправьте:
Здравствуйте! Оплатил заказ вчера вечером,
но в личном кабинете он до сих пор отображается
как неоплаченный. Что мне делать?Ожидаемый результат — краткое описание проблемы, список уточнений и черновик ответа без выдуманных обещаний. Например, помощник может предложить уточнить номер заказа и время платежа.
После запуска проверьте результат выполнения в n8n и расход в кабинете GoRouter. Тестовое сообщение выполняет настоящий запрос к модели.
Получившийся сценарий обрабатывает каждое обращение отдельно. Если понадобится диалог с сохранением контекста, следующим шагом можно построить сценарий с памятью.
При необходимости используем HTTP Request. Этот вариант удобен, когда нужно самостоятельно задавать тело запроса и получать исходный JSON-ответ.
Создайте отдельную цепочку:
Manual Trigger → HTTP Request
Настройте HTTP Request:
Параметр | Значение |
|---|---|
Method |
|
URL |
|
Authentication |
|
Generic Auth Type |
|
Send Body | Включено |
Body Content Type |
|
Specify Body |
|
Для Header Auth создайте credentials с именем заголовка Authorization и значением Bearer ВАШ_КЛЮЧ_GOROUTER. Сам ключ храните в credentials.
В тело запроса вставьте:
{
"model": "openai/gpt-4o-mini",
"messages": [
{
"role": "system",
"content": "Отвечай на русском, кратко и по существу."
},
{
"role": "user",
"content": "Предложи три идеи автоматизации поддержки клиентов."
}
],
"max_tokens": 1024,
"stream": false
}В опциях ответа выберите формат JSON. Оставьте Include Response Headers and Status выключенным, чтобы узел возвращал непосредственно тело ответа. Настройки авторизации и JSON описаны в справочнике HTTP Request.
Запустите workflow. Текст успешного ответа будет в choices[0].message.content. В следующем узле его можно получить выражением:
{{ $json.choices[0].message.content }}Формат запроса и ответа соответствует Chat Completions API GoRouter.
Если подключение не заработало, начните с сообщения об ошибке. Самые частые причины:
Симптом | Что проверить |
|---|---|
| Правильность ключа, срок действия и статус |
| Баланс и описание ограничения средств |
| Тип ключа, права и настройки приватности |
| Base URL и полный ID модели |
| Лимиты запросов; повторять следует с задержкой |
Нет ответа до таймаута | Время ожидания и сложность запроса |
Ответ обрывается | Ограничение числа токенов |
Смотрите не только на HTTP-статус, но и на error.type и error.message: они уточняют причину. Таймаут не гарантирует, что обработка у провайдера остановилась, поэтому повторный запуск может стать отдельным платным запросом. Подробности — в справочнике ошибок GoRouter.
Дальше можно подключать рабочие данные. Вместо тестового сообщения подставьте текст из формы, письма или CRM. Результат направьте в таблицу, внутреннее уведомление или поле с черновиком ответа. Для клиентской поддержки удобно сначала оставлять сотруднику возможность проверить подготовленный текст.
Начать можно с одного сценария: развернуть n8n на Beget, создать ключ GoRouter и обработать первое обращение. После этого ту же настройку подключения можно использовать в других автоматизациях.