Hubungkan Open WebUI ke endpoint OpenAI-compatible kustom.
Updated 2026-07-29
Open WebUI memperlakukan koneksi OpenAI-compatible sebagai pengaturan admin kelas satu: tambahkan koneksi di bawah Admin Settings dengan https://api.apisrouter.com/v1 dan satu key, dan setiap model katalog muncul di selector model untuk semua pengguna Anda, di samping apa pun yang berjalan lokal.
Jawaban singkat: satu koneksi di Admin Settings.
Sebagai admin, buka Admin Settings, masuk ke Connections, dan di bawah bagian OpenAI API klik untuk menambah koneksi. Dua field yang penting: URL, diatur ke https://api.apisrouter.com/v1, dan API key. Simpan, dan Open WebUI mengkueri listing /v1/models endpoint untuk mengisi selector model; verifikasi dengan kontrol cek koneksi, lalu pilih id katalog apa pun di chat baru. Koneksi yang ditambahkan dengan cara ini berlaku untuk seluruh workspace: setiap pengguna instance Open WebUI Anda melihat model-modelnya, tergantung kontrol akses-model apa pun yang Anda konfigurasikan. Nilai yang sama bisa dikirim sebagai environment variable saat deploy time sebagai gantinya, OPENAI_API_BASE_URL dan OPENAI_API_KEY, yang merupakan jalur lebih bersih saat instance-nya diprovisikan oleh file compose alih-alih diklik ke bentuk.
URL: https://api.apisrouter.com/v1
API Key: sk-YOUR-APISROUTER-KEY
Save → model terisi otomatis dari /v1/models
(opsional) Allowlist Model IDs untuk mengurasi selectorBagaimana Open WebUI menggunakan koneksi OpenAI.
Open WebUI (sekitar 145K bintang GitHub) adalah front end chat AI self-hosted default: client web berfitur lengkap dengan pengguna dan izin, RAG dan koleksi knowledge, penggunaan tool, dan manajemen model, klasiknya dipasangkan dengan Ollama untuk model lokal tapi sama nyamannya berbicara dengan API remote. Model koneksinya bersifat aditif. Bagian Ollama mencakup runtime lokal; bagian OpenAI API mencakup endpoint apa pun yang berbicara dialek chat-completions standar, dan Anda bisa menambah beberapa koneksi berdampingan. Setiap koneksi menyumbangkan daftar model-nya ke selector bersama, masing-masing punya key sendiri, dan masing-masing bisa dimatikan tanpa menghapus konfigurasinya. Request membawa id model sebagai string biasa ke koneksi mana pun yang melayaninya. Desain itu berarti koneksi gateway tidak menggantikan apa pun: model lokal Anda tetap berjalan melalui Ollama tanpa biaya per token, sementara claude-sonnet-4-6, gpt-5.5, gemini-3.5-flash, dan deepseek-v4-pro menjadi entri selector untuk percakapan yang butuh kualitas frontier. Satu key mencakup semuanya, dan penggunaan sisi admin tetap terbaca karena traffic cloud keluar melalui persis satu tempat.
Setup saat deploy: environment variable.
Untuk deployment docker-compose dan Kubernetes, koneksinya bisa menjadi bagian dari manifest. OPENAI_API_BASE_URL mengambil endpoint dan OPENAI_API_KEY key-nya; instance-nya hidup dengan koneksi sudah ada. Beberapa endpoint didukung melalui bentuk jamak (OPENAI_API_BASE_URLS dan OPENAI_API_KEYS dengan nilai dipisahkan titik koma) jika Anda menjalankan lebih dari satu sumber remote. Dua catatan operasional. Pertama, nilai yang diatur melalui UI bertahan di database Open WebUI dan diprioritaskan di atas default environment setelah boot pertama, perilaku terdokumentasi yang rutin mengejutkan operator yang mengubah env dan melihat tidak ada yang terjadi; sesuaikan koneksi yang ada di Admin Settings, atau atur ENABLE_PERSISTENT_CONFIG=false jika Anda ingin environment tetap otoritatif. Kedua, jika listing model endpoint besar, gunakan allowlist Model IDs koneksi untuk mengurasi apa yang dilihat pengguna Anda; selector empat-item digunakan, yang dua-ratus-item di-scroll lewat. Catatan versi: kata-kata menu sudah bergeser di sepanjang laju rilis cepat proyek (Settings vs Admin Settings, nama bagian di dalam Connections), jadi pada build lama cari pasangan OpenAI API base URL dan key di mana pun koneksi berada.
services:
open-webui:
image: ghcr.io/open-webui/open-webui:main
environment:
- OPENAI_API_BASE_URL=https://api.apisrouter.com/v1
- OPENAI_API_KEY=sk-YOUR-APISROUTER-KEY
ports:
- "3000:8080"Memilih model untuk workspace multi-pengguna.
Dengan setiap model cloud ditagih melalui satu key, A/B testing adalah pilihan selector. Jalankan beban kerja tim yang sama dua minggu terpisah pada dua kandidat default dan biarkan tampilan penggunaan per model di konsol APIsRouter menjadi wasit, per model dan per hari, alih-alih menebak dari benchmark.
- Pilihan model-default melakukan pekerjaan paling banyak pada instance bersama. claude-haiku-4-5-20251001 atau gemini-3.5-flash sebagai default workspace menjaga biaya per percakapan dari penggunaan kasual tetap datar.
- claude-sonnet-4-6 dan gpt-5.5 tergolong di selector untuk penyusunan draf, analisis, dan pertanyaan kode; pengguna naik level saat tugasnya pantas.
- Pipeline RAG melipatgandakan token input: setiap jawaban membawa chunk yang diambil. deepseek-v4-pro layak diuji sebagai kuda beban RAG, di mana penanganan long-context per token yang dihabiskan adalah sifat penentunya.
- Jaga materi yang benar-benar pribadi pada model lokal melalui Ollama dan rutekan semua yang lain melalui gateway; selector-nya menjaga kedua jalur secara jujur.
- Gunakan allowlist Model IDs sebagai kebijakan: apa yang tidak ada di selector tidak bisa mengejutkan Anda di log penggunaan.
Bayar sesuai pemakaian · di bawah harga resmi
Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.
| Model | Harga Resmi | Harga Kami |
|---|---|---|
| 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.5 | $5.00 / $30.00 per M | $4.00 / $24.00 per M |
| Gemini 3.5 Flash | $1.50 / $9.00 per M | $1.20 / $7.20 per M |
| DeepSeek V4 Pro | $0.43 / $0.87 per M | $0.40 / $0.90 per M |
Mode kegagalan spesifik Open WebUI.
Tidak ada model yang muncul setelah menambah koneksi adalah laporan paling umum. Penyebabnya berurutan: key gagal terhadap /v1/models (cek dengan kontrol verifikasi koneksi), URL kehilangan suffix /v1-nya, atau toggle koneksinya mati. Open WebUI membangun selector dari apa yang dikembalikan listing, jadi selector kosong berarti panggilan listing gagal atau tidak mengembalikan apa-apa. Perubahan environment yang tampak diabaikan adalah aturan persistent-config yang dijelaskan di atas: setelah boot pertama, database menang atas environment untuk pengaturan yang dikelola UI. Edit koneksinya di Admin Settings atau matikan persistent config secara eksplisit. Model yang terdaftar tapi error saat chat biasanya adalah id yang diekspos listing tapi key Anda tidak bisa menggunakannya, atau salah ketik yang diperkenalkan dengan mengedit allowlist Model IDs dengan tangan; bandingkan dengan output mentah /v1/models. Dan jaga jalurnya tetap lurus saat debug: masalah koneksi Ollama dan masalah koneksi OpenAI terlihat identik dari jendela chat. Halaman Connections menunjukkan jalur mana milik model mana; uji jalur yang gagal secara langsung sebelum berasumsi seluruh instance-nya down.
Siapa yang merutekan Open WebUI melalui gateway.
- Tim yang self-host satu front end chat untuk semua orang yang ingin model frontier tersedia tanpa menerbitkan key vendor ke masing-masing pengguna.
- Pengguna Ollama yang menyimpan model lokal untuk kerja pribadi tapi ingin kualitas Claude dan GPT di selector yang sama untuk percakapan yang membutuhkannya.
- Admin yang butuh tagihan cloud terbaca: satu koneksi, satu key, dan log penggunaan per model alih-alih struk dari empat vendor.
- Operator di region di mana beberapa sign-up vendor menyakitkan; akses berbasis top-up tanpa syarat kartu menghilangkan ketergantungan per provider.
- Homelabber yang menjalankan Open WebUI untuk rumah tangga, di mana satu saldo prabayar lebih mudah dinalar daripada langganan apa pun.
Verifikasi endpoint dan debug chat pertama.
Buktikan endpoint dari server dulu, khususnya pada deployment containerized di mana jaringan container-nya bukan laptop Anda. Listing model dan satu chat completion dari dalam host mengonfirmasi separuh gateway sebelum Open WebUI masuk ke gambar. Lalu tambahkan koneksinya dan amati selector terisi. Error autentikasi adalah field key; selector kosong adalah panggilan listing; path ganda (/v1/v1/...) di log server berarti field URL sudah membawa /v1 dan sesuatu menambahkan satu lagi, jadi baca URL-nya persis seperti tersimpan. Setelah chat mengalir, konsol APIsRouter menunjukkan model per request, hitungan token, dan pengeluaran. Untuk instance multi-pengguna ini adalah angka yang penting: model mana yang benar-benar dipilih pengguna Anda, dan berapa biaya seminggu workspace sebenarnya, per model, per hari, di satu halaman.
curl -s https://api.apisrouter.com/v1/models \
-H "Authorization: Bearer $APISROUTER_API_KEY" | head -50
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"}]}'Pertanyaan umum
Bagaimana cara menambah endpoint OpenAI API kustom ke Open WebUI?
Di Admin Settings, buka Connections dan tambahkan koneksi di bawah bagian OpenAI API: URL https://api.apisrouter.com/v1 plus key Anda. Simpan dan selector model terisi dari listing /v1/models endpoint; gunakan allowlist Model IDs untuk mengurasinya.
Apakah URL-nya butuh suffix /v1?
Ya. Open WebUI menambahkan path route seperti /chat/completions ke base URL yang Anda berikan, jadi nilai yang benar adalah https://api.apisrouter.com/v1. Suffix yang hilang muncul sebagai daftar model kosong; yang ganda muncul sebagai 404 /v1/v1 di log.
Bisakah saya menjalankan Ollama dan koneksi gateway pada saat yang sama?
Ya, dan itu setup standarnya. Koneksi Ollama dan koneksi OpenAI API adalah bagian terpisah yang keduanya menyuplai selector model, jadi model lokal dan id katalog seperti claude-sonnet-4-6 duduk berdampingan, setiap percakapan memilih jalurnya.
Mengapa perubahan environment variable saya diabaikan?
Open WebUI menyimpan pengaturan ke database-nya setelah boot pertama, dan nilai yang tersimpan diprioritaskan di atas default environment. Edit koneksinya di Admin Settings sebagai gantinya, atau atur ENABLE_PERSISTENT_CONFIG=false agar environment tetap otoritatif lintas restart.
Apakah semua pengguna melihat model dari koneksi admin?
Koneksi yang ditambahkan di Admin Settings berlaku untuk seluruh workspace secara default, tergantung kontrol akses-model dan izin-workspace yang ditawarkan versi Anda. Kurasi selectornya dengan allowlist Model IDs dan pengaturan akses per model alih-alih key per pengguna.
Bisakah Open WebUI menjangkau Claude dan Gemini melalui satu koneksi OpenAI?
Ya. Koneksinya berbicara chat completions standar dan meneruskan id model sebagai string biasa, jadi id apa pun yang dilayani gateway berfungsi: id Claude, Gemini, DeepSeek, dan GPT semuanya melalui satu URL dan satu key.