Esc to close · ⌘K / Ctrl-K opens search anywhere
BYOE आपको अपनी खुद की OpenAI-संगत डिप्लॉयमेंट को BharatRouter की रूटिंग में प्लग करने देता है — एक सेल्फ-होस्टेड vLLM, एक आंतरिक गेटवे, एक निजी क्लाउड एंडपॉइंट — और इसे एक चेन में फेलओवर चरण के रूप में उपयोग करें। चूँकि इन्फरेंस आपके इन्फ्रास्ट्रक्चर पर चलता है, इसलिए BYOE चरणों की कीमत ₹0 है। एक एंडपॉइंट को चेन मेंbyoe:<slug> के रूप में संदर्भित किया जाता है, और आप प्रति मॉडल एक से अधिक रजिस्टर कर सकते हैं।
दोनों "अपना खुद का लाओ" हैं, और दोनों आपके इन्फ्रा/अकाउंट पर ₹0 पर चलते हैं — लेकिन वे अलग-अलग चीज़ें लाते हैं। BYOK का उपयोग तब करें जब मॉडल पहले से ही किसी ऐसे provider पर चलता हो जिसे हम सपोर्ट करते हैं और आप बस अपना खुद का key देना चाहते हों; BYOE का उपयोग तब करें जब मॉडल किसी ऐसी डिप्लॉयमेंट पर चलता हो जिसे आप होस्ट करते हैं।
| BYOK — अपना खुद का key लाएँ | BYOE — अपना खुद का एंडपॉइंट लाएँ | |
|---|---|---|
| आप देते हैं | एक provider API key | आपके द्वारा चलाई जाने वाली डिप्लॉयमेंट का एक URL |
| यह कहाँ चलता है | provider का इन्फ्रा | आपका इन्फ्रा |
| provider होना चाहिए | एक जिसे BharatRouter पहले से सपोर्ट करता है | कोई भी OpenAI-संगत एंडपॉइंट |
| प्रवेश गेट | सेव करने पर लाइव key सत्यापन | स्वचालित OpenAI-फॉर्मेट कंप्लायंस टेस्ट |
| संदर्भित | provider (जैसे krutrim) या provider/model-id | byoe:<slug> |
| कितने | प्रति provider एक सेव किया गया key | प्रति मॉडल एकाधिक एंडपॉइंट |
| Price | ₹0 (provider आपको बिल करता है) | ₹0 (आपका अपना इन्फ्रा) |
अपने खुद के provider keys का उपयोग करने के लिए BYOK देखें।
रजिस्ट्रेशन एक स्वचालित कंप्लायंस टेस्ट इनलाइन चलाता है और एंडपॉइंट को तभी सेव करता है जब वह पास हो जाए। केवल owners और admins।
POST /me/endpoints
{
"name": "my-vllm-llama",
"model": "llama-3.1-8b-instruct", // a catalog chat model
"base_url": "https://llm.mycorp.com/v1",
"upstream_model": "meta-llama/Llama-3.1-8B-Instruct",
"key": "sk-internal-...", // optional — omit for a keyless endpoint
"residency": "india"
}
→ { "ok": true, "endpoint": { "id": 7, "slug": "my-vllm-llama",
"provider_ref": "byoe:my-vllm-llama", "model": "llama-3.1-8b-instruct" },
"compliance": { "pass": true, ... } }जब आप कोई फेलओवर चेन सेव करते हैं या कोईcollection बनाते हैं, तब किसी चरण केprovider के रूप में लौटाए गए provider_ref (byoe:<slug>) का उपयोग करें।
POST /me/endpoints/test किसी बिना सेव की गई कॉन्फिग के खिलाफ कंप्लायंस जाँच चलाता है और बिना कुछ लिखे परिणाम लौटाता है — base_url और upstream_model को ठीक करने के लिए उपयोगी है। कोई भी member टेस्ट कर सकता है।
एक एंडपॉइंट को लाइव रूटिंग में तभी स्वीकार किया जाता है जब वह यह साबित कर दे कि वह chat-completions वायर फॉर्मेट बोलता है। टेस्ट (12-सेकंड टाइमआउट) यह जाँचता है:
| जाँच | आवश्यकता |
|---|---|
| Chat | आवश्यक — एक नॉन-स्ट्रीम कॉल choices[0].message.content लौटाता है। |
| Usage | आवश्यक — रिप्लाई में संख्यात्मक usage.prompt_tokens और usage.completion_tokens होता है। |
| Stream | आवश्यक — एक स्ट्रीम की गई कॉल SSE डेल्टा देती है और [DONE] के साथ समाप्त होती है। |
| Stream usage | सलाहकार — क्या स्ट्रीम की गई रिप्लाई में एक usage ब्लॉक शामिल है (supports_stream_usage सेट करता है)। |
| Error shape | सलाहकार — एक गलत रिक्वेस्ट { error } ऑब्जेक्ट के साथ 4xx लौटाती है। |
किसी सेव किए गए एंडपॉइंट पर POST /me/endpoints/:id/retest के साथ जाँच फिर से चलाएँ (उदाहरण के लिए जब वह वापस ऑनलाइन आ जाए)। केवल वही एंडपॉइंट जिनका कंप्लायंस pass है, रूटिंग के लिए उपयोग किए जाते हैं; बाकी संग्रहीत होते हैं लेकिन छोड़ दिए जाते हैं।
base_url एक सार्वजनिक http(s)एंडपॉइंट होना चाहिए। लूपबैक, लिंक-लोकल, निजी (RFC1918), और क्लस्टर-आंतरिक होस्ट (.local, .internal, .svc, .cluster.local, मल्टीकास्ट और ULA रेंज) अस्वीकार कर दिए जाते हैं।| एंडपॉइंट | यह क्या करता है |
|---|---|
GET /me/endpoints | अपने एंडपॉइंट्स की सूची बनाएँ (keys मास्क की हुई, कंप्लायंस स्थिति के साथ)। |
POST /me/endpoints | रजिस्टर करें + कंप्लायंस-टेस्ट इनलाइन (owner/admin)। |
POST /me/endpoints/test | किसी बिना सेव की गई कॉन्फिग का कंप्लायंस-टेस्ट करें (कोई राइट नहीं)। |
POST /me/endpoints/:id/retest | किसी सेव किए गए एंडपॉइंट पर कंप्लायंस फिर से चलाएँ (owner/admin)। |
DELETE /me/endpoints/:id | एक एंडपॉइंट हटाएँ (owner/admin)। |
MCP के ज़रिए: list_endpoints और test_endpoint(रीड/नो-राइट), साथ ही register_endpoint और remove_endpoint (राइट —user_confirmed: true आवश्यक)।