URL پایه و احراز هویت
آدرس پایه برای تمام درخواستها https://api.veniceaiapipricing.com/v1. شما با ارسال کلید API خود در Authorization هدر به عنوان یک توکن bearer. این پیکربندی با هر 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"}]
}'
Endpoint /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_pThe seed پارامتر خروجیهای قطعی را برای تست فراهم میکند. این پارامترها از استانداردهای OpenAI پیروی میکنند. تنظیم آنها بر تصادفی بودن متن تولید شده تأثیر میگذارد.
تنظیم temperature to 0.7 for balanced creativity. Use seed برای نتایج تکرارپذیر. API پارامترهای پشتیبانینشده را به آرامی نادیده میگیرد.
محدودیتهای نرخ و محدودیتها
شما به ۳۰۰ درخواست در دقیقه به ازای هر کلید محدود هستید. حداکثر ۸ درخواست همزمان برای هر کلید مجاز است. اندازه بدنه درخواست به ۸ مگابایت محدود شده است. پنجره متن ۱۰۰,۰۰۰ توکن برای ورودی و خروجی به صورت ترکیبی است. حداکثر خروجی در هر درخواست ۱۶,۰۰۰ توکن است.
عبور از این محدودیتها خطای ۴۲۹ را برمیگرداند. مطمئن شوید که کلاینت شما تلاش مجدد را به درستی مدیریت میکند. کلید API منحصر به فرد برای هر حساب است؛ ایجاد کلید جدید، کلید قبلی را جایگزین میکند.
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);