Arahkan NextChat ke endpoint serasi OpenAI custom.

Updated 2026-07-29

NextChat mengatasi hos API-nya dengan satu pembolehubah environment BASE_URL pada deployment pelayan, atau endpoint custom dalam app dalam Settings pada klien. Tambah id katalog melalui CUSTOM_MODELS dengan akhiran @OpenAI dan Claude, Gemini, dan DeepSeek muncul dalam pemilih model yang sama di bawah satu kunci.

Jawapan pantas: BASE_URL, satu kunci, dan senarai model.

Pada deployment pelayan (Vercel, Docker, atau Node biasa), tiga pembolehubah environment melakukan keseluruhan kerja. BASE_URL mengatasi ke mana permintaan API pergi; README menerangkannya sebagai "override openai api request base url" dengan lalai https://api.openai.com, dan nilai itu dimasukkan tanpa /v1 kerana NextChat melampirkan laluan permintaan itu sendiri. OPENAI_API_KEY membawa kunci gateway. CUSTOM_MODELS mengawal pemilih model: plus menambah model, minus menyembunyikan satu, -all mengosongkan senarai lalai, dan name=displayName menamakan semula entri. Perincian yang menjadikan id multi-vendor berfungsi ialah akhiran penyedia. NextChat menyediakan laluan kod klien berasingan untuk beberapa vendor, jadi id claude kosong yang ditambah ke CUSTOM_MODELS boleh muncul di bawah laluan Anthropic, yang mengharapkan kunci dan format permintaan berbeza. Melampirkan @OpenAI kepada id, seperti dalam +claude-sonnet-4-6@OpenAI, menyematkan model itu kepada laluan serasi OpenAI supaya permintaan pergi ke BASE_URL anda dalam format chat-completions standard tidak kira vendor mana yang melatih model itu.

BASE_URL=https://api.apisrouter.com        # no /v1
OPENAI_API_KEY=sk-APIsRouter-...
CUSTOM_MODELS=-all,+claude-sonnet-4-6@OpenAI,+gpt-5.5@OpenAI,+deepseek-v4-pro@OpenAI
DEFAULT_MODEL=claude-sonnet-4-6

Bagaimana NextChat menyelesaikan endpointnya.

NextChat (ChatGPTNextWeb di GitHub, lebih kurang 88K bintang) ialah salah satu frontend sembang yang paling banyak dideploy yang wujud: app web ringan dengan deployment Vercel satu-klik ditambah klien terpakej untuk iOS, macOS, Android, Windows, dan Linux. Populariti-nya datang tepat daripada mekanisme yang digunakan halaman ini, segala-galanya adalah permukaan konfigurasi, dan endpoint hanyalah satu lagi tetapan. Terdapat dua permukaan itu. Deployment pelayan membaca pembolehubah environment semasa build dan but: BASE_URL memutuskan hos, OPENAI_API_KEY mengesahkan, dan CUSTOM_MODELS membentuk pemilih untuk setiap pengguna deployment itu. Klien dan UI web turut mendedahkan laluan dalam-app: Settings, Model Provider, pilih OpenAI, kemudian isikan medan endpoint dan kunci dan senaraikan id tambahan dalam medan nama model custom. Laluan dalam-app menyimpan nilai secara tempatan per peranti, yang menjadikannya permukaan yang betul untuk klien peribadi, manakala env var adalah permukaan yang betul untuk deployment yang digunakan orang lain. Apa pun caranya, permintaan yang meninggalkan NextChat adalah chat completion standard terhadap endpoint anda dengan id model sebagai rentetan biasa. Dengan gateway multi-vendor di sebalik BASE_URL, deployment yang sama melayani Claude untuk jawapan panjang, id Gemini pantas untuk soalan pantas, dan DeepSeek atau GLM untuk trafik dwibahasa, kesemuanya melalui satu kunci.

Persediaan penuh: deployment pelayan atau tetapan dalam app.

Untuk deployment Vercel, tetapkan pembolehubah dalam tetapan environment projek dan deploy semula; Vercel membakar nilai env pada masa build, jadi menyunting pembolehubah tanpa deploy semula tidak menukar apa-apa. Untuk Docker, hantar pembolehubah yang sama dengan flag -e atau fail env. Pembolehubah CODE berbaloi ditetapkan pada mana-mana deployment awam, ia mengawal akses dengan kata laluan supaya orang asing tidak boleh membelanjakan kunci anda. Laluan dalam-app langsung tidak memerlukan deployment. Dalam Settings, pilih penyedia OpenAI, gantikan endpoint dengan https://api.apisrouter.com, tampal kunci itu, dan tambah id dalam medan nama model custom menggunakan sintaks yang sama seperti pembolehubah env. Ini adalah cara klien desktop dan mudah alih berfungsi dengan gateway, dan ia juga cara terpantas untuk menguji nilai sebelum komit kepada deployment pelayan. DEFAULT_MODEL memilih apa yang bermula sembang baharu, yang lebih penting daripada bunyinya pada deployment dikongsi: kebanyakan pengguna tidak pernah menukar model, jadi id lalai adalah tempat kebanyakan perbelanjaan mendarat. Tetapkan secara sengaja kepada model yang anda mahu membawa trafik biasa.

docker run -d -p 3000:3000 \
  -e BASE_URL=https://api.apisrouter.com \
  -e OPENAI_API_KEY=$APISROUTER_API_KEY \
  -e CUSTOM_MODELS="-all,+claude-sonnet-4-6@OpenAI,+claude-haiku-4-5-20251001@OpenAI,+gemini-3.5-flash@OpenAI" \
  -e DEFAULT_MODEL=claude-haiku-4-5-20251001 \
  -e CODE=your-access-password \
  yidadaa/chatgpt-next-web

Memilih model untuk pemilih.

Kerana keseluruhan pemilih dibilkan melalui satu kunci, gelung penalaan adalah pemerhatian: jalankan seminggu, baca penggunaan per-model dalam konsol, dan bentuk semula CUSTOM_MODELS di sekeliling apa yang benar-benar diklik orang dan bukan apa yang anda ramalkan.

  • Mulakan senarai dengan -all. Pemilih stok adalah menu panjang OpenAI-sahaja; mengosongkannya dan menambah empat atau lima id yang disengajakan memberi pengguna pemilih di mana setiap pilihan adalah satu yang anda telah tetapkan harganya.
  • Model lalai membawa deployment. claude-haiku-4-5-20251001 atau gemini-3.5-flash sebagai DEFAULT_MODEL mengekalkan majoriti giliran biasa pantas dan murah, dengan id lebih kuat sejauh satu klik.
  • Kerja bentuk panjang layak mendapat slot frontier. claude-sonnet-4-6 dan gpt-5.5 adalah pilihan yang dicapai pengguna apabila rangka atau analisis penting.
  • Deployment dwibahasa patut merangkumi deepseek-v4-pro atau glm-5.2; NextChat mempunyai pangkalan pemasangan bertutur Cina yang besar dan id itu sesuai dengan trafik itu secara natif.
  • Penamaan semula adalah dokumentasi percuma: entri gaya claude-sonnet-4-6=Sonnet (writing) menjadikan pemilih menjelaskan diri untuk pengguna bukan-teknikal.

Bayar mengikut penggunaan · bawah harga rasmi

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

ModelHarga RasmiHarga Kami
Claude Sonnet 4.6$3.00 / $15.00 per M$2.40 / $12.00 per M
Claude Haiku 4.5 20251001$1.00 / $5.00 per M$0.80 / $4.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
GLM-5.2$1.14 / $4.00 per M$1.10 / $4.00 per M

Mod kegagalan khusus NextChat.

Kesilapan /v1 berjalan dalam arah bertentangan daripada kebanyakan alat. NextChat melampirkan laluan permintaan kepada BASE_URL itu sendiri, jadi nilai itu tergolong tanpa /v1; menampal https://api.apisrouter.com/v1 menghasilkan laluan tergandakan yang menyebabkan 404. Alat seperti LibreChat mengharapkan /v1 disertakan, itulah tepat sebab orang membawa tabiat yang salah dalam kedua-dua arah. Id Claude yang memberi ralat tentang kunci atau header adalah akhiran @OpenAI yang hilang. Tanpanya, NextChat boleh menghalakan id itu melalui laluan Anthropic natifnya, yang tidak pernah merujuk BASE_URL untuk gateway anda dan mengharapkan pengesahan format-vendor. Sematkan setiap id gateway dengan @OpenAI dan semua permintaan mengambil laluan serasi. Suntingan env yang tidak menukar apa-apa adalah masalah deploy-semula. Pada Vercel pembolehubah dibaca semasa build; pada Docker kontainer perlu dicipta semula. Tetapan dalam-app, sebaliknya, terpakai serta-merta tetapi hanya pada peranti itu, separuh lain kekeliruan yang sama. CODE dan OPENAI_API_KEY ditukar ganti dengan mengejutkan kerap. CODE ialah kata laluan akses yang ditaip pengguna ke dalam UI; kunci itu adalah apa yang dibelanjakan pelayan. Jika pengguna melaporkan halaman tidak dibenarkan sebelum mana-mana sembang berlaku, itu adalah CODE; jika sembang gagal terhadap endpoint, itu adalah kunci.

Siapa yang menghalakan NextChat melalui gateway.

  • Orang yang menjalankan deployment peribadi pada Vercel yang mahukan satu kunci terukur di sebaliknya dan bukan langganan setiap vendor.
  • Pasukan kecil yang berkongsi instans NextChat, menggunakan CODE untuk kawalan akses dan satu kunci gateway supaya log penggunaan turut menjadi laporan kos.
  • Pengguna klien desktop dan mudah alih yang mengarahkan endpoint dalam-app ke gateway untuk mencapai Claude, Gemini, dan DeepSeek daripada satu pemilih pada setiap peranti.
  • Pengguna dwibahasa yang mencampurkan id GLM dan DeepSeek dengan Claude dan GPT dalam satu deployment, yang silo penyedia natif menjadikan janggal.
  • Pembangun tanpa akses kepada pengebilan vendor tertentu. Akses berasaskan top-up tanpa keperluan kad menghapuskan kebergantungan pendaftaran setiap penyedia.

Sahkan endpoint dan nyahpepijat sembang pertama.

Buktikan endpoint sebelum deploy: senaraikan model dengan kunci itu dan sahkan setiap id yang anda rancang letak dalam CUSTOM_MODELS muncul, dieja dengan tepat. Id itu diteruskan sebagai rentetan, jadi output /v1/models adalah ejaan berwibawa. Kemudian deploy dan hantar satu mesej per model dalam pemilih. 404 pada segala-galanya adalah kesilapan /v1-dalam-BASE_URL. 401 adalah kunci, sama ada salah atau tiada dalam environment yang benar-benar digunakan build itu. Ralat pada id Claude sahaja adalah akhiran @OpenAI yang hilang. Pemilih yang menunjukkan model yang tidak pernah anda tambah bermaksud CUSTOM_MODELS kehilangan awalan -all-nya atau pembolehubah itu tidak sampai ke build. Sebaik sahaja sembang mengalir, konsol APIsRouter menunjukkan model per permintaan, kiraan token, dan perbelanjaan. Bagi deployment dengan lebih daripada satu pengguna, pandangan itu menjawab soalan yang akhirnya ditanya setiap admin NextChat, model mana yang secara senyap memakan baki, dengan data dan bukan tekaan.

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

Soalan lazim

Patutkah BASE_URL NextChat merangkumi /v1?

Tidak. NextChat melampirkan laluan permintaan itu sendiri, jadi tetapkan BASE_URL=https://api.apisrouter.com tanpa /v1. Menyertakannya menghasilkan laluan tergandakan yang menyebabkan 404. Ini adalah konvensyen bertentangan daripada alat seperti LibreChat, yang mengharapkan /v1 dalam base URL.

Bagaimana saya menambah model Claude atau Gemini ke NextChat melalui satu endpoint?

Tambah dalam CUSTOM_MODELS dengan akhiran @OpenAI, contohnya +claude-sonnet-4-6@OpenAI. Akhiran itu menyematkan id kepada laluan permintaan serasi OpenAI supaya ia pergi ke BASE_URL anda, dan bukan laluan klien Anthropic atau Google natif NextChat.

Apa perbezaan antara pembolehubah env dan tetapan dalam-app?

Pembolehubah environment mengkonfigurasi deployment pelayan untuk setiap pengguna dan memerlukan deploy-semula untuk menukar. Endpoint custom dalam-app dalam Settings menyimpan nilai secara tempatan per peranti dan terpakai serta-merta, yang sesuai untuk klien desktop dan mudah alih peribadi.

Bagaimana saya membuang senarai model OpenAI lalai daripada pemilih?

Mulakan CUSTOM_MODELS dengan -all, kemudian tambah id secara eksplisit: CUSTOM_MODELS=-all,+claude-sonnet-4-6@OpenAI,+gpt-5.5@OpenAI. Pengguna kemudian hanya melihat model yang anda senaraikan dan tetapkan harganya secara sengaja.

Apa yang dilakukan pembolehubah CODE?

Ia menetapkan satu atau lebih kata laluan akses untuk deployment. Pelawat mesti memasukkan kod sebelum bersembang, yang mengelakkan URL Vercel awam daripada membelanjakan kunci anda. Ia tidak berkaitan dengan API key itu sendiri.

Mengapa menukar pembolehubah environment tiada kesan?

NextChat membaca nilai env semasa build atau permulaan kontainer. Pada Vercel, edit pembolehubah dan deploy semula; pada Docker, cipta semula kontainer. Hanya tetapan dalam-app terpakai tanpa mula semula, dan itu wujud per peranti.