एक लाइन में बदलाव
OpenAI के SDK डिफ़ॉल्ट रूप से OpenAI को अनुरोध भेजते हैं, लेकिन आप उनमें बेस URL सेट कर सकते हैं। इसे दूसरे प्रोवाइडर के URL पर सेट करें और उस प्रोवाइडर की कुंजी और मॉडल के नाम इस्तेमाल करें; बाकी कोड वैसा ही रहता है।
from openai import OpenAIclient = OpenAI( base_url="https://api.zurelay.com/v1", # the only line that changes api_key="YOUR_ZURELAY_KEY",)reply = client.chat.completions.create( model="claude-sonnet-5-5", messages=[{"role": "user", "content": "Hello"}],)print(reply.choices[0].message.content)यही तरीका TypeScript में baseURL के साथ और उन टूल में भी काम करता है जो "OpenAI बेस URL" या "कस्टम एंडपॉइंट" माँगते हैं: OpenCode, Continue, Cline, Open WebUI और कई अन्य। हर टूल की सेटिंग्स इंटीग्रेशन गाइड में दी गई हैं। कई टूल OPENAI_BASE_URL और OPENAI_API_KEY एनवायरनमेंट वैरिएबल भी पढ़ते हैं, इसलिए प्रोवाइडर बदलने के लिए कोड में कोई बदलाव नहीं करना पड़ता।
मुख्य प्रोवाइडर के बेस URL
बेस URL आम तौर पर /v1 पर खत्म होता है, और SDK उसके आगे /chat/completions जोड़ता है। कुछ प्रोवाइडर दूसरे पाथ इस्तेमाल करते हैं, इसलिए उन्हें बिल्कुल वैसे ही कॉपी करें:
| प्रोवाइडर | बेस URL |
|---|---|
| OpenAI | https://api.openai.com/v1 |
| Google Gemini | https://generativelanguage.googleapis.com/v1beta/openai/ |
| DeepSeek | https://api.deepseek.com |
| xAI (Grok) | https://api.x.ai/v1 |
| Zurelay | https://api.zurelay.com/v1 |
| OpenRouter | https://openrouter.ai/api/v1 |
| Groq | https://api.groq.com/openai/v1 |
| Ollama | http://localhost:11434/v1/ |
हर प्रोवाइडर का URL, मॉडल ID और हर एंडपॉइंट पर क्या उपलब्ध है, यह सब OpenAI-संगत बेस URL की सूची में है। यह जानकारी 26 अक्टूबर, 2026 को हर प्रोवाइडर के दस्तावेज़ों से ली गई है।
क्या पहले की तरह काम करता है
- मैसेज, सिस्टम प्रॉम्प्ट और स्ट्रीमिंग।
- टूल कॉलिंग और JSON स्कीमा के साथ स्ट्रक्चर्ड आउटपुट।
- मैसेज में इमेज और दूसरी फ़ाइलें, उन मॉडल के लिए जो उन्हें पढ़ सकते हैं।
- इस्तेमाल की जानकारी वाला ब्लॉक, ताकि टोकन का हिसाब उसी तरह चलता रहे।
स्विच करने से पहले क्या जाँचें
- मॉडल के नाम. हर प्रोवाइडर के अपने ID होते हैं; उनकी सूची
GET /v1/modelsसे देखें. - यह कौन-से API उपलब्ध कराता है. कई प्रोवाइडर Chat Completions उपलब्ध कराते हैं, लेकिन OpenAI के Responses, Realtime, एम्बेडिंग या बैच API नहीं. Zurelay, Chat Completions, इमेज, वीडियो और स्पीच के साथ-साथ Claude के लिए Anthropic का Messages API भी उपलब्ध कराता है.
- अतिरिक्त पैरामीटर. रीजनिंग के स्तर, कैश कंट्रोल और सैंपलिंग की सीमाएँ हर मॉडल में अलग होती हैं. एक अच्छा प्रोवाइडर बताता है कि हर मॉडल कौन-से पैरामीटर स्वीकार करता है.
- क्या यह वही मॉडल है जो बताया गया है? सस्ते प्रोवाइडर कभी-कभी नए नाम से पुराना या सस्ता मॉडल उपलब्ध कराते हैं. इसे जल्दी जाँचने के पाँच तरीके सस्ते AI API असल में क्या बेच रहे हैं में दिए गए हैं.
जब स्विच करने में समस्या आए
- 404 Not Found. बेस URL में एंडपॉइंट (
.../v1/chat/completions) शामिल है या प्रोवाइडर का अपना पाथ छूट गया है. सिर्फ़ बेस URL इस्तेमाल करें. - 401 Unauthorized. कुंजी किसी दूसरे प्रोवाइडर की है या Alibaba के Model Studio में किसी दूसरे रीजन की है.
- मॉडल नहीं मिला. एक ही मॉडल के ID अलग-अलग प्रोवाइडर पर अलग होते हैं: Anthropic पर
claude-opus-5-5, OpenRouter परanthropic/claude-opus-5, और Azure पर आपके डिप्लॉयमेंट का नाम. - किसी पैरामीटर पर 400. कुछ प्रोवाइडर ऐसे पैरामीटर अस्वीकार कर देते हैं या अनदेखा करते हैं जिन्हें OpenAI का API स्वीकार करता है, जैसे Anthropic की कम्पैटिबिलिटी लेयर पर
response_format. इसे हटा दें या ऐसे प्रोवाइडर पर स्विच करें जो इसे स्वीकार करता हो.
Anthropic के साथ संगत API
Claude Code और Anthropic के SDK इसके बजाय Anthropic का Messages API इस्तेमाल करते हैं और ANTHROPIC_BASE_URL पढ़ते हैं. DeepSeek, Moonshot, Z.ai, MiniMax और Zurelay समेत कई प्रोवाइडर यह API भी उपलब्ध कराते हैं; उनके URL कभी /v1 पर खत्म नहीं होते. ये सूची में दिए गए हैं, और Claude Code की कीमतें में हर प्लान और API पर Claude Code की लागत की तुलना की गई है.
स्विच क्यों करें
OpenAI के साथ संगत एक ही कुंजी से कई लैब के मॉडल इस्तेमाल किए जा सकते हैं, इसलिए अपने प्रॉम्प्ट पर Claude, GPT, Gemini और DeepSeek की तुलना करने के लिए आपको सिर्फ़ मॉडल का नाम बदलना होता है. किसी सस्ते मॉडल पर जाने के लिए भी इतना ही करना होता है. मॉडल और कीमतें देखें.