Character AI API: तीन पंक्तियों में अपना क्लाइंट बदलें
हमारे OpenAI-संगत API का उपयोग करके मिनटों में अपने चैटबॉट को एक बिना सेंसर LLM से जोड़ें। यह गाइड सेटअप, बुनियादी अनुरोधों और शून्य कॉन्फ़िगरेशन सिरदर्द के साथ स्ट्रीमिंग को दर्शाती है।
https://api.characteraiapi.com/v1
आवश्यकताएं
कोड लिखने से पहले, आपको characteraiapi.com पर एक सक्रिय खाते की आवश्यकता है। API कुंजी प्राप्त करें पृष्ठ पर जाएं और केवल ईमेल और पासवर्ड से साइन अप करें। शुरू करने के लिए क्रेडिट कार्ड की आवश्यकता नहीं है, और नए खातों को 7 दिनों के लिए मान्य $0.50 के मुफ़्त ट्रायल क्रेडिट प्राप्त होते हैं। पंजीकरण के बाद, आपकी API कुंजी तुरंत प्रदर्शित होती है। इस कुंजी को सुरक्षित रखें, क्योंकि यह एंडपॉइंट को सभी अनुरोधों को प्रमाणीकृत करती है। आपको अपने विकास वातावरण में एक समर्थित भाषा SDK की भी आवश्यकता होगी। character ai api एंडपॉइंट मानक OpenAI पैरामीटर स्वीकार करता है, इसलिए कोई भी मौजूदा OpenAI-संगत क्लाइंट न्यूनतम परिवर्तनों के साथ काम कर सकता है।
SDK इंस्टॉल करें
Python प्रोजेक्ट्स के लिए, pip का उपयोग करके आधिकारिक OpenAI पैकेज स्थापित करें। यह लाइब्रेरी JSON सीरियलाइज़ेशन और HTTP अनुरोधों को स्वचालित रूप से संभालती है। Node.js अनुप्रयोगों के लिए, npm का उपयोग करके openai पैकेज जोड़ें। दोनों लाइब्रेरियां इस मार्गदर्शिका में बाद में वर्णित स्ट्रीमिंग और टूल-कॉलिंग सुविधाओं का समर्थन करती हैं। सुनिश्चित करें कि आपका SDK संस्करण रियल-टाइम टोकन स्ट्रीमिंग के लिए सर्वर-सेंट इवेंट्स (SSE) का समर्थन करने के लिए पर्याप्त नवीन है। यदि आप SDK के बजाय एक कस्टम HTTP क्लाइंट का उपयोग कर रहे हैं, तो आपको OpenAI API विनिर्देश के अनुसार JSON पेलोड और SSE स्ट्रीम पार्सिंग को मैन्युअल रूप से संभालना होगा।
प्रमाणीकरण
API को प्रत्येक अनुरोध में अपनी API कुंजी Authorization हेडर में शामिल करनी होगी। Bearer YOUR_API_KEY प्रारूप का उपयोग करें। सभी अनुरोधों के लिए बेस यूआरएल https://api.characteraiapi.com/v1 है। जब SDK का उपयोग करें, तो इस मान के लिए base_url कॉन्फ़िगरेशन सेट करें और api_key पैरामीटर के माध्यम से अपनी कुंजी प्रदान करें। यदि आप अपनी कुंजी खो देते हैं या लीक होने का संदेह है, तो आप डैशबोर्ड से इसे पुन: उत्पन्न कर सकते हैं; पुरानी कुंजी तुरंत रद्द कर दी जाएगी। प्रति खाता केवल एक सक्रिय कुंजी की अनुमति है। सुनिश्चित करें कि आप सही बेस यूआरएल का उपयोग कर रहे हैं, क्योंकि मानक OpenAI एंडपॉइंट पर अनुरोध 404 या 401 त्रुटि के साथ विफल हो जाएंगे।
बुनियादी चैट पूर्णता
मुख्य कार्यक्षमता /v1/chat/completions एंडपॉइंट के माध्यम से प्रदान की जाती है। मॉडल नाम uncensored और अपनी संवाद इतिहास के साथ एक POST अनुरोध भेजें। मॉडल कानूनी वयस्क सामग्री के लिए मानक सामग्री फ़िल्टर लागू किए बिना टेक्स्ट आउटपुट के साथ प्रतिक्रिया देता है। नीचे एक सरल टेक्स्ट कंप्लीशन अनुरोध को प्रदर्शित करने वाला एक curl उदाहरण दिया गया है।
curl https://api.characteraiapi.com/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."}]
}'
यह अनुरोध उत्पन्न टेक्स्ट वाला एक कंप्लीशन ऑब्जेक्ट लौटाता है। आप यादृच्छिकता को नियंत्रित करने के लिए temperature जैसे पैरामीटर को समायोजित कर सकते हैं या आउटपुट लंबाई को सीमित करने के लिए max_tokens। मॉडल 100,000 टोकन की कॉन्टेक्स्ट विंडो का समर्थन करता है, जिससे एकल अनुरोध में संवाद इतिहास के बड़े हिस्से या लंबे दस्तावेजों को संसाधित करने की अनुमति मिलती है।
स्ट्रीमिंग प्रतिक्रियाएं
बेहतर उपयोगकर्ता अनुभव के लिए, अपने अनुरोध में stream: true सेट करके स्ट्रीमिंग सक्षम करें। API आंशिक टोकन चंक को उत्पन्न होने पर उन्हें सर्वर-सेंट इवेंट्स (SSE) के रूप में लौटाता है। यह चैटबॉट अनुप्रयोगों में अनुभव की गई विलंबता को कम करता है। यदि आप अंतिम उपयोग आँकड़े अंतिम इवेंट में प्राप्त करना चाहते हैं, तो stream_options पैरामीटर का उपयोग करें। स्ट्रीमिंग रियल-टाइम कैरेक्टर रोलप्ले के लिए विशेष रूप से उपयोगी है, जहाँ टेक्स्ट को शब्द-दर-शब्द प्रदर्शित करना तन्मयता को बढ़ाता है। सुनिश्चित करें कि आपका क्लाइंट कोड प्रत्येक चंक को क्रमिक रूप से पार्स करने के लिए 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 अनुरोधों की सीमा लागू करता है। यदि आप इससे अधिक हो जाते हैं, तो आपको 429 Too Many Requests त्रुटि प्राप्त होगी। अनुरोध बॉडी 8 MB तक सीमित है। सामान्य त्रुटियों में अमान्य या अनुपस्थित कुंजी के लिए 401 और यदि आपका प्रीपेड क्रेडिट समाप्त हो जाता है तो 402 शामिल है। आप क्रिप्टो (USDT या USDC) का उपयोग करके $10 से टॉप-अप कर सकते हैं, बड़े जमा के लिए बोनस क्रेडिट उपलब्ध हैं। कुछ प्रदाताओं के विपरीत, कोई छिपा शुल्क या सब्सक्रिप्शन लॉक नहीं हैं; आप केवल उन टोकन के लिए भुगतान करते हैं जिन्हें आप उपभोग करते हैं। मूल्य पारदर्शी है: 1M इनपुट टोकन प्रति $0.25 और 1M आउटपुट टोकन प्रति $1.00। सुनिश्चित करें कि आपकी त्रुटि हैंडलिंग लॉजिक 429 पर एक्सपोनेंशियल बैकऑफ़ के साथ पुन: प्रयास करता है।
from openai import OpenAI
client = OpenAI(base_url="https://api.characteraiapi.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)Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.characteraiapi.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);API विवरण
API की सभी असली सीमाएँ और सुविधाएँ एक जगह — क्रेडिट जोड़ने से पहले इन्हें देख लें।
| मद | मान |
|---|---|
| API फ़ॉर्मेट | OpenAI के अनुकूल: कोई भी OpenAI SDK चलेगा — बस base URL और कुंजी बदलें |
| एंडपॉइंट | POST /v1/chat/completions · GET /v1/models |
| प्रमाणीकरण | Authorization: Bearer YOUR_KEY |
| Base URL | https://api.characteraiapi.com/v1 |
| मॉडल ID | uncensored |
| JSON मोड | response_format: {"type": "json_object"} |
| अधिकतम आउटपुट | 100,000-टोकन विंडो के शेष हिस्से तक; max_tokens वैकल्पिक (अलग सीमा नहीं) |
| पैरामीटर | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| कॉन्टेक्स्ट विंडो | 100,000 टोकन (इनपुट + आउटपुट मिलाकर) |
| स्ट्रीमिंग | हाँ — server-sent events; आख़िरी हिस्से में टोकन उपयोग |
| फ़ंक्शन कॉलिंग | हाँ — tools, tool_choice; जवाब में tool_calls, स्ट्रीमिंग में भी; नतीजे role: tool संदेश से भेजें |
| अनुरोध का आकार | 8 MB तक |
| रिस्पॉन्स हेडर | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| समानांतर अनुरोध | प्रति कुंजी एक साथ 8 तक |
| रेट लिमिट | प्रति कुंजी प्रति मिनट 300 अनुरोध |
| वैधता | भुगतान किया क्रेडिट कभी समाप्त नहीं होता, कोई सदस्यता नहीं |
| बोनस | $50 से +5%, $100 से +10% |
| टॉप-अप | USDT (TRC20) या USDC (Base), $10 से $500 तक कोई भी पूरी राशि |
| कीमत | प्रति 10 लाख इनपुट टोकन $0.25 · प्रति 10 लाख आउटपुट टोकन $1.00 |
| बिलिंग | प्रीपेड क्रेडिट, असली उपयोग के अनुसार; त्रुटियाँ और अस्वीकृतियाँ मुफ़्त |
| मुफ़्त ट्रायल क्रेडिट | $0.50, 7 दिन, कार्ड की ज़रूरत नहीं · ट्रायल कुंजी: 2 समानांतर अनुरोध, 60 प्रति मिनट; पहले टॉप-अप के बाद पूरी सीमाएँ (8 और 300) |
| कुंजियाँ | हर खाते में एक सक्रिय कुंजी; नई कुंजी पुरानी की जगह लेती है |
| साइन इन | 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 | मॉडल व्यस्त — कुछ सेकंड बाद फिर कोशिश करें |
प्रश्न और उत्तर
क्या यह आधिकारिक Character.ai API है?
नहीं, यह characteraiapi.com पर होस्ट की गई एक स्वतंत्र सेवा है। यह अपना बिना सेंसर मॉडल प्रदान करता है और Character.AI या किसी अन्य प्रमुख LLM विक्रेता से संबद्ध नहीं है।
क्या मॉडल छवि या ऑडियो जनरेशन का समर्थन करता है?
नहीं। API केवल टेक्स्ट है। यह टेक्स्ट इनपुट स्वीकार करता है और टेक्स्ट आउटपुट लौटाता है। यह एम्बेडिंग, फाइन-ट्यूनिंग या बहुमोडल इनपुट/आउटपुट का समर्थन नहीं करता है।
'बिना सेंसर' को कैसे परिभाषित किया गया है?
मॉडल कानूनी वयस्क, काल्पनिक या विवादास्पद विषयों को अस्वीकार नहीं करता है। यह केवल किशोरों से संबंधित यौन सामग्री को ब्लॉक करता है, जो सभी अनुरोधों पर एक कठोर सीमा है।
आपकी कुंजी बस एक फ़ॉर्म दूर है
एक खाता बनाएं, कुंजी कॉपी करें, बेस URL बदलें। सेटअप यही है।