⚡ नवीन — Kimi K3 आता लाइव: तुमची Moonshot की जोडा →
दस्तऐवज

तुमचा स्वतःचा एंडपॉइंट आणा

BYOE तुम्हाला तुमची स्वतःची OpenAI-सुसंगत डिप्लॉयमेंट BharatRouter च्या रूटिंगमध्ये प्लग करू देते — एक सेल्फ-होस्टेड vLLM, एक अंतर्गत गेटवे, एक खाजगी क्लाउड एंडपॉइंट — आणि ती एका चेन मध्ये फेलओवर टप्पा म्हणून वापरू देते. इन्फरन्स तुमच्या इन्फ्रास्ट्रक्चरवर चालत असल्यामुळे, BYOE टप्प्यांची किंमत ₹0 आहे. एखाद्या एंडपॉइंटला चेनमध्येbyoe:<slug> म्हणून संदर्भित केले जाते, आणि तुम्ही प्रत्येक मॉडेलसाठी एकापेक्षा जास्त नोंदवू शकता.

BYOE विरुद्ध BYOK

दोन्ही "तुमचे स्वतःचे आणा" आहेत, आणि दोन्ही तुमच्या इन्फ्रा/अकाउंटवर ₹0 ला चालतात — पण ते वेगवेगळ्या गोष्टी आणतात. BYOK तेव्हा वापरा जेव्हा मॉडेल आधीच आम्ही सपोर्ट करत असलेल्या एखाद्या provider वर चालत असेल आणि तुम्हाला फक्त तुमची स्वतःची key द्यायची असेल; BYOE तेव्हा वापरा जेव्हा मॉडेल अशा एखाद्या डिप्लॉयमेंटवर चालत असेल जी तुम्ही होस्ट करता.

BYOK — तुमची स्वतःची key आणाBYOE — तुमचा स्वतःचा एंडपॉइंट आणा
तुम्ही देताएक provider API keyतुम्ही चालवत असलेल्या डिप्लॉयमेंटचा एक URL
हे कुठे चालतेprovider चा इन्फ्रातुमचा इन्फ्रा
provider असणे आवश्यकएक जो BharatRouter आधीच सपोर्ट करतोकोणताही OpenAI-सुसंगत एंडपॉइंट
प्रवेश गेटसेव्ह करताना लाइव्ह key सत्यापनस्वयंचलित OpenAI-फॉरमॅट कंप्लायन्स टेस्ट
संदर्भितprovider (उदा. krutrim) किंवा provider/model-idbyoe:<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 आहे, तेच रूटिंगसाठी वापरले जातात; बाकीचे संग्रहित केले जातात पण वगळले जातात.

सुरक्षा

  • SSRF गार्ड. base_url एक सार्वजनिक http(s)एंडपॉइंट असणे आवश्यक आहे. लूपबॅक, लिंक-लोकल, खाजगी (RFC1918), आणि क्लस्टर-अंतर्गत होस्ट (.local, .internal, .svc, .cluster.local, मल्टीकास्ट आणि ULA रेंज) नाकारले जातात.
  • Keys रेस्टमध्ये एन्क्रिप्टेड AES-256-GCM सह; कीलेस एंडपॉइंट कोणतीही key साठवत नाहीत. सेव्ह केलेल्या keys केवळ मास्क करून परत केल्या जातात.

व्यवस्थापित करा

एंडपॉइंटहे काय करते
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)

MCP द्वारे: list_endpoints आणि test_endpoint(रीड/नो-राइट), तसेच register_endpoint आणि remove_endpoint (राइट —user_confirmed: true आवश्यक).