Запустіть Chatwoot Captain на кастомному OpenAI-сумісному ендпоінті.

Updated 2026-07-30

Self-hosted Chatwoot налаштовує Captain через конфігурації застосунку в Super Admin: CAPTAIN_OPEN_AI_ENDPOINT, CAPTAIN_OPEN_AI_API_KEY і CAPTAIN_OPEN_AI_MODEL. Вкажіть ендпоінт на https://api.apisrouter.com (Chatwoot сам додає /v1), і ваш AI підтримки відповідає на будь-якій моделі каталогу через один ключ.

Коротка відповідь: три конфігурації Captain у Super Admin.

У поточному self-hosted Chatwoot налаштування LLM для Captain — це конфігурації інсталяції, а не змінні .env; постачаний .env.example прямо про це каже й вказує вам на Super Admin, App Configs, Captain. Мають значення три значення: CAPTAIN_OPEN_AI_API_KEY бере ключ шлюзу, CAPTAIN_OPEN_AI_MODEL бере id моделі, а CAPTAIN_OPEN_AI_ENDPOINT бере хост ендпоінта. У значенні ендпоінта є один гострий кут: давайте його без суфікса /v1. Ініціалізатор Chatwoot сам будує API base, обрізаючи кінцеву скісну риску й додаючи /v1, а власний опис конфігурації показує типове значення як https://api.openai.com/ саме в такій формі. Для APIsRouter введіть https://api.apisrouter.com і дозвольте Chatwoot вивести https://api.apisrouter.com/v1. Ці конфігурації зчитуються при завантаженні застосунку, тож перезапустіть Chatwoot після їх зміни.

CAPTAIN_OPEN_AI_API_KEY:  sk-YOUR-APISROUTER-KEY
CAPTAIN_OPEN_AI_MODEL:    claude-haiku-4-5-20251001
CAPTAIN_OPEN_AI_ENDPOINT: https://api.apisrouter.com
                          (no /v1 -- Chatwoot appends it)

then restart the Chatwoot processes

Що Captain робить з налаштованою моделлю.

Chatwoot (приблизно 34 тис. зірок на GitHub) — провідна open-source платформа підтримки клієнтів, а Captain — її AI-шар: AI-агент, що відповідає на розмови клієнтів з ваших статей довідкового центру й FAQ, копілот, що складає чернетки відповідей і підсумовує треди для агентів-людей, і функції знань, обґрунтовані документами, за обома. На self-hosted інсталяціях, де Captain доступний, усе це працює через модель, налаштовану вище. Під капотом Chatwoot конфігурує свій SDK агентів один раз при завантаженні: ключ, виведений API base і типова модель. Кожна функція Captain тоді говорить стандартними chat completions до того base URL, а id моделі подорожує як звичайний рядок. Chatwoot справді тримає мапу префіксів назв моделей (claude-, gemini-, deepseek-), але використовує її для маркування телеметрії, а не маршрутизації, тож id Claude чи DeepSeek, встановлений як CAPTAIN_OPEN_AI_MODEL, все одно йде на ваш налаштований ендпоінт, як і будь-який інший рядок. Трафік підтримки має особливий профіль вартості: багато розмов, короткі ходи й обґрунтовані відповіді, зібрані з отриманих статей. Це робить вартість на розмову числом, яке має значення, і в ній домінують вхідні токени з отриманого контексту. Швидкий id добре справляється з рівнем асистента, а ескалація до сильнішого id — це зміна однієї конфігурації, коли ви хочете, щоб копілот писав кращі чернетки.

Повне налаштування й деталь часу завантаження.

Відкрийте консоль Super Admin вашої інсталяції, перейдіть у App Configs і оберіть Captain, потім заповніть три значення. Якщо ваш Chatwoot старший за конфігурацію ендпоінта (вона з'явилась в еру v4.4 в середині 2025), спершу оновіться; на старіших версіях існували лише ключ і модель, а ендпоінт був захардкоджений. Оскільки ініціалізатор зчитує ці конфігурації під час завантаження застосунку, зміни набувають чинності після перезапуску процесів web і worker. Це також означає, що неправильне значення не провалюється при збереженні; воно провалюється на першому запиті Captain після перезапуску, що варто знати, перш ніж налагоджувати не в тому місці. Captain також має бік ембедінгів: CAPTAIN_EMBEDDING_MODEL (за замовчуванням text-embedding-3-small) живить пошук документів по вашому контенту довідкового центру, і резолвиться проти того самого налаштованого ендпоінта. Якщо ви перенаправляєте ендпоінт на шлюз, підтвердіть, що id ембедінга, який ви там налаштовуєте, — той, який ендпоінт справді обслуговує; інакше лишіть функції документів на їхньому наявному налаштуванні й перевірте їх окремо після перемикання.

# Chatwoot will call <endpoint>/v1/chat/completions
curl -s https://api.apisrouter.com/v1/chat/completions \
  -H "Authorization: Bearer $APISROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"claude-haiku-4-5-20251001",
       "messages":[{"role":"user","content":"ping"}]}'

Вибір моделі для автоматизації підтримки.

Робочий цикл оцінки: прогоніть тиждень на швидкому id, експортуйте цифри використання, потім проженіть команди з важким копілотом на сильнішому id і порівняйте прийняття чернеток, а не відчуття. Обидва кандидати виставляють рахунок через той самий ключ, тож порівняння приходить з ціною.

  • Рівень AI-агента — це об'ємна робота: обґрунтовані відповіді над отриманими статтями, тисячі розмов на місяць. claude-haiku-4-5-20251001, gpt-5.4-mini і gemini-3.5-flash тримають вартість на розмову плоскою, не втрачаючи дисципліни обґрунтування.
  • Рівень копілота читає цілі треди й складає чернетки відповідей для людей, де показуються тон і судження. claude-sonnet-4-6 — природний крок вгору, коли якість чернетки визначає продуктивність агента.
  • Багатомовним столам підтримки варто протестувати deepseek-v4-pro і gemini-3.5-flash на реальному мовному міксі; якість обґрунтованої відповіді варіюється між мовами більше, ніж припускають англомовні бенчмарки.
  • Вартість на розмову вимірювана, а не теоретична: токени на розмову помножені на розмови на місяць, прямо з логу використання.
  • Одна модель обслуговує всі функції Captain на інсталяцію, тож обирайте під домінантне навантаження й переглядайте після тижня реального використання.

Оплата за фактом · нижче офіційних цін

Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.

МодельОфіційна цінаНаша ціна
Claude Haiku 4.5 20251001$1.00 / $5.00 per M$0.80 / $4.00 per M
Claude Sonnet 4.6$3.00 / $15.00 per M$2.40 / $12.00 per M
GPT-5.4 mini$0.75 / $4.50 per M$0.60 / $3.60 per M
DeepSeek V4 Pro$0.43 / $0.87 per M$0.40 / $0.90 per M
Gemini 3.5 Flash$1.50 / $9.00 per M$1.20 / $7.20 per M

Збої, специфічні саме для Chatwoot Captain.

Подвійний суфікс /v1 — класика. Оскільки Chatwoot додає /v1 до всього, що ви введете, вставлення https://api.apisrouter.com/v1 видає запити проти /v1/v1/chat/completions, які провалюються з 404 на шлюзі. Вводьте хост без /v1. Зміни конфігурації, що здаються проігнорованими, — це правило перезапуску. SDK агентів налаштовується один раз при завантаженні з конфігурацій інсталяції; редагування їх у Super Admin без перезапуску лишає старі значення живими в кожному процесі, що вже працює. Старі гайди вказують не на ту поверхню. Туторіали з ранніх версій Chatwoot налаштовують OPENAI_API_KEY через змінні середовища чи застарілу інтеграцію OpenAI; на поточних версіях поверхня — це конфігурації Captain у Super Admin, і .env.example каже це прямим текстом. Model-not-found на першій відповіді Captain після перемикання — це одруківка в id у CAPTAIN_OPEN_AI_MODEL; лістинг /v1/models шлюзу — авторитетне написання. Помилки автентифікації означають, що конфігурації ключа й ендпоінта не належать одне одному. А якщо пошук статей чи обґрунтування документами деградує, поки чат відповідає нормально, дивіться на конфігурацію ембедінга, яка є окремою моделлю, що резолвиться проти того самого ендпоінта.

Хто спрямовує Chatwoot Captain через шлюз.

  • Self-hosted команди підтримки, що хочуть якості чернеток рівня Claude в копілоті без окремого облікового запису й білінгових стосунків з постачальником.
  • Столи з високим обсягом, де AI-агент відповідає на більшість розмов, а вартість на розмову вирішує, чи окуповується автоматизація; швидкі id каталогу тримають це число чесним.
  • Команди, що запускають один Chatwoot на бренд чи регіон, вимірюючи кожну інсталяцію власним ключем, щоб вартість AI підтримки звітувала себе на бренд.
  • Оператори, що порівнюють моделі підтримки на реальному трафіку: кожен кандидат — одне значення конфігурації й перезапуск, а не міграція.
  • Розробники без доступу до білінгу певного постачальника. Доступ на основі поповнення без вимоги картки прибирає залежність від реєстрації в кожного провайдера.

Перевірте ендпоінт і налагодьте першу розмову.

Спершу перевірте поза Chatwoot: перелічіть моделі своїм ключем і виконайте один chat completion проти точного id, який встановили в CAPTAIN_OPEN_AI_MODEL. Якщо це проходить, половина зі шлюзом доведена, і все інше — на стороні Chatwoot. Потім перезапустіть і спостерігайте за першою взаємодією Captain. Помилки автентифікації вказують на конфігурацію ключа; model-not-found — на конфігурацію моделі; помилки у формі 404 — на /v1, вставлений у конфігурацію ендпоінта. Якщо функції Captain просто не з'являються, це доступність і ліцензування на вашому рівні інсталяції, а не конфігурація ендпоінта. Щойно розмови потечуть, консоль APIsRouter показує модель на запит, кількість токенів і витрати. AI підтримки — це бюджетний рядок, що накопичується щомісяця, і один ключ на інсталяцію перетворює лог використання на звіт вартості по столу, якого постійно просить ваш фінансовий відділ.

curl -s https://api.apisrouter.com/v1/models \
  -H "Authorization: Bearer $APISROUTER_API_KEY" | head -50

Поширені запитання

Яка конфігурація Chatwoot спрямовує Captain на кастомний OpenAI-сумісний ендпоінт?

CAPTAIN_OPEN_AI_ENDPOINT, встановлена в консолі Super Admin під App Configs, Captain, поряд з CAPTAIN_OPEN_AI_API_KEY і CAPTAIN_OPEN_AI_MODEL. На поточних версіях це конфігурації інсталяції, а не змінні .env.

Чи має ендпоінт включати /v1?

Ні. Chatwoot сам обрізає кінцеву скісну риску й додає /v1 при побудові API base. Введіть https://api.apisrouter.com, і Chatwoot виведе https://api.apisrouter.com/v1; вставлення /v1 самостійно дає подвоєний шлях, що провалюється з 404.

Чи може Captain працювати на моделях Claude чи DeepSeek?

Так. CAPTAIN_OPEN_AI_MODEL подорожує до налаштованого ендпоінта як звичайний рядок; мапа префіксів провайдера Chatwoot лише маркує телеметрію. Працює будь-який id, який обслуговує шлюз, включно з claude-haiku-4-5-20251001 і deepseek-v4-pro.

Чому моя зміна конфігурації не набула чинності?

Налаштування LLM Captain зчитуються при завантаженні застосунку. Перезапустіть процеси web і worker Chatwoot після редагування конфігурацій у Super Admin; процеси, що вже працюють, тримають старі значення до того.

Чи впливає конфігурація ендпоінта на пошук документів Captain?

Модель ембедінга (CAPTAIN_EMBEDDING_MODEL, за замовчуванням text-embedding-3-small) резолвиться проти того самого ендпоінта. Підтвердіть, що ендпоінт обслуговує id ембедінга, який ви налаштовуєте, або перевірте функції документів окремо після перемикання.

Яка версія Chatwoot мені потрібна?

Конфігурація ендпоінта з'явилась в еру v4.4 в середині 2025. Ранніші версії показують лише ключ і модель з захардкодженим ендпоінтом OpenAI, тож оновіться, перш ніж спрямовувати Captain на шлюз.