Автентифікація & базовий URL
Ваш API-ключ автентифікує кожен запит. Згенеруйте ключ через панель керування, використовуючи Google або електронну пошту; номер телефону не потрібен. Використовуйте цей ключ у 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."}]
}'
Ендпоінт Chat Completions
Надсилайте текст і отримуйте текст через 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 повертає Server-Sent Events (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);
Виклик функцій & Режим JSON
Використовувати response_format: {"type": "json_object"} для структурованого виводу. Ви також можете визначити інструменти для виклику функцій. Модель підтримує temperature, top_p, stop, а також seed параметри. Це забезпечує детерміновані результати, коли це необхідно. Режим JSON змушує вихідні дані бути дійсним форматом JSON.
Ліміти частоти та обмеження
Вам доступно не більше 300 запитів на хвилину на кожен ключ. Одночасно може виконуватися лише 8 запитів. Розмір тіла запиту не повинен перевищувати 8 МБ. Якщо ви надсилаєте занадто багато запитів, ви отримуєте помилку 429. Недійсні ключі повертають 401. Недостатність кредиту повертає 402. Помилки під час обробки не списують ваш попередньо оплачений кредит.
Використання токенів та розрахунок
Розмір контекстного вікна становить 100 000 токенів загалом. Максимальний вивід — 16 000 токенів за запит. Якщо 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)