बेस URL और प्रमाणीकरण
सभी अनुरोधों के लिए बेस यूआरएल है https://api.veniceaiapipricing.com/v1. अपने API कुंजी पास करके प्रमाणीकरण करें Authorization header एक bearer token के रूप में। यह सेटअप किसी भी मानक OpenAI SDK के साथ काम करता है। प्रतिस्थापित करें YOUR_API_KEY आपके खाता डैशबोर्ड से उत्पन्न की के साथ।
- एंडपॉइंट:
POST /v1/chat/completions - हेडर:
Authorization: Bearer YOUR_API_KEY
curl https://api.veniceaiapipricing.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Return server status code 200"}]
}'
/v1/chat/completions एंडपॉइंट
अपनी बातचीत का इतिहास भेजें /v1/chat/completions का उपयोग करके uncensored मॉडल आईडी। API मान्य संदेश ऑब्जेक्ट्स को स्वीकार करता है, role और content फ़ील्ड्स। इनपुट टोकन की लागत प्रति मिलियन $0.15 है, और आउटपुट टोकन की लागत प्रति मिलियन $0.50 है। त्रुटियां और अस्वीकृतियां क्रेडिट नहीं खपतीं।
यह एंडपॉइंट केवल टेक्स्ट जनरेशन का समर्थन करता है। यह इमेजेज, ऑडियो या एम्बेडिंग्स हैंडल नहीं करता है। आप रिस्पॉन्स को स्ट्रीम कर सकते हैं या पूरा टेक्स्ट एकल JSON ऑब्जेक्ट के रूप में प्राप्त कर सकते हैं।
from openai import OpenAI
client = OpenAI(base_url="https://api.veniceaiapipricing.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 अपने अनुरोध बॉडी में। 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)
फंक्शन कॉलिंग और JSON मोड
API संरचित आउटपुट और टूल परिभाषाओं का समर्थन करती है। उपयोग करें response_format: {"type": "json_object"} JSON आउटपुट को बल देने के लिए। आप पास भी कर सकते हैं tools फ़ंक्शन कॉलिंग के लिए, जिससे मॉडल आपके एप्लिकेशन लॉजिक के लिए संरचित डेटा लौटा सके।
यह फीचर डेटा एक्सट्रैक्ट करने या एक्शन ट्रिगर करने के लिए उपयोगी है। मॉडल मानकीकृत फॉर्मेट में टूल कॉल्स लौटाता है। आप फिर अपने फंक्शन्स को एक्जीक्यूट कर सकते हैं और परिणामों को कन्वर्सेशन में वापस फीड कर सकते हैं।
पैरामीटर: तापमान, Top P, और Seeds
तापमान के साथ रचनात्मकता को नियंत्रित करें temperature और top_p. The seed पैरामीटर परीक्षण के लिए निर्धारणात्मक आउटपुट सुनिश्चित करता है। ये पैरामीटर मानक OpenAI अनुबंधों का पालन करते हैं। उन्हें समायोजित करने से जनरेटेड टेक्स्ट की यादृच्छिकता प्रभावित होती है।
सेट करें temperature संतुलित रचनाशीलता के लिए 0.7 तक। उपयोग करें seed पुनरुत्पादनीय परिणामों के लिए। API असमर्थित पैरामीटरों को सहजता से अनदेखा करती है।
रेट लिमिट्स और बाधाएँ
आप प्रति कुंजी प्रति मिनट 300 अनुरोधों तक सीमित हैं। प्रति कुंजी अधिकतम 8 समवर्ती अनुरोध अनुमत हैं। अनुरोध बॉडी का आकार 8 MB तक सीमित है। संदर्भ विंडो इनपुट और आउटपुट को मिलाकर 100,000 टोकन के लिए है। प्रति अनुरोध अधिकतम आउटपुट 16,000 टोकन है।
इन सीमाओं को पार करने से 429 त्रुटि लौटाई जाती है। सुनिश्चित करें कि आपका क्लाइंट पुनरावृत्तियों को उचित रूप से संभालता है। API कुंजी प्रति खाद unique होती है; एक नई कुंजी जनरेट करने से पुरानी कुंजी बदल जाती है।
Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.veniceaiapipricing.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);