عنوان URL الأساسي والمصادقة
عنوان URL الأساسي لجميع الطلبات هو https://api.veniceaiapipricing.com/v1. تقوم بالمصادقة عن طريق تمرير مفتاح API الخاص بك في Authorization قيمة التوكن كـ bearer token. يعمل هذا الإعداد مع أي مكتبة SDK قياسية لـ OpenAI. استبدل 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 لكل مليون. لا تستهلك الأخطاء والرفض الائتمان.
يدعم هذا الـ Endpoint توليد النصوص فقط. لا يتعامل مع الصور، الصوت، أو التضمينات. يمكنك بث الاستجابات أو استرداد النص الكامل في كائن 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
تدعم واجهة برمجة التطبيقات المخرجات المنظمة وتعريفات الأدوات. استخدم response_format: {"type": "json_object"} لإجبار إخراج JSON. يمكنك أيضًا تمرير tools للاستدعاء الوظيفي، مما يسمح للنموذج بإرجاع بيانات هيكلية لمنطق التطبيق الخاص بك.
هذه الميزة مفيدة لاستخراج البيانات أو تشغيل الإجراءات. يعيد النموذج استدعاءات الأدوات بتنسيق موحد. يمكنك بعد ذلك تنفيذ وظائفك وإعادة النتائج إلى المحادثة.
المعلمات: درجة الحرارة وTop P والبذلات
تحكم في الإبداع باستخدام temperature و top_p. الـ seed يضمن مخرجات حتمية للاختبار. تتبع هذه المعلمات معايير OpenAI القياسية. يؤثر تعديلها على عشوائية النص المولد.
تعيين temperature إلى 0.7 للإبداع المتوازن. استخدم seed لإنتاج نتائج قابلة لإعادة الإنتاج. تتجاهل واجهة برمجة التطبيقات المعاملات غير المدعومة بسلاسة.
حدود المعدلات والقيود
يُسمح لك بإرسال 300 طلبًا في الدقيقة لكل مفتاح. يُسمح بحد أقصى 8 طلبات متزامنة لكل مفتاح. حجم جسم الطلب محدود بـ 8 ميجابايت. نافذة السياق هي 100,000 رمز مدمجًا للإدخال والإخراج معًا. الحد الأقصى للإخراج لكل طلب هو 16,000 رمز.
تجاوز هذه الحدود يعيد خطأ 429. تأكد من أن العميل الخاص بك يعيد المحاولة بشكل مناسب. مفتاح واجهة برمجة التطبيقات فريد لكل حساب؛ إنشاء مفتاح جديد يستبدل المفتاح القديم.
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);