- Nsfwchat
- NSFW चैट: क्विकस्टार्ट: बिना सेंसर LLM को एकीकृत करें
NSFW चैट: क्विकस्टार्ट: बिना सेंसर LLM को एकीकृत करें
मानक OpenAI-संगत एंडपॉइंट्स का उपयोग करके हमारे बिना सेंसर LLM API को एकीकृत करें। यह क्विकस्टार्ट प्रमाणीकरण, अनुरूप प्रारूपों और उच्च-वॉल्यूम टेक्स्ट जनरेशन के लिए स्ट्रीमिंग को कवर करता है।
बेस URL और प्रमाणीकरण
सभी अनुरोधों के लिए समर्पित बेस URL का उपयोग करें। प्रमाणीकरण साइनअप के दौरान उत्पन्न एकल API कुंजी पर निर्भर करता है। कुंजी को Authorization हेडर में Bearer टोकन के रूप में शामिल करें। आपकी कुंजी तुरंत बनाए जाने के बाद प्रदर्शित होती है। प्रत्येक खाते में एक सक्रिय कुंजी होती है; नई कुंजी बनाने से पुरानी कुंजी बदल जाती है।
बेस URL है: https://api.nsfwchat.cc/v1। अतिरिक्त रूटिंग या प्रॉक्सी परतों की आवश्यकता नहीं है। बेस URL और API कुंजी को समायोजित करके यह सेटअप किसी भी OpenAI-संगत क्लाइंट के साथ काम करता है।
चैट कम्पलीशन
POST /v1/chat/completions एंडपॉइंट पर टेक्स्ट प्रॉम्प्ट भेजें। मॉडल ID uncensored है। यह एंडपॉइंट मानक चैट संदेश स्वीकार करता है और जनरेटेड टेक्स्ट लौटाता है। इसमें एम्बेडिंग, छवियों या ऑडियो का समर्थन नहीं है। मॉडल कानूनी वयस्क सामग्री के लिए बिना सेंसर प्रतिक्रियाओं के लिए ट्यून्ड है।
सुनिश्चित करें कि आपके पेलोड में मॉडल ID और संदेश इतिहास शामिल है। API टेक्स्ट इनपुट को प्रोसेस करता है और सीधे टेक्स्ट आउटपुट लौटाता है।
curl https://api.nsfwchat.cc/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."}]
}'
Python SDK
एकीकरण के लिए आधिकारिक OpenAI Python SDK का उपयोग करें। हमारे API एंडपॉइंट के लिए base_url सेट करें और अपनी API कुंजी प्रदान करें। SDK स्वचालित रूप से सीरियलाइजेशन और त्रुटि पार्सिंग संभालता है। आउटपुट यादृच्छिकता को नियंत्रित करने के लिए temperature और top_p जैसे पैरामीटर कॉन्फ़िगर करें।
अपनी कुंजी और बेस URL के साथ क्लाइंट को इनिशियलाइज़ करें। मॉडल ID और संदेशों के साथ chat.completions.create() कॉल करें। यह दृष्टिकोण सरल टेक्स्ट जनरेशन कार्यों के लिए बॉयलरप्लेट कोड को कम करता है।
from openai import OpenAI
client = OpenAI(base_url="https://api.nsfwchat.cc/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)
Node SDK
Node.js OpenAI SDK Python संस्करण की तरह ही काम करता है। कस्टम बेस URL और अपनी API कुंजी के साथ क्लाइंट को कॉन्फ़िगर करें। अनुरोध भेजने के लिए chat.completions.create विधि का उपयोग करें।
यह विधि सर्वर-साइड एकीकरण के लिए आदर्श है। SDK कनेक्शन पूलिंग और पुन: प्रयास प्रबंधित करता है। बिना सेंसर प्रतिक्रियाओं को सुनिश्चित करने के लिए मॉडल को uncensored पर सेट करें। भूमिका और सामग्री वस्तुओं के एक सरणी के रूप में संदेश पास करें।
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.nsfwchat.cc/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);
स्ट्रीमिंग प्रतिक्रियाएं
अपने अनुरोध में stream: true सेट करके स्ट्रीमिंग सक्षम करें। API सर्वर-सेंट इवेंट्स (SSE) लौटाता है। प्रत्येक चंक आंशिक टेक्स्ट रखता है। टोकन उपयोग विवरण अंतिम चंक में प्रकट होते हैं।
स्ट्रीमिंग लंबे आउटपुट के लिए अनुभूत विलंबता को कम करता है। पूर्ण प्रतिक्रिया को पुनर्स्थापित करने के लिए प्रत्येक चंक को क्रमिक रूप से प्रक्रिया करें। यह विधि रियल-टाइम UI अपडेट के लिए आवश्यक है। कनेक्शन स्थिरता बनाए रखने के लिए स्ट्रीम इवेंट्स के भीत्र त्रुटियों को हैंडल करें।
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 है। एक 401 स्टेटस अमान्य या अनुपलब्ध API कुंजी को दर्शाता है। एक 429 स्टेटस दर्शाता है कि आपने रेट लिमिट पार कर लिया है।
प्रॉम्प्ट और पूर्णता दोनों के लिए कॉन्टेक्स्ट विंडो 100,000 टोकन है। यदि आप इस सीमा से अधिक जाते हैं, तो अनुरोध अस्वीकार कर दिया जाएगा। कोई ट्रंकेशन नहीं है; सुनिश्चित करें कि आपका इनपुट विंडो में फिट बैठता है। 402 स्थिति अपर्याप्त प्रीपेड बैलेंस को इंगित करती है। त्रुटियाँ और अस्वीकृतियाँ क्रेडिट खर्च नहीं करती हैं।
तकनीकी विवरण
API की सभी असली सीमाएँ और सुविधाएँ एक जगह — क्रेडिट जोड़ने से पहले इन्हें देख लें।
| मद | मान |
|---|---|
| API फ़ॉर्मेट | OpenAI के अनुकूल: कोई भी OpenAI SDK चलेगा — बस base URL और कुंजी बदलें |
| मॉडल ID | uncensored |
| प्रमाणीकरण | Authorization: Bearer YOUR_KEY |
| Base URL | https://api.nsfwchat.cc/v1 |
| एंडपॉइंट | POST /v1/chat/completions · GET /v1/models |
| JSON मोड | response_format: {"type": "json_object"} |
| कॉन्टेक्स्ट विंडो | 100,000 टोकन (इनपुट + आउटपुट मिलाकर) |
| स्ट्रीमिंग | हाँ — server-sent events; आख़िरी हिस्से में टोकन उपयोग |
| पैरामीटर | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| फ़ंक्शन कॉलिंग | हाँ — tools, tool_choice; जवाब में tool_calls, स्ट्रीमिंग में भी; नतीजे role: tool संदेश से भेजें |
| अधिकतम आउटपुट | 100,000-टोकन विंडो के शेष हिस्से तक; max_tokens वैकल्पिक (अलग सीमा नहीं) |
| अनुरोध का आकार | 8 MB तक |
| रिस्पॉन्स हेडर | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| समानांतर अनुरोध | प्रति कुंजी एक साथ 8 तक |
| रेट लिमिट | प्रति कुंजी प्रति मिनट 300 अनुरोध |
| वैधता | भुगतान किया क्रेडिट कभी समाप्त नहीं होता, कोई सदस्यता नहीं |
| बिलिंग | प्रीपेड क्रेडिट, असली उपयोग के अनुसार; त्रुटियाँ और अस्वीकृतियाँ मुफ़्त |
| टॉप-अप | USDT (TRC20) या USDC (Base), $10 से $500 तक कोई भी पूरी राशि |
| मुफ़्त ट्रायल क्रेडिट | $0.50, 7 दिन, कार्ड की ज़रूरत नहीं · ट्रायल कुंजी: 2 समानांतर अनुरोध, 60 प्रति मिनट; पहले टॉप-अप के बाद पूरी सीमाएँ (8 और 300) |
| बोनस | $50 से +5%, $100 से +10% |
| कीमत | प्रति 10 लाख इनपुट टोकन $0.25 · प्रति 10 लाख आउटपुट टोकन $1.00 |
| कुंजियाँ | हर खाते में एक सक्रिय कुंजी; नई कुंजी पुरानी की जगह लेती है |
| साइन इन | Google या ईमेल और पासवर्ड |
| सामग्री | वयस्क सामग्री की अनुमति; नाबालिगों से जुड़ी यौन सामग्री अस्वीकार |
त्रुटि कोड
त्रुटियाँ JSON में स्थिर type के साथ आती हैं; विफल या अस्वीकृत अनुरोधों का शुल्क नहीं लगता।
| कोड | प्रकार | अर्थ |
|---|---|---|
400 | bad_request | अमान्य JSON, खाली संदेश, गलत पैरामीटर या कॉन्टेक्स्ट विंडो से अधिक |
401 | missing_key · invalid_key · key_revoked | कुंजी नहीं, गलत कुंजी या नई कुंजी से बदली गई |
402 | no_credit | क्रेडिट ख़त्म — टॉप-अप करें, तुरंत चालू |
403 | content_blocked | नाबालिगों से जुड़ी यौन सामग्री — अस्वीकार, कोई शुल्क नहीं |
404 | not_found | अज्ञात एंडपॉइंट |
413 | request_too_large | बॉडी 8 MB से बड़ी |
429 | rate_limited · concurrency | 300/मिनट या 8 समानांतर से अधिक — रुककर फिर कोशिश करें |
503 | upstream_busy | मॉडल व्यस्त — कुछ सेकंड बाद फिर कोशिश करें |
प्रश्न और उत्तर
क्या API फ़ंक्शन कॉलिंग का समर्थन करता है?
हाँ, API <code>tools</code> और <code>tool_choice</code> पैरामीटर के माध्यम से फ़ंक्शन कॉलिंग का समर्थन करता है। आप अपने अनुरोध में टूल्स परिभाषित कर सकते हैं और मॉडल टूल उपयोग के लिए संरचित JSON लौटाएगा। यह सुविधा मानक OpenAI-संगत क्लाइंट्स के साथ काम करती है।
कॉन्टेक्स्ट विंडो का आकार क्या है?
कॉन्टेक्स्ट विंडो 100,000 टोकन है, जिसमें प्रॉम्प्ट और पूर्णता दोनों शामिल हैं। प्रति अनुरोध अधिकतम आउटपुट 32,000 टोकन है, या 2,048 यदि <code>max_tokens</code> सेट नहीं है। इस विंडो से अधिक अनुरोध अस्वीकार कर दिए जाते हैं।
त्रुटियों को कैसे संभाला जाता है?
त्रुटि प्रतिक्रियाओं में एक स्टेटस कोड और संदेश शामिल होता है। <code>401</code> कोड का अर्थ है कि API कुंजी अमान्य है। <code>429</code> कोड का अर्थ है कि आपने रेट लिमिट पार कर ली है। <code>402</code> कोड पर्याप्त प्रीपेड बैलेंस की कमी को दर्शाता है। त्रुटियों से आपका टोकन क्रेडिट खर्च नहीं होता है।
आपकी कुंजी बस एक फ़ॉर्म दूर है
एक खाता बनाएं, कुंजी कॉपी करें, बेस URL बदलें। सेटअप यही है।