प्रमाणीकरण करें और Base URL कॉन्फ़िगर करें
आपका API कुंजी चैट कंप्लीशंस एंडपॉइंट तक तत्काल पहुंच प्रदान करता है। डैशबोर्ड पर Google या ईमेल के माध्यम से एक कुंजी जनरेट करें और इसे अपने एनवायरनमेंट वेरिएबल्स में पेस्ट करें। बेस यूआरएल है https://api.cheapaiapikeys.com/v1 जो किसी भी स्टैंडर्ड OpenAI SDK क्लाइंट के साथ काम करता है।
- सेट करें
OPENAI_API_KEYआपके जनरेटेड स्ट्रिंग में। - ओवरराइड
base_urlहमारे होस्टेड सर्वर के लिए इंगित करें। - कॉल करके कनेक्टिविटी की पुष्टि करें
GET /v1/modelsउपलब्ध मॉडल सूचीबद्ध करने के लिए।
curl https://api.cheapaiapikeys.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List three common regex patterns for validating email addresses"}]
}'
अपनी पहली चैट कंप्लीशन रिक्वेस्ट भेजें
मानक चैट कंप्लीशन संरचना का उपयोग करके टेक्स्ट इनपुट प्राप्त करें और जनरेटेड टेक्स्ट प्राप्त करें। हमारा एकल uncensored मॉडल कानूनी वयस्क या विवादास्पद विषयों को अस्वीकार किए बिना अनुरोधों को प्रक्रिया करता है। आप पैरामीटर जैसे को समायोजित कर सकते हैं temperature और top_p यादृच्छिकता को नियंत्रित करने के लिए।
from openai import OpenAI
client = OpenAI(base_url="https://api.cheapaiapikeys.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)
स्ट्रीमिंग सक्षम करें और SSE इवेंट्स हैंडल करें
रियल-टाइम टोकन डिलीवरी को सक्षम करने के लिए सेटिंग करें stream: true आपके अनुरोध में। सर्वर Server-Sent Events (SSE) लौटाता है जिन्हें आपको क्रमबद्ध रूप से पार्स करना होगा। टोकन उपयोग विवरण स्ट्रीम के अंतिम chunk में दिखाई देते हैं। यह दृष्टिकोण लंबे उत्तरों के लिए अनुभवजन्य विलंबता को कम करता है।
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.cheapaiapikeys.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);
फंक्शन कॉलिंग और JSON मोड का उपयोग करें
स्ट्रक्चर्ड आउटपुट या बाहरी फंक्शन एक्जीक्यूशन सक्षम करने के लिए अपने रिक्वेस्ट पेलोड में टूल्स परिभाषित करें। response_format: {type: "json_object"} कठोर JSON अनुपालन को बल देने के लिए। मॉडल का समर्थन करता है tool_choice निर्भरता के लिए कि यह किन फंक्शनों को कॉल करता है, इस पर सटीक नियंत्रण के लिए। यह आपके एप्लिकेशन तर्क के लिए विश्वसनीय पarsing सुनिश्चित करता है।
टोकन लिमिट्स और मूल्य निर्धारण को समझें
मूल्य निर्धारण $0.15 प्रति मिलियन इनपुट टोकन और $0.50 प्रति मिलियन आउटपुट टोकन पर पारदर्शी है। त्रुटियां और अस्वीकृतियां क्रेडिट खर्च नहीं करतीं। संदर्भ विंडो कुल 100,000 टोकन का समर्थन करती है। सीमा से अधिक अनुरोध 429 रेट लिमिट त्रुटि लौटाते हैं। सुनिश्चित करें कि आपके पेलोयड 8 MB से कम रहें ताकि बॉडी त्रुटियों से बचा जा सके।
त्रुटियों और किनारे के मामलों को हैंडल करें
सामान्य त्रुटियों में अमान्य कुंजियों के लिए 401 और अपर्याप्त क्रेडिट के लिए 402 शामिल है। 429 स्टेटस बताता है कि आपने प्रति मिनट 300 अनुरोधों को पार कर लिया है। रेट लिमिट के बाद पुनः प्रयास करते समय एक्सपोनेंशियल बैकऑफ़ का उपयोग करें। जांचें error object JSON रिस्पॉन्स में विशिष्ट विवरण के लिए। रिफंड जारी नहीं किए जाते, इसलिए अपनी उपयोगिता की सख्ती से निगरानी करें।
स्ट्रीमिंग
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)