Codex: model_provider, Base URL और wire_api
Codex प्रदाता के model_provider, Base URL, wire_api, API Key और Model ID सेट करें। प्रदाता, 401 और 404 त्रुटियां ठीक करें।
संक्षिप्त उत्तर
model_provider, Codex CLI को बताता है कि कौन-सा provider उपयोग करना है। इसका value [model_providers.<id>] के अंतर्गत परिभाषित provider id से मेल खाना चाहिए।
base_url वह API endpoint है जहां model requests भेजे जाते हैं। OpenAI-compatible provider के लिए यह आमतौर पर /v1 style endpoint की ओर संकेत करता है।
wire_api अनुरोध प्रोटोकॉल चुनता है। वर्तमान Codex केवल responses स्वीकार करता है और विकल्प न देने पर भी यही इस्तेमाल करता है।
यह कब महत्वपूर्ण है
- आप custom OpenAI-compatible provider कॉन्फ़िगर कर रहे हैं
- Codex कहता है कि provider नहीं मिला या model requests विफल होते हैं
- आपको नहीं पता कि
model_provider,modelसे कैसे अलग है - आप BetterToken, OpenAI या अन्य provider को एक
config.tomlमें रख रहे हैं - आपको Base URL, API Key और Model ID अलग रखने हैं
Field संबंध
| Field | उद्देश्य |
|---|---|
model_provider | सक्रिय provider id चुनता है |
[model_providers.<id>] | एक provider का विस्तृत configuration परिभाषित करता है |
name | provider का display name |
base_url | root API endpoint |
wire_api | provider का अनुरोध प्रोटोकॉल; अभी केवल responses समर्थित है। |
model | default main model ID |
review_model | /review जैसे code review flows के लिए उपयोग model |
फ़ाइलें खोजें और बैकअप लें
यदि आपने अपना CODEX_HOME सेट किया है, तो उसी डायरेक्टरी में config.toml और auth.json संपादित करें। अन्यथा macOS / Linux पर ~/.codex या Windows पर %USERPROFILE%\.codex उपयोग करें। CLI और App को एक ही डायरेक्टरी इस्तेमाल करनी चाहिए। WSL की उपयोगकर्ता डायरेक्टरी अलग होती है।
संपादन से पहले Codex पूरी तरह बंद करें। दोनों फ़ाइलों का बैकअप निजी स्थान पर रखें। जो फ़ाइल मौजूद नहीं है उसे बनाएँ। मौजूदा सेटिंग बदलें; कुंजियाँ या टेबल दोबारा न जोड़ें। असंबंधित सेटिंग बनाए रखें।
अनुशंसित pattern
config.toml संपादित करें
यह गाइड यूज़र-स्तर का config.toml इस्तेमाल करती है। शीर्ष कुंजियाँ सभी TOML तालिकाओं से पहले रखें, [projects."<path>"] में नहीं; उस तालिका में प्रोजेक्ट का trust_level रहता है। चुनी गई provider ID और तालिका का नाम समान रखें। फ़ाइल प्रमाणीकरण के लिए चुने provider से env_key और experimental_bearer_token हटाएँ।
model_provider = "bettertoken"model = "gpt-6-astra"cli_auth_credentials_store = "file"
[model_providers.bettertoken]name = "BetterToken"base_url = "https://bettertoken.ai/v1"wire_api = "responses"requires_openai_auth = truesupports_websockets = falseइस उदाहरण में GPT-6 Astra (gpt-6-astra) उपयोग होता है। दूसरे मॉडल के लिए मॉडल प्लाज़ा से पूरा ID कॉपी करके model बदलें। GPT, Kimi और GLM एक ही फ़ाइल-आधारित प्रमाणीकरण संरचना इस्तेमाल करते हैं; स्वचालित सेटअप GPT के लिए उपलब्ध है।
auth.json संपादित करें
auth.json और config.toml एक ही डायरेक्टरी में होते हैं। अगर auth.json नहीं है, तो उसी डायरेक्टरी में यह फ़ाइल बनाएँ। फ़ाइल की सामग्री के रूप में निम्न JSON लिखें, YOUR_API_KEY की जगह अपनी BetterToken API Key डालें और फ़ाइल सेव करें।
{ "auth_mode": "apikey", "OPENAI_API_KEY": "YOUR_API_KEY"}कॉन्फ़िगरेशन पैरामीटर
| पैरामीटर | कार्य और स्थान | डिफ़ॉल्ट और उदाहरण |
|---|---|---|
model_provider | यूज़र फ़ाइल का शीर्ष स्तर; नीचे दी गई ID चुनता है। | डिफ़ॉल्ट openai; यहाँ bettertoken। |
model | शीर्ष स्तर; मॉडल प्लाज़ा का पूरा Model ID। | उदाहरण gpt-6-astra; ज़रूरत के अनुसार बदलें। |
cli_auth_credentials_store | शीर्ष स्तर; लॉगिन क्रेडेंशियल का स्टोर। | यहाँ file: उसी निर्देशिका का auth.json पढ़ता है। |
name | provider तालिका; केवल प्रदर्शन नाम। | BetterToken Model ID नहीं है। |
base_url | provider तालिका; मॉडल API का Base URL। | https://bettertoken.ai/v1 इस्तेमाल करें; Codex /responses जोड़ता है। |
wire_api | provider तालिका; अनुरोध प्रोटोकॉल। | अभी केवल responses समर्थित है और यही डिफ़ॉल्ट है। |
requires_openai_auth | provider तालिका; OpenAI प्रमाणीकरण और उसका स्टोर। | डिफ़ॉल्ट false; यहाँ true। यह लॉगिन फ़ाइल बचाने का स्विच नहीं है। |
supports_websockets | provider तालिका; Responses WebSocket समर्थन। | डिफ़ॉल्ट false; यहाँ HTTP/SSE बना रहता है। |
auth_mode | auth.json में; प्रमाणीकरण मोड। | यहाँ apikey; आधिकारिक ChatGPT प्रमाणीकरण को बदलता है। |
OPENAI_API_KEY | auth.json में; API प्रमाणीकरण की Key। | YOUR_API_KEY की जगह BetterToken API Key भरें। |
यह फ़ाइल प्रमाणीकरण API Key मोड में बदलता है। आधिकारिक अकाउंट बनाए रखने के लिए लॉगिन संरक्षण इस्तेमाल करें; दोनों मोड न मिलाएँ। अंतर प्रमाणीकरण के उद्देश्य का है, CLI, App या Extension का नहीं।
वैकल्पिक समायोजन
ये तीन समायोजन वैकल्पिक हैं, कनेक्शन की शर्त नहीं। ज़रूरत हो तो इन्हें मौजूदा [model_providers.bettertoken] तालिका में जोड़ें; दूसरी समान तालिका न बनाएँ।
request_max_retries = 4stream_max_retries = 8stream_idle_timeout_ms = 300000| पैरामीटर | कार्य और स्थान | डिफ़ॉल्ट और उदाहरण |
|---|---|---|
request_max_retries | provider तालिका; HTTP अनुरोधों की अधिकतम पुनः कोशिशें। | डिफ़ॉल्ट 4; कनेक्शन के अनुसार बदलें। |
stream_max_retries | provider तालिका; स्ट्रीम टूटने के बाद पुनः कनेक्शन। | डिफ़ॉल्ट 5; 8 वैकल्पिक कस्टम मान है। |
stream_idle_timeout_ms | provider तालिका; निष्क्रिय स्ट्रीम का टाइमआउट, मिलीसेकंड में। | डिफ़ॉल्ट 300000; यह पूरी टास्क की समय सीमा नहीं है। |
कॉन्फ़िगरेशन स्तर और पुरानी कुंजियाँ
मॉडल और reasoning को [projects."<path>"] में न रखें। विश्वसनीय प्रोजेक्ट के .codex/config.toml में शीर्ष कुंजियों से प्रोजेक्ट मॉडल चुन सकते हैं; provider और प्रमाणीकरण यूज़र कॉन्फ़िग में रहें। नए profile के लिए CODEX_HOME में NAME.config.toml और codex --profile NAME इस्तेमाल करें, पुराने [profiles.NAME] या शीर्ष profile चयनकर्ता नहीं।
पुनः शुरू करके जाँचें
दोनों फ़ाइलें सहेजें। टर्मिनल में नया Codex CLI सत्र सीधे शुरू करें:
codexपृष्ठभूमि प्रक्रियाओं सहित Codex App पूरी तरह बंद करें। फिर खोलें और नया स्थानीय कार्य बनाएँ। अपने इस्तेमाल के हर क्लाइंट में छोटा प्रॉम्प्ट भेजें। सामान्य उत्तर उस क्लाइंट का कनेक्शन सत्यापित करता है।
समस्या निवारण
401, 403 या लॉगिन अनुरोध आने पर सक्रिय डायरेक्टरी, auth.json की Key, auth_mode = apikey, cli_auth_credentials_store = file और requires_openai_auth = true जाँचें। प्रदाता या मॉडल की त्रुटि होने पर प्रदाता ID का मिलान, https://bettertoken.ai/v1, wire_api = responses और मॉडल की उपलब्धता जाँचें। बदलाव लागू न हों तो कॉन्फ़िगरेशन ओवरराइड जाँचें और सुनिश्चित करें कि CLI और App एक ही CODEX_HOME इस्तेमाल कर रहे हैं।
संबंधित दस्तावेज
- Codex CLI config.toml कैसे कॉन्फ़िगर करें
- Codex BetterToken सेटअप गाइड
- Codex CLI sandbox और approval modes क्या हैं?
- OpenAI-compatible API बनाम Anthropic-compatible API

