NextChat को एक custom OpenAI-compatible endpoint पर point करें।

Updated 2026-07-29

NextChat server deploys पर एक BASE_URL environment variable से अपना API host override करता है, या clients पर Settings में एक in-app custom endpoint से। @OpenAI suffix के साथ CUSTOM_MODELS के through catalog ids add करें और Claude, Gemini, और DeepSeek एक key के तहत same model picker में दिखते हैं।

Quick answer: BASE_URL, एक key, और एक models list।

एक server deploy (Vercel, Docker, या bare Node) पर, तीन environment variables पूरा काम करते हैं। BASE_URL तय करता है कि API requests कहां जाएं; README इसे "override openai api request base url" describe करता है जिसका default https://api.openai.com है, और value बिना /v1 के enter होती है क्योंकि NextChat खुद request path append करता है। OPENAI_API_KEY gateway key carry करती है। CUSTOM_MODELS model picker control करता है: plus एक model add करता है, minus एक hide करता है, -all default list clear करता है, और name=displayName एक entry rename करता है। वह detail जो multi-vendor ids को काम करने देता है वह provider suffix है। NextChat कई vendors के लिए अलग client code paths ship करता है, तो CUSTOM_MODELS में add किया गया एक bare claude id Anthropic path के तहत सामने आ सकता है, जो एक अलग key और request format expect करता है। id में @OpenAI append करना, जैसे +claude-sonnet-4-6@OpenAI, model को OpenAI-compatible path पर pin करता है ताकि request model को किसने train किया इस बात की परवाह किए बिना standard chat-completions format में आपके BASE_URL को जाए।

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

NextChat अपना endpoint कैसे resolve करता है।

NextChat (GitHub पर ChatGPTNextWeb, लगभग 88K stars) आज तक deploy हुए सबसे ज़्यादा chat frontends में से एक है: एक हल्का web app जिसका one-click Vercel deployment है, साथ ही iOS, macOS, Android, Windows, और Linux के लिए packaged clients। इसकी popularity exactly इसी mechanism से आती है जो यह page इस्तेमाल करता है, हर चीज़ एक configuration surface है, और endpoint बस एक और setting है। इनमें से दो surfaces हैं। Server deploys build और boot पर environment variables पढ़ते हैं: BASE_URL host तय करता है, OPENAI_API_KEY authenticate करता है, और CUSTOM_MODELS उस deployment के हर user के लिए picker shape करता है। Clients और web UI इसके अलावा एक in-app path भी expose करते हैं: Settings, Model Provider, OpenAI चुनें, फिर endpoint और key fields भरें और custom model names field में extra ids list करें। In-app path values को per device locally store करता है, जो इसे एक personal client के लिए सही surface बनाता है, जबकि env vars एक ऐसे deployment के लिए सही surface हैं जो दूसरे लोग इस्तेमाल करें। किसी भी तरह, NextChat से निकलने वाली request model id को एक plain string के तौर पर लिए हुए आपके endpoint के against एक standard chat completion है। BASE_URL के पीछे एक multi-vendor gateway के साथ, same deployment लंबे answers के लिए Claude, quick questions के लिए एक fast Gemini id, और bilingual traffic के लिए DeepSeek या GLM serve करता है, सबके पीछे एक key।

पूरा setup: server deploy या in-app settings।

एक Vercel deploy के लिए, project की environment settings में variables set करें और redeploy करें; Vercel build पर env values bake करता है, तो redeploy किए बिना एक variable edit करना कुछ नहीं बदलता। Docker के लिए, -e flags या एक env file के साथ same variables pass करें। CODE variable किसी भी public deployment पर set करने लायक है, यह access को एक password से gate करता है ताकि strangers आपकी key खर्च न कर सकें। In-app path को किसी deployment की ज़रूरत बिल्कुल नहीं है। Settings में, OpenAI provider चुनें, endpoint को https://api.apisrouter.com से replace करें, key paste करें, और custom model names field में same syntax इस्तेमाल करते हुए ids add करें जो env variable में इस्तेमाल होता है। यही तरीका है जिससे desktop और mobile clients एक gateway के साथ काम करते हैं, और यह server deploy में commit करने से पहले values test करने का सबसे तेज़ तरीका भी है। DEFAULT_MODEL तय करता है कि नई chats किस पर शुरू हों, जो एक shared deployment पर सुनने से ज़्यादा matter करता है: ज़्यादातर users कभी model नहीं बदलते, तो default id वह जगह है जहां ज़्यादातर spend जाता है। इसे deliberately उस model पर set करें जिसे आप casual traffic carry करते देखना चाहते हैं।

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

Picker के लिए models चुनना।

चूंकि पूरा picker एक key से bill होता है, tuning loop observational है: एक हफ्ता चलाएं, console में per-model usage पढ़ें, और CUSTOM_MODELS को इस आधार पर reshape करें कि लोगों ने actually क्या क्लिक किया, न कि आपने क्या predict किया।

  • List को -all से शुरू करें। Stock picker एक लंबा OpenAI-only menu है; इसे clear करके सोच-समझकर चार-पांच ids add करना users को एक ऐसा picker देता है जिसमें हर choice वह है जिसे आपने price किया।
  • Default model deployment को carry करता है। DEFAULT_MODEL के तौर पर claude-haiku-4-5-20251001 या gemini-3.5-flash casual turns के majority को fast और सस्ता रखता है, stronger ids एक क्लिक दूर।
  • Long-form work एक frontier slot कमाता है। claude-sonnet-4-6 और gpt-5.5 वे picks हैं जो users तब पहुंचते हैं जब कोई draft या analysis matter करता है।
  • Bilingual deployments में deepseek-v4-pro या glm-5.2 शामिल होने चाहिए; NextChat का Chinese-speaking install base बहुत बड़ा है और ये ids उस traffic को natively fit करती हैं।
  • Renames free documentation हैं: claude-sonnet-4-6=Sonnet (writing) style entries picker को non-technical users के लिए self-explanatory बनाती हैं।

जितना उपयोग उतना भुगतान · आधिकारिक मूल्य से कम

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

मॉडलआधिकारिक मूल्यहमारा मूल्य
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

NextChat के लिए specific failure modes।

/v1 वाली mistake ज़्यादातर tools की उल्टी direction में चलती है। NextChat खुद BASE_URL में request path append करता है, तो value बिना /v1 के होनी चाहिए; https://api.apisrouter.com/v1 paste करना doubled paths बनाता है जो 404 देते हैं। LibreChat जैसे tools /v1 को base URL में शामिल expect करते हैं, यही वजह है कि लोग दोनों directions में गलत habit carry करते हैं। एक Claude id जो keys या headers के बारे में error देती है वह missing @OpenAI suffix है। इसके बिना, NextChat id को native Anthropic path से route कर सकता है, जो कभी आपके gateway के लिए BASE_URL consult नहीं करता और vendor-format authentication expect करता है। हर gateway id को @OpenAI से pin करें और सभी requests compatible path लेती हैं। Env edits जो कुछ नहीं बदलती एक redeploy problem है। Vercel पर variables build पर पढ़े जाते हैं; Docker पर container को recreate करना होता है। In-app settings, इसके उलट, तुरंत apply होती हैं लेकिन सिर्फ उस device पर, जो same confusion का दूसरा half है। CODE और OPENAI_API_KEY अक्सर हैरान करने वाले तरीके से swap हो जाते हैं। CODE वह access password है जो users UI में type करते हैं; key वह है जो server खर्च करता है। अगर users किसी भी chat से पहले unauthorized page report करते हैं, वह CODE है; अगर chats endpoint के against fail होती हैं, वह key है।

कौन NextChat को एक gateway के through route करता है।

  • Vercel पर एक personal deployment चलाने वाले लोग जो per vendor subscription की बजाय इसके पीछे एक metered key चाहते हैं।
  • Small teams जो एक NextChat instance share करती हैं, access control के लिए CODE और एक gateway key इस्तेमाल करते हुए ताकि usage log ही cost report बने।
  • Desktop और mobile client users जो हर device से Claude, Gemini, और DeepSeek तक एक picker से पहुंचने के लिए in-app endpoint को gateway पर point करते हैं।
  • Bilingual users जो एक deployment में GLM और DeepSeek ids को Claude और GPT के साथ mix करते हैं, जिसे native provider silos अजीब बना देते हैं।
  • Developers जिनके पास किसी given vendor की billing तक access नहीं है। बिना card requirement वाला top-up based access per-provider sign-up dependency हटा देता है।

Endpoint verify करें और पहली chat को debug करें।

Deploy करने से पहले endpoint साबित करें: key से models list करें और confirm करें कि आप CUSTOM_MODELS में जो भी id डालने की योजना बना रहे हैं वह exactly वैसे ही spelled दिखती है। Ids strings के तौर पर forward होती हैं, तो /v1/models output authoritative spelling है। फिर deploy करें और picker के हर model पर एक message भेजें। हर चीज़ पर 404 का मतलब है BASE_URL-में-/v1 वाली mistake। 401 key है, या तो गलत है या build ने जो environment actually इस्तेमाल किया उसमें present नहीं है। सिर्फ Claude ids पर error missing @OpenAI suffix है। Picker में ऐसे models दिखना जो आपने कभी add नहीं किए मतलब CUSTOM_MODELS ने अपना -all prefix खो दिया या variable build तक नहीं पहुंचा। जब chats चलने लगें, APIsRouter console per-request model, token counts, और spend दिखाता है। एक से ज़्यादा user वाले deployment के लिए, वह view हर NextChat admin के आखिरकार पूछे जाने वाले सवाल का जवाब देता है, कौन-सा model चुपचाप balance खा रहा है, guess नहीं data के साथ।

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

अक्सर पूछे जाने वाले प्रश्न

क्या NextChat के BASE_URL में /v1 शामिल होना चाहिए?

नहीं। NextChat खुद request path append करता है, तो BASE_URL=https://api.apisrouter.com बिना /v1 के set करें। इसे शामिल करना doubled paths बनाता है जो 404 देते हैं। यह LibreChat जैसे tools से उल्टा convention है, जो base URL में /v1 expect करते हैं।

मैं एक endpoint के through NextChat में Claude या Gemini models कैसे add करूं?

@OpenAI suffix के साथ CUSTOM_MODELS में add करें, उदाहरण के लिए +claude-sonnet-4-6@OpenAI। Suffix id को OpenAI-compatible request path पर pin करता है ताकि यह NextChat के native Anthropic या Google client paths की बजाय आपके BASE_URL पर जाए।

Env variables और in-app settings में क्या फर्क है?

Environment variables हर user के लिए एक server deployment configure करती हैं और बदलने के लिए redeploy चाहिए। Settings में in-app custom endpoint values को per device locally store करता है और तुरंत apply होता है, जो personal desktop और mobile clients के लिए सही है।

मैं picker से default OpenAI model list कैसे हटाऊं?

CUSTOM_MODELS को -all से शुरू करें, फिर ids explicitly add करें: CUSTOM_MODELS=-all,+claude-sonnet-4-6@OpenAI,+gpt-5.5@OpenAI। Users फिर सिर्फ वे models देखते हैं जो आपने जानबूझकर list और price किए।

CODE variable क्या करता है?

यह deployment के लिए एक या ज़्यादा access passwords set करता है। Visitors को chat करने से पहले एक code enter करना होता है, जो एक public Vercel URL को आपकी key खर्च करने से रोकता है। यह API key से unrelated है।

एक environment variable बदलने का कोई effect क्यों नहीं हुआ?

NextChat build या container start पर env values पढ़ता है। Vercel पर, variable edit करें और redeploy करें; Docker पर, container recreate करें। सिर्फ in-app settings बिना restart apply होती हैं, और वे per device रहती हैं।