बेस URL और प्रमाणीकरण
हमारा API पूरी तरह से OpenAI-संगत है, जिसका अर्थ है कि आप न्यूनतम परिवर्तनों के साथ किसी भी मानक SDK का उपयोग कर सकते हैं। सभी अनुरोधों के लिए बेस URL https://api.openrouterapi.top/v1 है। प्रमाणीकरण Authorization हेडर में पास किए गए Bearer टोकन द्वारा संभाला जाता है। आप हमारे डैशबोर्ड पर Google या ईमेल पता से साइन इन करके तुरंत यह कुंजी जनरेट कर सकते हैं। अपनी कुंजी को सुरक्षित रखें, क्योंकि यह आपके प्रीपेड क्रेडिट तक सीधा प्रदान करती है।
पहला अनुरोध
एक सरल curl कमांड के साथ एंडपॉइंट का परीक्षण करें। YOUR_API_KEY को अपनी वास्तविक कुंजी से बदलें। मॉडल ID uncensored पर सेट है ताकि मानक सामग्री अस्वीकृतियों को बायपास किया जा सके। यह अनुरोध एक प्रॉम्प्ट भेजता है और पूर्ण प्रतिक्रिया के लिए प्रतीक्षा करता है।
curl https://api.openrouterapi.top/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'
यदि कुंजी अमान्य है, तो आपको 401 त्रुटि मिलती है। यदि आपका प्रीपेड बैलेंस खत्म हो जाता है, तो आपको 402 त्रुटि मिलती है। ये त्रुटियाँ आपके टोकन बैलेंस का उपभोग नहीं करती हैं, लेकिन वे आपके रेट लिमिट क्यूटा के लिए गिनी जाती हैं।
Python SDK इंटीग्रेशन
आधिकारिक openai Python पैकेज का उपयोग करना सरल है। अपनी बेस URL और कुंजी के साथ क्लाइंट को इनिशियलाइज़ करें। SDK JSON सीरियलाइज़ेशन को स्वचालित रूप से संभालता है। यह उदाहरण एक मूल बातचीत पूर्ति अनुरोध प्रदर्शित करता है।
from openai import OpenAI
client = OpenAI(base_url="https://api.openrouterapi.top/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)
सुनिश्चित करें कि आपके पास SDK का नवीनतम संस्करण स्थापित है। क्लाइंट ऑब्जेक्ट कनेक्शन पूल का प्रबंधन करता है, इसलिए आप इसे पुनः इनिशियलाइज़ किए बिना कई अनुरोधों के लिए पुन: उपयोग कर सकते हैं।
Node SDK इंटीग्रेशन
JavaScript वातावरण के लिए, Node SDK समान रूप से काम करता है। इनिशियलाइज़ेशन के दौरान कस्टम बेस URL पास करें। इस दृष्टिकोण से आपको मौजूदा वेब ऐप्स या बैकएंड सेवाओं में बिना सेंसर जनरेशन को सहजता से इंटीग्रेट करने की अनुमति मिलती है।
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.openrouterapi.top/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);
Node SDK प्रॉमिस-आधारित और async/await दोनों पैटर्नों का समर्थन करता है। त्रुटि हैंडलिंग अन्य OpenAI-संगत सेवाओं के साथ संगत है।
स्ट्रीमिंग प्रतिक्रियाएँ
अपने अनुरोध में stream: true सेट करके स्ट्रीमिंग सक्षम करें। API सर्वर-सेंट इवेंट्स (SSE) लौटाता है। प्रत्येक चंक आंशिक पाठ शामिल करता है। अंतिम चंक बिलिंग के लिए टोकन उपयोग आँकड़े शामिल करता है।
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)
प्रीपेड क्रेडिट अंतिम आउटपुट में उत्पन्न वास्तविक टोकन के आधार पर चार्ज किया जाता है। स्ट्रीमिंग मूल्य निर्धारण मॉडल को नहीं बदलता; आप उन टोकन के लिए भुगतान करते हैं जो सफलतापूर्वक डिलीवर किए गए हैं।
रेट लिमिट और कॉन्टेक्स्ट विंडो
प्रत्येक API कुंजी प्रति मिनट 300 अनुरोध और 8 समानांतर अनुरोधों तक सीमित है। अधिकतम अनुरोध बॉडी आकार 8 MB है। कॉन्टेक्स्ट विंडो कुल 100,000 टोकन (इनपुट और आउटपुट सहित) का समर्थन करती है। प्रति अनुरोध अधिकतम आउटपुट 32,000 टोकन है, या 2,048 यदि max_tokens सेट नहीं है। 401 या 402 जैसे त्रुटियाँ क्रेडिट खर्च नहीं करती हैं, लेकिन वे आपके रेट लिमिट के लिए गिनी जाती हैं। विशिष्ट सामग्री प्रकारों के लिए अस्वीकृतियाँ भी मुफ़्त हैं।