Запустіть відеопідсумки BibiGPT на кастомному OpenAI-сумісному API.

Updated 2026-07-30

Self-hosted BibiGPT зчитує зі свого середовища OPENAI_COMPATIBLE_BASE_URL, OPENAI_COMPATIBLE_API_KEY і OPENAI_COMPATIBLE_MODEL. Вкажіть base URL на https://api.apisrouter.com/v1 — і кожен підсумок з Bilibili, YouTube чи подкасту йде через шлюз, з китайськими й глобальними моделями за одним ключем.

Коротка відповідь: три змінні середовища.

Приклад файлу середовища BibiGPT документує поверхню напряму: OPENAI_COMPATIBLE_BASE_URL встановлює ендпоінт (за замовчуванням https://api.openai.com/v1), OPENAI_COMPATIBLE_API_KEY тримає ключ (відкочуючись до OPENAI_API_KEY, якщо не встановлено), а OPENAI_COMPATIBLE_MODEL обирає типову модель для підсумків. Встановіть base URL на https://api.apisrouter.com/v1, покладіть ключ шлюзу в змінну ключа й оберіть будь-який id каталогу як модель. Base URL валідується при використанні: він має починатися з http:// чи https://, а кінцеві скісні риски прибираються, тож форма /v1 вище — саме правильна. Під капотом застосунок будує провайдера openai-compatible Vercel AI SDK з цих значень і викликає chatModel з налаштованим id, тому й працює будь-яка модель, яку обслуговує ендпоінт, без змін коду.

# Optional: use OpenAI-compatible providers (falls back to OPENAI_API_KEY)
OPENAI_COMPATIBLE_API_KEY=sk-YOUR-APISROUTER-KEY
OPENAI_COMPATIBLE_BASE_URL=https://api.apisrouter.com/v1
OPENAI_COMPATIBLE_MODEL=deepseek-v4-flash

Що BibiGPT надсилає ендпоінту.

BibiGPT (JimmyLv на GitHub, приблизно 6 тис. зірок для open-source v1) — це AI-підсумовувач аудіо й відео в один клік: вставте посилання на Bilibili чи YouTube, подкаст, запис зустрічі чи локальний файл, і він отримує транскрипт, стискає його й дозволяє спілкуватися з контентом. Почалося як BiliGPT для підсумків Bilibili й виросло в білінгвальний інструмент з хостованим наступником; конфігурація середовища, описана тут, стосується self-hosted open-source версії. Навантаження має форму транскрипту: довгі входи, короткі виходи. Година мовлення — це багато транскрипту, який застосунок розбиває на шматки розміром з модель перед підсумовуванням, тож одне відео може означати кілька викликів chat-completions, чиї вхідні токени значно перевищують підсумок, який вони виробляють. Ціна за вхідний токен тому визначає всю економіку, а моделі з довгим контекстом зменшують кількість шматків для довгих лекцій і подкастів. Побудова провайдера резолвиться в розумному каскаді: ключ на запит (для інстансів, що дозволяють користувачам приносити власні) переважає над OPENAI_COMPATIBLE_API_KEY, який переважає над OPENAI_API_KEY; те саме стосується base URL і моделі. Є навіть змінна OPENAI_COMPATIBLE_KEY_PREFIXES для прийняття введених користувачем ключів, чиї префікси не sk-, що має значення, коли ключі ваших користувачів походять від шлюзу, а не від OpenAI.

Повне налаштування для self-hosted інстансу.

BibiGPT — це застосунок Next.js, тож середовище подорожує так, як ви деплоїте: файл .env локально, змінні середовища проєкту на Vercel чи середовище контейнера в Docker. Встановіть три змінні, передеплойте чи перезапустіть — і підсумки маршрутизуються через шлюз. Змінна моделі — типове значення, а не жорсткий ліміт. Запити несуть конфігурацію на відео, чиє поле model, якщо присутнє, перевизначає OPENAI_COMPATIBLE_MODEL, тож інстанс може за замовчуванням використовувати об'ємний id, поки конкретні потоки запитують сильніший. Якщо ви запускаєте інстанс для інших і дозволяєте їм вставляти власні ключі, встановіть OPENAI_COMPATIBLE_KEY_PREFIXES так, щоб включити префікс ключа вашого шлюзу, щоб форма приймала їх.

OPENAI_COMPATIBLE_API_KEY=sk-YOUR-APISROUTER-KEY
OPENAI_COMPATIBLE_BASE_URL=https://api.apisrouter.com/v1
OPENAI_COMPATIBLE_MODEL=deepseek-v4-flash

# accepting user-entered gateway keys in the UI:
OPENAI_COMPATIBLE_KEY_PREFIXES=sk-

Вибір моделі підсумовування, Схід і Захід.

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

  • Китайський контент — рідна територія BibiGPT: лекції з Bilibili, кліпи з Douyin, китайські подкасти. glm-5.2, deepseek-v4-flash і kimi-k2.6 нативно сильні на китайських транскриптах і сидять за тим самим ендпоінтом, що й усе інше.
  • Англійський і змішаний контент (YouTube, глобальні подкасти) добре йде на claude-haiku-4-5-20251001 і gemini-3.5-flash, обидва впевнено почуваються на довгих зашумлених транскриптах.
  • Цей поділ — практичний аргумент "Китай плюс глобальний" на користь шлюзу: один ендпоінт, один ключ, а перевизначення моделі на відео обирає правильну родину під джерело контенту, замість того щоб нав'язувати одного постачальника для обох.
  • Довгі лекції винагороджують довгий контекст. Менше шматків означає менше викликів і зв'язніший підсумок; протестуйте id з довгим контекстом на вашому найдовшому контенті, перш ніж стандартизувати.
  • Об'ємні інстанси (команда, що підсумовує все, що дивиться) мають за замовчуванням використовувати deepseek-v4-flash і вибірково ескалувати; форма з переважанням входу робить ціну швидкого рівня накопичувальною.

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

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

МодельОфіційна цінаНаша ціна
DeepSeek V4 Flash$0.14 / $0.28 per M$0.10 / $0.30 per M
GLM-5.2$1.14 / $4.00 per M$1.10 / $4.00 per M
Kimi K2.6$0.95 / $4.00 per M$1.00 / $4.00 per M
Claude Haiku 4.5 20251001$1.00 / $5.00 per M$0.80 / $4.00 per M
Gemini 3.5 Flash$1.50 / $9.00 per M$1.20 / $7.20 per M

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

Ланцюжок фолбеків може здивувати. Якщо OPENAI_COMPATIBLE_API_KEY порожній, застосунок тихо відкочується до OPENAI_API_KEY. Це зручно, доки два не вказують на різні сервіси: base URL шлюзу з ключем OpenAI видає помилки автентифікації, що виглядають як проблеми шлюзу. Коли маршрутизація змінюється, встановлюйте пару з префіксом compatible разом і не лишайте застарілий OPENAI_API_KEY, що вказує кудись ще, або переконайтеся, що він містить той самий ключ шлюзу. Валідатор base URL відхиляє значення без схеми, тож голий хост швидко провалюється з чіткою помилкою; включайте https:// і шлях /v1. Кінцеві скісні риски нормалізуються, тож обидві форми там працюють. Id моделей — точні рядки проти лістингу /v1/models ендпоінта; одруківка в OPENAI_COMPATIBLE_MODEL провалює перший підсумок з model-not-found. Пам'ятайте і про перевизначення на відео: якщо один потік продовжує використовувати стару модель, щось передає явну модель у конфігурації запиту. Отримання транскрипту — окрема сантехніка. Якщо відео не дає підсумку, бо субтитри чи аудіо не вдалося отримати, це конвеєр контенту (API платформи, доступність субтитрів), а не ендпоінт LLM. Змінні середовища в цьому гайді рухають лише виклики підсумовування. І зверніть увагу: хостований сервіс bibigpt.co керує власними моделями; ці змінні налаштовують open-source v1, який ви деплоїте самі.

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

  • Білінгвальні глядачі, що підсумовують і Bilibili, і YouTube, поєднуючи сильні для китайської id з глобальними за одним ключем замість одного постачальника на мову.
  • Self-hosters у налаштуваннях, близьких до Китаю, де єдиний OpenAI-сумісний ендпоінт, що також обслуговує GLM, DeepSeek і Kimi, повністю усуває проблему мультивендорного білінгу.
  • Команди, що запускають спільний підсумовувач для зустрічей і лекцій, вимірюючи використання за ключем і встановлюючи об'ємний рівень за замовчуванням.
  • Активні слухачі подкастів, де години транскрипту на тиждень роблять ціну за вхідний токен усією історією вартості.
  • Розробники без доступу до білінгу певного постачальника. Доступ на основі поповнення без вимоги картки прибирає залежність від реєстрації в кожного провайдера.

Перевірте ендпоінт і налагодьте перший підсумок.

Перелічіть моделі, доступні вашому ключу, і підтвердіть, що id в OPENAI_COMPATIBLE_MODEL серед них; ця одна перевірка запобігає більшості збоїв першого прогону. Потім підсумуйте щось коротке. Помилка автентифікації означає, що резолвлений ключ не збігається з base URL, і з огляду на ланцюжок фолбеків, виведіть, яка змінна насправді надала ключ, перш ніж припускати. Model-not-found — одруківка в id. Помилка схеми при старті — base URL без https://. Підсумок, що ніколи не починається, попри здоровий ендпоінт, — це отримання транскрипту, що провалюється до будь-якого виклику LLM. Щойно підсумки потечуть, консоль APIsRouter показує модель на запит, кількість токенів і витрати. Підсумовування транскриптів — найяскравіший приклад навантаження з переважанням входу, і тиждень даних використання каже реальну вартість на годину контенту для кожної моделі, а це число варте оптимізації.

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

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

Чи підтримує BibiGPT кастомний OpenAI-сумісний base URL?

Так. Self-hosted v1 документує OPENAI_COMPATIBLE_BASE_URL, OPENAI_COMPATIBLE_API_KEY і OPENAI_COMPATIBLE_MODEL у прикладі файлу середовища й будує з них свого провайдера AI SDK. Встановіть base URL на ендпоінт шлюзу, включно з /v1.

Чи може BibiGPT підсумовувати моделями GLM, DeepSeek, Kimi чи Claude?

Так. Налаштований id моделі передається ендпоінту як звичайний рядок, тож працює будь-який id каталогу: glm-5.2 і kimi-k2.6 для китайського контенту, claude-haiku-4-5-20251001 чи gemini-3.5-flash для глобального, усі на одному ключі.

Що станеться, якщо OPENAI_COMPATIBLE_API_KEY не встановлено?

Застосунок відкочується до OPENAI_API_KEY. Це нормально, коли обидва вказують на той самий сервіс, і заплутано, коли ні; при використанні шлюзу встановлюйте ключ з префіксом compatible явно.

Чи можуть користувачі приносити власні ключі шлюзу на спільному інстансі?

Так. Ключі на запит переважають середовище, а OPENAI_COMPATIBLE_KEY_PREFIXES контролює, які префікси ключів приймає інтерфейс, тож спільний деплой може приймати введені користувачем ключі шлюзу.

Чому довгі відео коштують дорожче, ніж підказує довжина підсумку?

Тому що транскрипт — це вхід. Година мовлення — це велика кількість вхідних токенів, розбита на кілька викликів, поки вихід підсумку малий. Ціна за вхідний токен і робота з довгим контекстом визначають вартість, а лог використання показує це на відео.

Чи стосуються ці змінні хостованого сервісу bibigpt.co?

Ні. Хостований сервіс керує власними моделями на стороні сервера. Змінні середовища OPENAI_COMPATIBLE_* налаштовують open-source BibiGPT v1, який ви деплоїте самі.