Flowise и Zukko: OpenAI-совместимый API для AI-воркфлоу
В Flowise сторонние модели подключаются через узел ChatOpenAI Custom и параметр Base Path. Пошаговая настройка, пример чата с памятью и разбор ошибок.
5 мин · · разработка · автоматизация
Flowise — визуальный конструктор цепочек и агентов на LLM: узлы перетаскиваются на холст и соединяются между собой. Подключить в Flowise OpenAI-совместимый API проще всего через узел ChatOpenAI Custom: ему можно указать любой адрес и любое имя модели. Так подключается и Zukko — один ключ fetch_... для моделей Claude, GPT и GLM. Ниже — пошаговая настройка по исходному коду узлов Flowise, пример чата с памятью, расчёт стоимости и разбор ошибок.
Какой узел выбрать
В разделе Chat Models у Flowise есть два узла для OpenAI-совместимых API:
- ChatOpenAI — обычный узел OpenAI. Поле Model Name в нём — выпадающий список моделей OpenAI, который Flowise хранит у себя. Моделей Zukko вроде
claude-sonnet-5в этом списке нет. - ChatOpenAI Custom (в свежих версиях отображается как OpenAI Custom Model, описание — Custom/FineTuned model using OpenAI Chat compatible API). Здесь Model Name — обычное текстовое поле, куда можно вписать любой id.
Для Zukko нужен второй узел.
Подключение OpenAI-совместимого API в Flowise: пошагово
- Создайте учётные данные. В разделе Credentials добавьте запись типа OpenAI API, назовите её, например,
Zukkoи вставьте ключfetch_...в поле OpenAI Api Key. - Откройте chatflow и добавьте на холст узел ChatOpenAI Custom из раздела Chat Models.
- В поле Connect Credential выберите учётные данные
Zukko. - В Model Name впишите id модели, например
claude-sonnet-5. - Откройте Additional Parameters и в поле Base Path укажите
https://api.zukko.pro/v1. - Соедините узел с цепочкой или агентом, сохраните chatflow и отправьте тестовое сообщение во встроенном чате.
| Параметр узла | Значение |
|---|---|
| Connect Credential | учётные данные OpenAI API с ключом fetch_... |
| Model Name | claude-sonnet-5, gpt-5.6-sol, glm-5.3-flash и т.д. |
| Base Path (Additional Parameters) | https://api.zukko.pro/v1 |
| Temperature | для claude-* — 1, для остальных — по задаче |
| Max Tokens (Additional Parameters) | потолок длины ответа |
| Streaming (Additional Parameters) | включить, если нужен потоковый вывод |
| Timeout (Additional Parameters) | по желанию, для долгих ответов |
Почему Base Path именно такой
Base Path заменяет стандартный адрес OpenAI. Клиентская библиотека сама добавляет к нему /chat/completions, поэтому указывать нужно адрес до /v1 включительно — без /chat/completions на конце. Если Base Path оставить пустым, запрос с ключом fetch_... уйдёт на серверы OpenAI и вернётся с ошибкой авторизации.
Актуальный список id моделей — GET https://api.zukko.pro/v1/models (см. документацию по моделям) или страница «Модели» в кабинете.
Пример: чат с памятью и ограничением истории
Минимальный chatflow для чат-бота:
- ChatOpenAI Custom с моделью Zukko — настроен, как описано выше.
- Buffer Window Memory — хранит последние k обменов сообщениями (параметр Size).
- Conversation Chain — соединяет модель и память.
Почему Buffer Window Memory, а не Buffer Memory: обычная Buffer Memory передаёт модели всю историю, и с каждым сообщением запрос становится длиннее и дороже. Окно из последних k обменов держит размер запроса примерно постоянным. Если боту важна долгая память, увеличьте Size и посчитайте, сколько это будет стоить.
Стоимость и выбор модели
| Модель | Вход / выход, $ за 1M токенов | Контекст |
|---|---|---|
claude-opus-5-5 | 0.3 / 0.3 | 1M |
claude-sonnet-5 | 0.3 / 0.3 | 1M |
gpt-5.6-sol | 0.3 / 0.3 | 1M |
gpt-5.6-luna | 0.1 / 0.1 | 1M |
glm-5.3 | 0.1 / 0.1 | 128K |
glm-5.3-flash | 0.04 / 0.04 | 128K |
Пример: диалог из 10 сообщений, в среднем 2 500 входных токенов (промпт, история, вопрос) и 400 выходных на сообщение. Получается 10 × 2 900 = 29 000 токенов на диалог:
claude-sonnet-5: 29 000 × $0.3 / 1 000 000 = $0.0087;gpt-5.6-luna: 29 000 × $0.1 / 1 000 000 = $0.0029;glm-5.3-flash: 29 000 × $0.04 / 1 000 000 = $0.00116.
В Flowise модель задаётся для каждого узла отдельно, так что в одном потоке можно сочетать дешёвую модель для простых шагов и более дорогую для основного ответа. Какая подойдёт для конкретного шага, проверьте на 20–30 реальных примерах и сравните результат и расход в разделе «Использование» кабинета.
Частые ошибки
В списке Model Name нет моделей Zukko
Вы используете обычный узел ChatOpenAI. Замените его на ChatOpenAI Custom, где имя модели вводится вручную.
401
Пуст Base Path, и запрос ушёл в OpenAI. Или ключ в учётных данных скопирован не полностью либо удалён в кабинете. Проверьте Base Path и ключ — он начинается с fetch_.
404
В Base Path нет /v1 или, наоборот, добавлен /chat/completions. Нужен ровно https://api.zukko.pro/v1.
400 на моделях Claude
Модели claude-sonnet-5 и claude-opus-5-5 могут отклонять запрос с ошибкой 400, если temperature отличается от 1 или top_p меньше 0.99. У узла ChatOpenAI Custom по умолчанию стоит Temperature = 0.9, и это значение уходит в каждый запрос. Для claude-sonnet-5 и claude-opus-5-5 поставьте Temperature = 1 и не задавайте Top Probability.
402, 403, 429
402 — закончился баланс, пополните его в кабинете. 403 model_not_allowed_for_key — модели нет в списке разрешённых для ключа. 429 — слишком частые запросы; если поток вызывается из внешней системы, снизьте частоту.
Частые вопросы
Можно ли использовать разные ключи в разных потоках?
Да. Создайте несколько учётных данных типа OpenAI API с разными ключами Zukko и выбирайте нужные в узлах. У каждого ключа в кабинете можно задать дневной и месячный лимит и список разрешённых моделей — подробнее в документации по лимитам ключей.
Нужен ли отдельный узел для моделей Claude?
Нет. Zukko сам конвертирует форматы, поэтому Claude работает через тот же ChatOpenAI Custom, что и GPT с GLM. Чем отличаются форматы, описано в документации о выборе формата.
Где смотреть расходы?
В кабинете Zukko, раздел «Использование». Если у каждого потока свой ключ, расходы будут разделены по ключам.
С чего начать?
Создайте ключ в кабинете Zukko, добавьте его в Credentials и соберите chatflow из трёх узлов из примера выше.
zukko
Платите в 25×
меньше
за Claude Code & ChatGPT
Один ключ fetch_* и base URL api.zukko.pro — в Cursor, Claude Code, Codex и любом SDK.
Похожие статьи
- Перевод субтитров нейросетью: SRT без сбитых таймкодовГлавный риск при переводе SRT нейросетью — сломанная структура файла. Показываем схему, где таймкоды не попадают к модели, и скрипт на Python с проверкой.
- Редактирование текстов нейросетью: корректура, стиль и сокращениеРазные виды редактуры требуют разных промптов. Показываем формулировки для корректуры, стиля и сокращения, как получать правки с объяснением и не терять авторский голос.
- Нейросеть для написания скриптов: Bash, PowerShell и PythonМодель быстро пишет скрипты для рутины, но запускать их вслепую нельзя. Показываем, как ставить задачу, требовать безопасный режим dry-run и проверять результат до запуска.
- Dify в Docker: установка, первичная настройка и подключение моделейСтавим Dify через Docker Compose, создаём администратора и подключаем модели Claude, GPT и DeepSeek по одному ключу. Отдельно — что делать, если контейнеры не стартуют.