Uruchom streszczenia wideo BibiGPT na niestandardowym API kompatybilnym z OpenAI.

Updated 2026-07-30

Samodzielnie hostowany BibiGPT czyta OPENAI_COMPATIBLE_BASE_URL, OPENAI_COMPATIBLE_API_KEY i OPENAI_COMPATIBLE_MODEL ze swojego środowiska. Wskaż base URL na https://api.apisrouter.com/v1, a każde streszczenie Bilibili, YouTube czy podcastu popłynie przez bramkę, z modelami chińskimi i globalnymi za jednym kluczem.

Szybka odpowiedź: trzy zmienne środowiskowe.

Przykładowy plik środowiskowy BibiGPT dokumentuje tę powierzchnię wprost: OPENAI_COMPATIBLE_BASE_URL ustawia endpoint (domyślnie https://api.openai.com/v1), OPENAI_COMPATIBLE_API_KEY trzyma klucz (z fallbackiem do OPENAI_API_KEY, gdy nieustawiona), a OPENAI_COMPATIBLE_MODEL wybiera domyślny model do streszczeń. Ustaw base URL na https://api.apisrouter.com/v1, umieść klucz bramki w zmiennej klucza i wybierz dowolny identyfikator z katalogu jako model. Base URL jest walidowany przy użyciu: musi zaczynać się od http:// albo https://, a końcowe ukośniki są usuwane, więc powyższa forma z /v1 jest dokładnie właściwa. Pod spodem aplikacja buduje z tych wartości dostawcę openai-compatible z Vercel AI SDK i woła chatModel ze skonfigurowanym identyfikatorem, dlatego działa dowolny model serwowany przez endpoint, bez zmian w kodzie.

# 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

Co BibiGPT wysyła do endpointu.

BibiGPT (JimmyLv na GitHubie, około 6 tys. gwiazdek dla open-source'owej v1) to jednoklikowy streszczacz AI dla audio i wideo: wklej link Bilibili albo YouTube, podcast, nagranie ze spotkania albo lokalny plik, a on pobierze transkrypcję, skondensuje ją i pozwoli Ci rozmawiać z treścią. Zaczął jako BiliGPT do streszczeń Bilibili i wyrósł na dwujęzyczne narzędzie z hostowanym następcą; opisana tu konfiguracja środowiska dotyczy samodzielnie hostowanej wersji open-source. Obciążenie ma kształt transkrypcji: długie wejścia, krótkie wyjścia. Godzina mowy to dużo transkrypcji, którą aplikacja dzieli na kawałki wielkości modelu przed streszczaniem, więc jedno wideo może oznaczać kilka wywołań chat-completions, których tokeny wejściowe przyćmiewają produkowane streszczenie. Cena per token wejściowy jest więc całą ekonomiką, a modele z długim kontekstem zmniejszają dzielenie na kawałki dla długich wykładów i podcastów. Konstrukcja dostawcy rozwiązuje wartości w sensownej kaskadzie: klucz per żądanie (dla instancji, które pozwalają użytkownikom wnosić własny) wygrywa z OPENAI_COMPATIBLE_API_KEY, który wygrywa z OPENAI_API_KEY; to samo dotyczy base URL i modelu. Jest nawet zmienna OPENAI_COMPATIBLE_KEY_PREFIXES do akceptowania kluczy wpisanych przez użytkownika, których prefiksy nie są sk-, co ma znaczenie, gdy klucze trzymane przez Twoich użytkowników pochodzą z bramki, a nie z OpenAI.

Pełna konfiguracja dla samodzielnie hostowanej instancji.

BibiGPT to aplikacja Next.js, więc środowisko podróżuje tak, jak wdrażasz: plik .env lokalnie, zmienne środowiskowe projektu na Vercel albo środowisko kontenera w Dockerze. Ustaw trzy zmienne, zredeployuj albo zrestartuj, a streszczenia popłyną przez bramkę. Zmienna modelu to wartość domyślna, nie twardy limit. Żądania niosą konfigurację per wideo, której pole model, gdy obecne, nadpisuje OPENAI_COMPATIBLE_MODEL, więc instancja może domyślnie używać identyfikatora wolumenowego, podczas gdy konkretne przepływy żądają mocniejszego. Jeśli prowadzisz instancję dla innych i pozwalasz im wklejać własne klucze, ustaw OPENAI_COMPATIBLE_KEY_PREFIXES tak, żeby zawierał prefiks klucza Twojej bramki, żeby formularz je akceptował.

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-

Dobór modelu do streszczeń, Wschód i Zachód.

Porównanie łatwo przeprowadzić uczciwie: to samo wideo, dwa identyfikatory modeli, czytaj oba streszczenia na tle transkrypcji. Log użycia per klucz wycenia każdego kandydata na prawdziwej treści, a dla obciążeń transkrypcyjnych różnica jest widoczna natychmiast w kolumnie tokenów wejściowych.

  • Chińska treść to macierzysty teren BibiGPT: wykłady Bilibili, klipy Douyin, chińskie podcasty. glm-5.2, deepseek-v4-flash i kimi-k2.6 są natywnie mocne na chińskich transkrypcjach i siedzą za tym samym endpointem co wszystko inne.
  • Treść angielska i mieszana (YouTube, globalne podcasty) dobrze wypada na claude-haiku-4-5-20251001 i gemini-3.5-flash, obu komfortowych z długimi, zaszumionymi transkrypcjami.
  • Ten podział to praktyczny argument Chiny-plus-reszta-świata za bramką: jeden endpoint, jeden klucz, a nadpisanie modelu per wideo wybiera właściwą rodzinę per źródło treści, zamiast wymuszać jednego dostawcę dla obu.
  • Długie wykłady nagradzają długi kontekst. Mniej kawałków oznacza mniej wywołań i bardziej spójne streszczenie; przetestuj identyfikator z długim kontekstem na swojej najdłuższej treści, zanim zestandaryzujesz.
  • Instancje wolumenowe (zespół streszczający wszystko, co ogląda) powinny domyślnie używać deepseek-v4-flash i eskalować selektywnie; kształt ciężki na wejściu sprawia, że cena z szybkiego tieru się kumuluje.

Płatność za użycie · poniżej cen oficjalnych

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

ModelCena oficjalnaNasza cena
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

Tryby awarii charakterystyczne dla BibiGPT.

Łańcuch fallbacków może Cię zaskoczyć. Jeśli OPENAI_COMPATIBLE_API_KEY jest pusta, aplikacja po cichu wraca do OPENAI_API_KEY. To wygodne, dopóki obie nie wskazują na różne usługi: base URL bramki z kluczem OpenAI produkuje błędy uwierzytelniania, które wyglądają jak problemy bramki. Gdy zmieniasz routing, ustaw parę z prefiksem compatible razem i nie zostawiaj nieaktualnej OPENAI_API_KEY wskazującej gdzie indziej, albo upewnij się, że trzyma ten sam klucz bramki. Walidator base URL odrzuca wartości bez schematu, więc goły host zawodzi szybko z jasnym błędem; dołącz https:// i ścieżkę /v1. Końcowe ukośniki są normalizowane, więc obie formy tam działają. Identyfikatory modeli to dokładne stringi względem listingu /v1/models endpointu; literówka w OPENAI_COMPATIBLE_MODEL zawodzi pierwsze streszczenie z model-not-found. Pamiętaj też o nadpisaniu per wideo: jeśli jeden przepływ wciąż używa starego modelu, coś przekazuje jawny model w konfiguracji żądania. Pobieranie transkrypcji to osobna instalacja. Jeśli wideo nie daje streszczenia, bo napisy albo audio nie mogły zostać pobrane, to problem pipeline'u treści (API platform, dostępność napisów), nie endpointu LLM. Zmienne środowiskowe w tym przewodniku przesuwają tylko wywołania streszczające. I zauważ, że hostowana usługa bibigpt.co zarządza własnymi modelami; te zmienne konfigurują open-source'ową v1, którą wdrażasz samodzielnie.

Kto kieruje BibiGPT przez bramkę.

  • Dwujęzyczni widzowie streszczający zarówno Bilibili, jak i YouTube, łączący identyfikatory mocne w chińskim z globalnymi za jednym kluczem zamiast jednego dostawcy per język.
  • Osoby hostujące samodzielnie w konfiguracjach bliskich Chinom, gdzie jeden endpoint kompatybilny z OpenAI, który serwuje też GLM, DeepSeek i Kimi, całkowicie usuwa problem rozliczeń z wieloma dostawcami.
  • Zespoły prowadzące wspólny streszczacz do spotkań i wykładów, mierzące użycie per klucz i domyślnie używające identyfikatorów z tieru wolumenowego.
  • Zapaleni słuchacze podcastów, gdzie godziny transkrypcji tygodniowo czynią cenę tokenów wejściowych całą historią kosztów.
  • Deweloperzy bez dostępu do rozliczeń danego dostawcy. Dostęp oparty na doładowaniu, bez wymogu karty, usuwa zależność od rejestracji u każdego dostawcy z osobna.

Zweryfikuj endpoint i debuguj pierwsze streszczenie.

Wylistuj modele, do których Twój klucz ma dostęp, i potwierdź, że identyfikator w OPENAI_COMPATIBLE_MODEL jest wśród nich; to jedno sprawdzenie zapobiega większości awarii pierwszego uruchomienia. Potem streść coś krótkiego. Błąd uwierzytelniania oznacza, że rozwiązany klucz nie pasuje do base URL, a biorąc pod uwagę łańcuch fallbacków, wypisz, która zmienna faktycznie dostarczyła klucz, zanim czegokolwiek założysz. Model-not-found to literówka w identyfikatorze. Błąd schematu przy starcie to base URL bez https://. Streszczenie, które nigdy nie startuje mimo zdrowego endpointu, to niepowodzenie pobrania transkrypcji, zanim dojdzie do jakiegokolwiek wywołania LLM. Gdy streszczenia już płyną, konsola APIsRouter pokazuje model per żądanie, liczbę tokenów i wydatki. Streszczanie transkrypcji to najbardziej klarowne obciążenie ciężkie na wejściu, jakie istnieje, a tydzień danych użycia mówi Ci prawdziwy koszt per godzina treści dla każdego modelu, co jest liczbą wartą optymalizacji.

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

Częste pytania

Czy BibiGPT wspiera niestandardowy base URL kompatybilny z OpenAI?

Tak. Samodzielnie hostowana v1 dokumentuje OPENAI_COMPATIBLE_BASE_URL, OPENAI_COMPATIBLE_API_KEY i OPENAI_COMPATIBLE_MODEL w swoim przykładowym pliku środowiskowym i buduje z nich dostawcę AI SDK. Ustaw base URL na endpoint bramki łącznie z /v1.

Czy BibiGPT może streszczać modelami GLM, DeepSeek, Kimi albo Claude?

Tak. Skonfigurowany identyfikator modelu jest przekazywany do endpointu jako zwykły string, więc działa dowolny identyfikator z katalogu: glm-5.2 i kimi-k2.6 dla treści chińskiej, claude-haiku-4-5-20251001 albo gemini-3.5-flash dla treści globalnej, wszystko na jednym kluczu.

Co się dzieje, jeśli OPENAI_COMPATIBLE_API_KEY nie jest ustawiona?

Aplikacja wraca do OPENAI_API_KEY. To w porządku, gdy obie wskazują na tę samą usługę, a mylące, gdy nie; przy używaniu bramki ustaw jawnie klucz z prefiksem compatible.

Czy użytkownicy mogą wnosić własne klucze bramki na współdzielonej instancji?

Tak. Klucze per żądanie nadpisują środowisko, a OPENAI_COMPATIBLE_KEY_PREFIXES kontroluje, jakie prefiksy kluczy akceptuje interfejs, więc współdzielony deployment może przyjmować klucze bramki wpisane przez użytkownika.

Dlaczego długie wideo kosztują więcej, niż sugeruje długość streszczenia?

Ponieważ wejściem jest transkrypcja. Godzina mowy to duża liczba tokenów wejściowych, podzielona na kilka wywołań, podczas gdy streszczenie na wyjściu jest małe. Cena tokenów wejściowych i obsługa długiego kontekstu napędzają koszt, a log użycia pokazuje go per wideo.

Czy te zmienne dotyczą hostowanej usługi bibigpt.co?

Nie. Hostowana usługa zarządza własnymi modelami po stronie serwera. Zmienne środowiskowe OPENAI_COMPATIBLE_* konfigurują open-source'ową BibiGPT v1, którą wdrażasz samodzielnie.