احراز هویت و URL پایه
کلید API شما هر درخواست را احراز هویت میکند. کلیدی را از طریق داشبورد با استفاده از گوگل یا ایمیل ایجاد کنید؛ نیازی به شماره تلفن نیست. از این کلید در Authorization header. URL پایه برای تمام درخواستها HTTPS://api.modelsnsfw.com/v1. این اندپوینت با هر کلاینت سازگار با OpenAI کار میکند و تنها با تغییر URL پایه و ارائه کلید خود امکانپذیر است.
curl https://api.modelsnsfw.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List all available nsfw model tiers and their monthly costs."}]
}'
نقطه پایانی تکمیل چت
ارسال متن و دریافت متن از طریق POST /v1/chat/completionsشناسه مدل uncensored. یک مدل وزنباز است که برای عدم رد شدن روی محتوای بزرگسالان قانونی تنظیم شده است. این GPT، Claude یا هر مدل فروشنده دیگری نیست. توکنهای ورودی 0.15 دلار به ازای هر میلیون هزینه دارند؛ توکنهای خروجی 0.50 دلار به ازای هر میلیون هزینه دارند. خطاها رایگان هستند.
from openai import OpenAI
client = OpenAI(base_url="https://api.modelsnsfw.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) را با مصرف توکن در قطعه نهایی برمیگرداند. این برای رابطهای چت در زمان واقعی ایدهآل است. شما توکنهای جزئی را فوراً دریافت میکنید. این تاخیر ادراک شده را برای کاربر به طور قابل توجهی کاهش میدهد.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.modelsnsfw.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);
Function Calling & JSON Mode
استفاده response_format: {"type": "json_object"} برای خروجی ساختاریافته. همچنین میتوانید ابزارها را برای فراخوانی تابع تعریف کنید. مدل از temperature, top_p, stop، و seed پارامترها. این نتایج قطعی را زمانی که نیاز است تضمین میکند. حالت JSON خروجی را به فرمت JSON معتور مجبور میکند.
محدودیتهای نرخ و محدودیتها
شما به ۳۰۰ درخواست در دقیقه به ازای هر کلید محدود هستید. فقط ۸ درخواست میتوانند به صورت همزمان اجرا شوند. بدنه درخواست نباید از ۸ مگابایت تجاوز کند. اگر درخواستهای زیادی ارسال کنید، خطای 429 دریافت میکنید. کلیدهای نامعتبر 401 را برمیگردانند. اعتبار ناکافی 402 را برمیگرداند. خطاها در طول پردازش اعتبار پیشپرداخت شما را مصرف نمیکنند.
مصرف و صورتحساب توکن
پنجره زمینه ۱۰۰,۰۰۰ توکن بهطور کلی است. حداکثر خروجی ۱۶,۰۰۰ توکن در هر درخواست است. اگر max_tokens تنظیم نشده است، پیشفرض آن 2,048 است. اعتبارها از پیش پرداخت شدهاند و هرگز منقضی نمیشوند. شارژهای مجدد فقط با ارز دیجیتال (USDT/TRC20 یا USDC/Base) امکانپذیر است. برای شارژهای بزرگتر اعتبار بونوس اعمال میشود. نیاز به اشتراک نیست.
جریانسازی
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)