hi ▾
API कुंजी प्राप्त करें

API दस्तावेज़: Chat Completions & Parameters

अपने OpenAI-संगत API के साथ तुरंत असीमित टेक्स्ट जनरेट करना शुरू करें। एकल कुंजी के साथ प्रमाणीकरण करें और पूर्व-भुगतान टोकन खपत करने के लिए बेस URL पर अनुरोध भेजें।

बेस URL और प्रमाणीकरण

प्रदान किए गए बेस URL और अपनी API कुंजी का उपयोग करके API से कनेक्ट करें। यह एंडपॉइंट मानक OpenAI SDKs के साथ काम करता है बस कॉन्फ़िगरेशन को अपडेट करके। आपको प्रति खाता एक सक्रिय कुंजी मिलती है, जिसे आप साइनअप के दौरान Google या ईमेल के माध्यम से जनरेट करते हैं। कुंजी आपके द्वारा सेवा के लिए किए गए हर अनुरोध को प्रमाणीकृत करती है।

curl https://api.hubuncensored.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Generate a JSON object with user id and role"}]
  }'

अपनी कुंजी सुरक्षित रखें। यदि आप एक नई कुंजी जनरेट करते हैं, तो पिछली कुंजी तुरंत अमान्य हो जाती है। यह सुनिश्चित करता है कि आप हमेशा अपनी प्रीपेड क्रेडिट तक एक्सेस पर नियंत्रण रखें, बिना किसी लिंगरिंग परमिशन के।

चैट कंप्लीशंस एंडपॉइंट

टेक्स्ट जनरेशन के लिए चैट कंप्लीशन एंडपॉइंट पर अपना प्रॉम्प्ट डेटा भेजें। यह आपके ऐप्स के लिए प्राथमिक इंटरफ़ेस है, जो सभी टेक्स्ट इनपुट और आउटपुट संभालता है। सुसंगत व्यवहार सुनिश्चित करने के लिए आपको मॉडल को 'uncensored' के रूप में निर्दिष्ट करना होगा। API आपके अनुरोध को प्रोसेस करता है और जनरेटेड टेक्स्ट प्रतिक्रिया लौटाता है।

from openai import OpenAI

client = OpenAI(base_url="https://api.hubuncensored.com/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)

त्रुटियाँ जैसे 401 अमान्य कुंजी को दर्शाती हैं, जबकि 402 का अर्थ है कि आपको अधिक क्रेडिट की आवश्यकता है। अनुरोध वास्तविक टोकन उपयोग के आधार पर चार्ज किए जाते हैं, इसलिए त्रुटियाँ आपके बैलेंस को खाली नहीं करतीं।

SSE के माध्यम से स्ट्रीमिंग रिस्पॉन्सेस

सर्वर-सेंट इवेंट्स (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)

संदर्भ विंडो जटिल निर्देशों की अनुमति देती है। प्रवाहित करना (Streaming) अंतर्निहित टोकन सीमाओं या मूल्य निर्धारण संरचना को नहीं बदलता है।

फंक्शन कॉलिंग और JSON मोड

संरचित आउटपुट को अपने वर्कफ़्लो में एकीकृत करने के लिए फ़ंक्शन कॉलिंग का उपयोग करें। मॉडल की प्रतिक्रिया प्रारूप को मार्गदर्शित करने के लिए टूल और tool_choice निर्दिष्ट करें। आप विश्वसनीय पार्सिंग के लिए response_format पैरामीटर का उपयोग करके कठोर JSON मोड को लागू कर सकते हैं। यह सुनिश्चित करता है कि आपका ऐप डेटा उसी संरचना में प्राप्त करता है जिसे आप परिभाषित करते हैं।

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.hubuncensored.com/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);

ये सुविधाएं एकल अनसेंसर मॉडल के भीतर काम करती हैं। कोई मॉडल रूटिंग या अलग-अलग वेंडर्स के बीच चयन नहीं है। आप एक ओपन-वेइट मॉडल पर निर्भर करते हैं जो असीमित कंटेंट के लिए ट्यून्ड है।

पैरामीटर: तापमान, शीर्ष P, और स्टॉप

मानक पैरामीटर जैसे तापमान और top_p का उपयोग करके जनरेशन व्यवहार को नियंत्रित करें। इन मानों को समायोजित करके अपनी आउटपुट में रचनात्मकता और निर्धारणात्मकता के बीच संतुलन बनाएं। stop पैरामीटर आपको विशिष्ट क्रमों पर जनरेशन रोकने की अनुमति देता है। आप आउटपुल शैली को परिष्कृत करने के लिए presence_penalty और frequency_penalty को भी सेट कर सकते हैं।

लंबी प्रतिक्रियाओं के लिए max_tokens को 16,000 सेट करें। यदि आप max_tokens छोड़ देते हैं, तो प्रति अनुरोध डिफ़ॉल्ट 2,048 टोकन होता है। ये सेटिंग्स आपको जनरेशन प्रक्रिया पर सटीक नियंत्रण देती हैं।

सीमाएं, त्रुटियां, और संदर्भ विंडो

चिकनी संचालन सुनिश्चित करने के लिए कठोर रेट लिमिट्स के सापेक्ष अपने उपयोग की निगरानी करें। आपको प्रति मिनट 300 अनुरोध और प्रति कुंजी 8 समवर्ती अनुरोध की अनुमति है। अधिकतम अनुरोध बॉडी आकार 8 MB है। इन सीमाओं को पार करने पर एक 429 रेट लिमिट त्रुटि लौटाई जाती है। इन बाधाओं को समझना आपको मजबूत रीट्राई लॉजिक डिजाइन करने में मदद करता है।

संदर्भ विंडो कुल 100,000 टोकन का समर्थन करती है। इसमें इनपुट प्रॉम्प्ट और जनरेट किया गया कंप्लीशन दोनों शामिल हैं। ट्रंकेशन या त्रुटियों से बचने के लिए अपने टोकन उपयोग की योजना बनाएं।

सामान्य प्रश्न

क्या अनसेंसर्ड हब API OpenAI SDKs के साथ संगत है?

हाँ, यह एक openai compatible API है। आप base_url और API key को बस अपडेट करके आधिकारिक OpenAI SDKs का उपयोग कर सकते हैं। इससे आपको मौजूदा प्रोजेक्ट्स में न्यूनतम कोड बदलाव के साथ इसे शामिल करने की अनुमति मिलती है।

यदि रेट लिमिट से अधिक हो जाता हूँ तो क्या होता है?

आपको 429 त्रुटि मिलेगी जो बहुत सारे अनुरोध दर्शाती है। आप प्रति मिनट 300 अनुरोध और प्रति कुंजी 8 समवर्ती अनुरोधों के लिए सीमित हैं। संक्षिप्त रूप से प्रतीक्षा करें और पुनः प्रयास करें, या यदि आवश्यक हो तो अपने उपयोग को कई कुंजियों पर फैलाएं।

लंबी बातचीत के लिए कॉन्टेक्स्ट विंडो कैसे काम करता है?

संदर्भ विंडो 100,000 टोकन की है, जिसमें प्रॉम्प्ट और पूर्णता दोनों शामिल हैं। आप लंबे इनपुट भेज सकते हैं, लेकिन यदि आप उच्च max_tokens मान निर्दिष्ट नहीं करते हैं तो प्रति अनुरोध अधिकतम आउटपुट 16,000 टोकन है।

अपना API कुंजी

रजिस्टर करें, अपनी कुंजी प्राप्त करें, बेस यूआरएल अपडेट करें। यह पूरी कॉन्फ़िगरेशन है।

API कुंजी प्राप्त करें