OpenAI-compatible API: base_url क्या है और कैसे स्विच करें
एक OpenAI-compatible API OpenAI के समान अनुरोध स्वीकार करता है। base_url, key और model id बदलें, और आपका कोड CheapTokens पर अपना पहला अनुरोध भेजता है।

इस पृष्ठ पर
एक OpenAI-compatible API वह API है जो OpenAI के Chat Completions API के समान फ़ॉर्मेट में अनुरोध स्वीकार करता है और उसी फ़ॉर्मेट में उत्तर देता है। किसी ऐप को दूसरे प्रदाता पर ले जाने के लिए आपको आमतौर पर तीन मान बदलने होते हैं: base_url (अनुरोध कहाँ जाते हैं), API key, और model id। आपका बाकी कोड, जिसमें message list और उत्तर पढ़ने का तरीका शामिल है, वैसा ही रहता है।
यह गाइड इस विचार को सरल शब्दों में समझाती है और Python तथा curl में CheapTokens पर एक काम करने वाले पहले अनुरोध के साथ समाप्त होती है। CheapTokens के तथ्यों को 22 अक्टूबर, 2026 को उसके दस्तावेज़ों से जाँचा गया था।
"OpenAI-compatible" का क्या अर्थ है?#
API इंटरनेट पर किसी सेवा से बात करने के नियमों का एक समूह है (यदि यह शब्द नया है, तो आपका पहला API अनुरोध कैसे काम करता है से शुरू करें)। OpenAI का chat फ़ॉर्मेट एक सामान्य मानक बन गया: कई प्रदाता और टूल एक ही request body स्वीकार करते हैं और एक ही response shape लौटाते हैं। ऐसे API को OpenAI-compatible कहा जाता है।
व्यवहार में इसका मतलब है कि किसी भी compatible प्रदाता पर तीन चीज़ें समान होती हैं:
- अनुरोध: एक JSON body जिसमें
modelफ़ील्ड औरmessagesसूची होती है, जहाँ प्रत्येक message में एकrole(system,userयाassistant) औरcontentहोता है। - एंडपॉइंट पथ:
/, जो base URL के बाद जोड़ा जाता है।chat/ completions - उत्तर: एक JSON ऑब्जेक्ट जिसमें उत्पन्न टेक्स्ट
choices[0].में होता है।message. content
चूँकि फ़ॉर्मेट साझा है, आधिकारिक SDK और कई ऐप किसी भी compatible प्रदाता से बात कर सकते हैं। उन्हें केवल यह जानना होता है कि अनुरोध कहाँ भेजना है।
base_url क्या है?#
base_url वह पता है जिससे हर अनुरोध शुरू होता है। एक SDK कॉल का पथ जोड़कर पूरा पता बनाता है।
तालिका को दाईं ओर स्क्रॉल करें →
| भाग | उदाहरण |
|---|---|
base_url |
https:/ |
| SDK द्वारा जोड़ा गया पथ | / |
| अनुरोध का पूरा पता | https:/ |
इसलिए जब आप एक अलग base_url सेट करते हैं, तो वही कोड उसी प्रकार का अनुरोध किसी दूसरे सर्वर पर भेजता है। CheapTokens का base URL https:/ है। इसका API OpenAI Chat Completions और Anthropic Messages के साथ compatible है, और एक प्रीपेड बैलेंस सभी मॉडलों को कवर करता है।
तीन मान जो आप बदलते हैं#
तालिका को दाईं ओर स्क्रॉल करें →
| मान | यह क्या है | यह कहाँ से आता है |
|---|---|---|
base_url |
API का पता | https:/ |
| API key | API के लिए आपका गुप्त पासवर्ड | आपका CheapTokens खाता। देखें API key क्या है और इसे सुरक्षित रूप से कैसे संग्रहीत करें |
| Model id | model फ़ील्ड में मॉडल का सटीक नाम |
CheapTokens दस्तावेज़ |
Model id पर ध्यान देना ज़रूरी है। अलग-अलग प्रदाता एक ही मॉडल को अलग-अलग id देते हैं, इसलिए किसी दूसरी सेवा की id यहाँ काम नहीं करेगी। id को CheapTokens दस्तावेज़ से लें। अभी उपलब्ध id:
तालिका को दाईं ओर स्क्रॉल करें →
| मॉडल | Model id | Context | प्रति उत्तर अधिकतम आउटपुट |
|---|---|---|---|
| GLM-5.3-Flash | zai- |
390K | 8,192 tokens |
| DeepSeek-V4-Flash | deepseek- |
380K | 32,768 tokens |
| MiniMax-M2.7 | MiniMaxAI/ |
180K | 8,192 tokens |
DeepSeek-V4-Flash प्रति उत्तर 32,768 tokens तक लौटाता है और इसका 380K context है; GLM-5.3-Flash का 390K context है; MiniMax-M2.7 का 180K context है। तीनों का बिल एक ही बैलेंस से कटता है, इसलिए उनके बीच स्विच करने का मतलब केवल model id बदलना है।
Python में पहला अनुरोध#
openai पैकेज इंस्टॉल करें, फिर अपनी key को कोड में लिखने के बजाय एक environment variable में संग्रहीत करें:
pip install openai
export CHEAPTOKENS_API_KEY="YOUR_CHEAPTOKENS_KEY"अब कोड। एक मानक OpenAI उदाहरण से एकमात्र अंतर base_url आर्ग्युमेंट, key और model id है:
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.cheaptokens.dev/v1", # 1. where requests go
api_key=os.environ["CHEAPTOKENS_API_KEY"], # 2. your CheapTokens key
)
response = client.chat.completions.create(
model="MiniMaxAI/MiniMax-M2.7", # 3. model id from the docs
messages=[
{"role": "system", "content": "You answer briefly."},
{"role": "user", "content": "Explain base_url in one sentence."},
],
)
print(response.choices[0].message.content)उदाहरण में key एक placeholder है: YOUR_ को अपनी key से बदलें और कभी भी असली key को रिपॉज़िटरी में commit न करें।
यदि आपके पास पहले से मौजूद कोई ऐप किसी config फ़ाइल या environment variables से सेटिंग्स पढ़ता है, तो आपको उसका कोड बिल्कुल भी संपादित करने की आवश्यकता नहीं है। base URL, API base या endpoint नामक फ़ील्ड खोजें, और वहाँ वही तीन मान भरें।
curl के साथ वही अनुरोध#
curl दिखाता है कि SDK पर्दे के पीछे क्या करता है: base URL के साथ पथ, Authorization हेडर में key, और एक JSON body।
curl https://api.cheaptokens.dev/v1/chat/completions \
-H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MiniMaxAI/MiniMax-M2.7",
"messages": [
{"role": "user", "content": "Explain base_url in one sentence."}
]
}'आपको क्या दिखना चाहिए#
जब सब कुछ सही सेट होता है, तो Python स्क्रिप्ट एक छोटा टेक्स्ट उत्तर प्रिंट करती है, और curl एक JSON ऑब्जेक्ट प्रिंट करता है। choices सूची देखें: उत्तर का टेक्स्ट choices[0]. में है। यदि आपको यह दिखता है, तो CheapTokens पर आपका पहला अनुरोध काम कर गया, और आप अपने असली ऐप पर आगे बढ़ सकते हैं।
इसका खर्च क्या है?#
बिलिंग tokens के आधार पर होती है, जो इनपुट और आउटपुट के लिए अलग-अलग गिने जाते हैं (देखें इनपुट बनाम आउटपुट tokens)। उदाहरण के लिए, MiniMax-M2.7 का मूल्य अभी $0.05 प्रति 1M इनपुट tokens और $0.15 प्रति 1M आउटपुट tokens है। नीचे दी गई तालिका हमेशा सभी मॉडलों के वर्तमान मूल्य दिखाती है, बिना किसी peak-hour अधिभार के।
| मॉडल | संदर्भ | इनपुट $/1M | आउटपुट $/1M | OpenRouter इनपुट | OpenRouter आउटपुट |
|---|---|---|---|---|---|
| GLM-5.3-Flash reasoning | 390K | $0.02 | $0.04 | $0.0413 | $0.0758 |
| DeepSeek-V4-Flash | 380K | $0.015 | $0.10 | $0.0475 | $0.1568 |
| MiniMax-M2.7 | 180K | $0.05 | $0.15 | $0.30 | $1.20 |
कीमतें USD प्रति 1M टोकन में हैं। OpenRouter के आंकड़े तुलना के लिए दिखाए गए हैं और बदल सकते हैं।
मॉडलों की पूरी सूची के मूल्य CheapTokens मूल्य पृष्ठ पर भी हैं।
यदि यह काम न करे#
- Authentication त्रुटि (आमतौर पर 401): key गायब है, गलत टाइप की गई है या उसमें अतिरिक्त स्पेस हैं। जाँचें कि environment variable उसी टर्मिनल में सेट है जहाँ आप स्क्रिप्ट चलाते हैं।
- "Not found" (आमतौर पर 404):
base_urlजाँचें। इसे/v1पर समाप्त होना चाहिए, और SDK का उपयोग करते समय आपको स्वयं/नहीं जोड़ना चाहिए, अन्यथा पथ दोगुना हो जाएगा।chat/ completions - अज्ञात मॉडल: model id को ऊपर दी गई तालिका या दस्तावेज़ से बिल्कुल वैसा ही कॉपी करें, जिसमें बड़े अक्षर और slash से पहले का भाग शामिल है।
- कोई कनेक्शन नहीं या timeout: देखें सामान्य कनेक्शन त्रुटियाँ और उन्हें कैसे ठीक करें।
- उत्तर वाक्य के बीच में कट गया:
max_tokensसीमा तक पहुँच गया, जिसे AI उत्तर वाक्य के बीच में क्यों रुकता है में समझाया गया है।
अगले कदम#
एक बार पहला अनुरोध काम कर जाने के बाद, आप Python में streaming जोड़ सकते हैं, वही तीन मान अपने एडिटर या एजेंट में डाल सकते हैं, या AI मॉडल नाम कैसे पढ़ें पढ़ सकते हैं। सेटअप विवरण और मॉडलों की पूरी सूची CheapTokens दस्तावेज़ में है।



