Ikonekta ang Open WebUI sa isang custom OpenAI-compatible endpoint.

Updated 2026-07-29

Itinuturing ng Open WebUI ang mga OpenAI-compatible na koneksyon bilang first-class na admin setting: magdagdag ng koneksyon sa ilalim ng Admin Settings gamit ang https://api.apisrouter.com/v1 at isang key, at lilitaw ang bawat model ng katalogo sa model selector para sa lahat ng user mo, katabi ng anumang tumatakbo nang lokal.

Mabilisang sagot: isang koneksyon sa Admin Settings.

Bilang admin, buksan ang Admin Settings, pumunta sa Connections, at sa ilalim ng seksyon ng OpenAI API i-click para magdagdag ng koneksyon. Dalawang field ang mahalaga: ang URL, na naka-set sa https://api.apisrouter.com/v1, at ang API key. I-save, at kinukuha ng Open WebUI ang listahan ng /v1/models ng endpoint para punan ang model selector; kumpirmahin gamit ang check control ng koneksyon, pagkatapos ay pumili ng anumang catalog id sa isang bagong chat. Ang mga koneksyon na idinagdag sa paraang ito ay workspace-wide: nakikita ng bawat user ng instance mo ng Open WebUI ang mga model, alinsunod sa anumang mga kontrol ng model-access na na-configure mo. Maaari ring lumabas ang parehong mga value bilang mga environment variable sa oras ng deploy sa halip, ang OPENAI_API_BASE_URL at OPENAI_API_KEY, na siyang mas malinis na path kapag ang instance ay itinatayo ng mga compose file sa halip na na-click sa hugis.

URL:      https://api.apisrouter.com/v1
API Key:  sk-YOUR-APISROUTER-KEY

Save → models auto-populate from /v1/models
(optional) Model IDs allowlist to curate the selector

Paano ginagamit ng Open WebUI ang mga koneksyon sa OpenAI.

Ang Open WebUI (humigit-kumulang 145K GitHub stars) ang default na self-hosted na AI chat front end: isang buong-feature na web client na may mga user at permissions, RAG at koleksyon ng kaalaman, tool calling, at pamamahala ng model, na klasikong pinapares sa Ollama para sa mga lokal na model pero kasing-ginhawa ring nakikipag-usap sa mga remote na API. Additive ang connection model nito. Sinasakop ng seksyon ng Ollama ang mga lokal na runtime; sinasakop ng seksyon ng OpenAI API ang anumang endpoint na nagsasalita ng standard na chat-completions na dialect, at maaari kang magdagdag ng ilang koneksyon magkatabi. Nag-aambag ang bawat koneksyon ng model list nito sa shared na selector, may sarili itong key, at maaaring i-off nang hindi tinatanggal ang configuration nito. Nagdadala ang mga request ng model id bilang plain string patungo sa alinmang koneksyon na nagsisilbi rito. Ibig sabihin ng disenyong iyon, hindi pinapalitan ng isang koneksyon sa gateway ang anuman: nagpapatuloy na tumatakbo ang mga lokal mong model sa pamamagitan ng Ollama nang walang bayad kada token, habang ang claude-sonnet-4-6, gpt-5.5, gemini-3.5-flash, at deepseek-v4-pro ay nagiging mga entry sa selector para sa mga usapang kailangan ng kalidad na frontier. Isang key ang sumasakop sa lahat ng ito, at nananatiling mababasa ang usage sa panig ng admin dahil lumalabas ang cloud traffic sa eksaktong isang lugar.

Setup sa oras ng deploy: mga environment variable.

Para sa mga deployment ng docker-compose at Kubernetes, maaaring maging bahagi ng manifest ang koneksyon. Kinukuha ng OPENAI_API_BASE_URL ang endpoint at kinukuha ng OPENAI_API_KEY ang key; nagsisimula ang instance na nariyan na ang koneksyon. Sinusuportahan ang maraming endpoint sa pamamagitan ng mga plural na anyo (OPENAI_API_BASE_URLS at OPENAI_API_KEYS na may semicolon-separated na value) kung nagpapatakbo ka ng higit sa isang remote na source. Dalawang operational na paalala. Una, nananatili sa database ng Open WebUI ang mga value na na-set sa pamamagitan ng UI at may priyoridad ang mga ito laban sa mga default ng environment pagkatapos ng unang boot, isang naka-document na gawi na regular na nagugulat sa mga operator na nagbabago ng env at walang nangyayari; i-adjust ang mga umiiral na koneksyon sa Admin Settings, o itakda ang ENABLE_PERSISTENT_CONFIG=false kung gusto mong manatiling authoritative ang environment. Pangalawa, kung malaki ang model listing ng endpoint, gamitin ang Model IDs allowlist ng koneksyon para pumili kung ano ang makikita ng mga user mo; ginagamit ang isang apat-item na selector, sini-scroll lamang ang isang dalawang-daang-item. Paalala sa bersyon: bahagyang nagbago ang pananalita ng menu sa mabilis na release cadence ng proyekto (Settings vs Admin Settings, mga pangalan ng seksyon sa loob ng Connections), kaya sa mga mas lumang build, hanapin ang pares na OpenAI API base URL at key kahit saan nakatira ang mga koneksyon.

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"

Pagpili ng mga model para sa isang multi-user na workspace.

Dahil bini-bill ang bawat cloud model sa isang key, ang A/B testing ay isang pagpili sa selector. Patakbuhin ang parehong workload ng team dalawang linggo ang layo sa dalawang kandidatong default at hayaang mag-referee ang per-model na usage view sa APIsRouter console, bawat model at bawat araw, sa halip na maghula mula sa mga benchmark.

  • Ang pagpili ng default-model ang gumagawa ng pinakamalaking bahagi sa isang shared na instance. Ang claude-haiku-4-5-20251001 o gemini-3.5-flash bilang default ng workspace ay pinananatiling patag ang gastos bawat usapan ng casual na paggamit.
  • Nabibilang ang claude-sonnet-4-6 at gpt-5.5 sa selector para sa drafting, analysis, at mga tanong sa code; umaakyat ang mga user kapag karapat-dapat ang gawain.
  • Pinaparami ng mga RAG pipeline ang mga input token: bawat sagot ay may dalang mga kinuhang chunk. Sulit i-test ang deepseek-v4-pro bilang workhorse ng RAG, kung saan ang paghawak nito ng mahabang context bawat token na ginastos ang nagpapasya.
  • Panatilihin ang tunay na pribadong materyal sa mga lokal na model sa pamamagitan ng Ollama at iruruta ang lahat ng iba pa sa pamamagitan ng gateway; hinahawakan ng selector ang dalawang lane nang tapat.
  • Gamitin ang Model IDs allowlist bilang patakaran: ang wala sa selector ay hindi makakagulat sa iyo sa usage log.

Pay-as-you-go · mas mababa sa opisyal na presyo

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

ModelOpisyal na PresyoAming Presyo
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

Mga failure mode na specific sa Open WebUI.

Ang walang lumitaw na model pagkatapos magdagdag ng koneksyon ang pinaka-madalas na ulat. Ang mga sanhi ay naka-rangking: nabigo ang key laban sa /v1/models (suriin gamit ang verify control ng koneksyon), kulang ang /v1 suffix ng URL, o naka-off ang toggle ng koneksyon. Binubuo ng Open WebUI ang selector mula sa ibinabalik ng listing, kaya ang isang walang-lamang selector ay nangangahulugang nabigo o walang ibinalik ang tawag ng listing. Ang mga pagbabago sa environment na tila binalewala ay ang panuntunan ng persistent-config na inilarawan sa itaas: pagkatapos ng unang boot, nananalo ang database laban sa environment para sa mga setting na pinamamahalaan ng UI. I-edit ang koneksyon sa Admin Settings o i-disable nang tahasan ang persistent config. Ang isang model na naka-lista pero nagki-error sa chat ay karaniwang isang id na inilalantad ng listing pero hindi kaya ng key mo, o isang typo na dulot ng manu-manong pag-e-edit ng allowlist ng Model IDs; ihambing laban sa raw na tugon ng /v1/models. At panatilihing tuwid ang mga lane kapag nagde-debug: magkamukha mula sa chat window ang mga problema sa koneksyon ng Ollama at OpenAI. Ipinapakita ng Connections page kung saang lane nabibilang ang isang model; i-test muna ang nabigong lane diretso bago isipin na patay ang buong instance.

Sino ang nagru-route ng Open WebUI sa pamamagitan ng isang gateway.

  • Mga team na nag-se-self-host ng isang chat front end para sa lahat na gustong maabot ang mga frontier na model nang hindi nagbibigay ng mga vendor key sa indibidwal na user.
  • Mga user ng Ollama na nagpapanatili ng mga lokal na model para sa pribadong trabaho pero gusto ang kalidad ng Claude at GPT sa parehong selector para sa mga usapang kailangan nito.
  • Mga admin na kailangang mababasa ang cloud bill: isang koneksyon, isang key, at isang usage log bawat model sa halip na mga resibo mula sa apat na vendor.
  • Mga operator sa mga rehiyon kung saan masakit ang ilang vendor sign-up; inaalis ng top-up based na access na walang kailangang card ang per-provider na dependency.
  • Mga homelabber na nagpapatakbo ng Open WebUI para sa sambahayan, kung saan mas madaling isipin ang isang prepaid balance kaysa sa anumang subscription.

I-verify ang endpoint at i-debug ang unang chat.

Patunayan muna ang endpoint mula sa server, lalo na sa mga containerized na deployment kung saan ang network ng container ay hindi ang laptop mo. Kumpirmahin ng isang model listing at isang chat completion mula sa loob ng host ang panig ng gateway bago pumasok ang Open WebUI sa larawan. Pagkatapos, idagdag ang koneksyon at panoorin ang pagpuno ng selector. Ang mga error sa authentication ay ang key field; ang isang walang-laman na selector ay ang tawag ng listing; ang isang dinobleng path (/v1/v1/...) sa mga log ng server ay nangangahulugang may /v1 na ang URL field at may nagdagdag pa ng isa, kaya basahin ang URL nang eksakto ayon sa na-save. Kapag dumadaloy na ang mga chat, ipinapakita ng APIsRouter console ang per-request na model, token counts, at gastos. Para sa isang multi-user na instance, ito ang bilang na mahalaga: aling mga model talaga ang pinipili ng mga user mo, at magkano talaga ang gastos ng isang linggo ng workspace, bawat model, bawat araw, sa isang pahina.

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"}]}'

Mga madalas itanong

Paano ako magdadagdag ng custom OpenAI API endpoint sa Open WebUI?

Sa Admin Settings, buksan ang Connections at magdagdag ng koneksyon sa ilalim ng seksyon ng OpenAI API: URL na https://api.apisrouter.com/v1 kasama ang key mo. I-save at napupuno ang model selector mula sa listahan ng /v1/models ng endpoint; gamitin ang Model IDs allowlist para pumili.

Kailangan ba ng /v1 suffix ang URL?

Oo. Idinaragdag ng Open WebUI ang mga route path tulad ng /chat/completions sa base URL na ibinigay mo, kaya ang tamang value ay https://api.apisrouter.com/v1. Ang isang nawawalang suffix ay lumilitaw bilang walang-laman na model list; ang isang dinoble ay lumilitaw bilang /v1/v1 na 404 sa mga log.

Maaari ba akong magpatakbo ng Ollama at isang koneksyon sa gateway nang sabay?

Oo, at ito ang standard na setup. Hiwalay na seksyon ang mga koneksyon ng Ollama at OpenAI API na parehong nagpapakain sa model selector, kaya umuupo magkatabi ang mga lokal na model at mga catalog id tulad ng claude-sonnet-4-6, na pumipili ng lane ang bawat usapan.

Bakit binabalewala ang mga pagbabago ko sa environment variable?

Nananatili ang Open WebUI ng mga setting sa database nito pagkatapos ng unang boot, at may priyoridad ang mga naka-imbak na value laban sa mga default ng environment. I-edit ang koneksyon sa Admin Settings sa halip, o itakda ang ENABLE_PERSISTENT_CONFIG=false para manatiling authoritative ang environment sa mga restart.

Nakikita ba ng lahat ng user ang mga model mula sa isang koneksyon ng admin?

Workspace-wide bilang default ang mga koneksyong idinagdag sa Admin Settings, alinsunod sa mga kontrol ng model-access at workspace-permission na inaalok ng bersyon mo. Piliin ang selector gamit ang Model IDs allowlist at mga per-model na access setting sa halip na per-user na key.

Maaari bang maabot ng Open WebUI ang Claude at Gemini sa pamamagitan ng isang koneksyon sa OpenAI?

Oo. Nagsasalita ang koneksyon ng standard na chat completions at ipinapasa ang model id bilang plain string, kaya gumagana ang anumang id na si-serve ng gateway: mga id ng Claude, Gemini, DeepSeek, at GPT lahat sa isang URL at isang key.