RU ▾
Получить API-ключ
  1. Nsfwchat
  2. NSFW Chat: Начало работы: Интеграция LLM без цензуры

NSFW Chat: Начало работы: Интеграция LLM без цензуры

Интегрируйте наше API LLM без цензуры, используя стандартные эндпоинты, совместимые с OpenAI. В этом руководстве описаны аутентификация, форматы запросов и потоковая передача для генерации текста в больших объемах.

Базовый URL и аутентификация

Используйте выделенный базовый URL для всех запросов. Аутентификация основана на одном API-ключе, созданном при регистрации. Включите ключ в заголовок Authorization как токен Bearer. Ваш ключ отображается сразу после создания. У каждой учетной записи есть один активный ключ; генерация нового заменяет старый.

Базовый URL: https://api.nsfwchat.cc/v1. Дополнительные маршрутизаторы или прокси не требуются. Эта настройка работает с любым клиентом, совместимым с OpenAI, путем изменения базового URL и API-ключа.

Завершение чата

Отправляйте текстовые промпты на эндпоинт POST /v1/chat/completions. Идентификатор модели — uncensored. Этот эндпоинт принимает стандартные сообщения чата и возвращает сгенерированный текст. Он не поддерживает эмбеддинги, изображения или аудио. Модель настроена на ответы без цензуры для законного контента для взрослых.

Убедитесь, что ваш полезный груз содержит идентификатор модели и историю сообщений. API обрабатывает текстовый ввод и возвращает текстовый вывод напрямую.

curl https://api.nsfwchat.cc/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
  }'

SDK для Python

Используйте официальный SDK OpenAI для Python для интеграции. Установите base_url на наш эндпоинт API и укажите свой API-ключ. SDK автоматически выполняет сериализацию и обработку ошибок. Настройте параметры, такие как temperature и top_p, чтобы управлять случайностью вывода.

Инициализируйте клиент, указав ключ и базовый URL. Вызовите chat.completions.create() с идентификатором модели и сообщениями. Этот подход сокращает объем шаблонного кода для простых задач генерации текста.

from openai import OpenAI

client = OpenAI(base_url="https://api.nsfwchat.cc/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)

SDK для Node.js

SDK OpenAI для Node.js работает так же, как версия для Python. Настройте клиент, указав пользовательский базовый URL и свой API-ключ. Используйте метод chat.completions.create для отправки запросов.

Этот метод идеален для интеграции на стороне сервера. SDK управляет пулом соединений и повторными попытками. Установите модель в значение uncensored, чтобы обеспечить ответы без цензуры. Передавайте сообщения в виде массива объектов с ролями и содержимым.

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.nsfwchat.cc/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);

Потоковые ответы

Включите потоковую передачу, установив stream: true в запросе. API возвращает Server-Sent Events (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)

Лимиты запросов и ошибки

Соблюдайте лимиты запросов, чтобы избежать прерывания службы. API позволяет 300 запросов в минуту и 8 параллельных запросов на ключ. Максимальный размер тела запроса — 8 МБ. Статус 401 указывает на недействительный или отсутствующий API-ключ. Статус 429 указывает на превышение лимита запросов.

Контекстное окно составляет 100 000 токенов для промпта и завершения вместе. Если вы превысите этот лимит, запрос будет отклонён. Обрезания не происходит; убедитесь, что ваш ввод помещается в окно. Статус 402 указывает на недостаточный предоплаченный баланс. Ошибки и отклонения не расходуют кредит.

Технические характеристики

Все реальные лимиты и возможности API в одном месте — сверьте их до пополнения.

ПараметрЗначение
Формат APIсовместим с OpenAI: любой OpenAI SDK работает — замените base URL и ключ
ID моделиuncensored
АвторизацияAuthorization: Bearer YOUR_KEY
Base URLhttps://api.nsfwchat.cc/v1
ЭндпоинтыPOST /v1/chat/completions · GET /v1/models
JSON-режимresponse_format: {"type": "json_object"}
Контекстное окно100 000 токенов (вход и ответ вместе)
Потоковая передачада — server-sent events, последний фрагмент содержит расход токенов
Параметрыtemperature, top_p, stop, seed, presence_penalty, frequency_penalty
Вызов функцийда — tools, tool_choice; ответ содержит tool_calls, в том числе в потоке; результат — сообщением role: tool
Максимум ответадо остатка окна в 100 000 токенов; max_tokens необязателен (отдельного лимита нет)
Размер запросадо 8 МБ
Заголовки ответаX-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency
Параллельные запросыдо 8 одновременно на ключ
Лимит запросов300 запросов в минуту на ключ
Срок действияоплаченный баланс не сгорает, без подписки
Оплатапредоплаченный баланс по фактическому расходу; ошибки и отказы бесплатны
ПополнениеUSDT (TRC20) или USDC (Base), любая целая сумма от $10 до $500
Пробный баланс$0,50 на 7 дней, без карты · Пробный ключ: 2 параллельных запроса, 60 в минуту; полные лимиты (8 и 300) после первого пополнения
Бонус+5% от $50, +10% от $100
Цена$0,25 за 1 млн входных токенов · $1,00 за 1 млн выходных
Ключиодин активный ключ на аккаунт; новый заменяет старый
ВходGoogle или e-mail и пароль
Контентконтент для взрослых разрешён; сексуальный контент с несовершеннолетними запрещён

Коды ошибок

Ошибки приходят в JSON с постоянным type; неудачные и отклонённые запросы не оплачиваются.

КодТипЧто значит
400bad_requestневерный JSON, пустые сообщения, неверный параметр или превышено окно контекста
401missing_key · invalid_key · key_revokedнет ключа, ключ неверный или заменён новым
402no_creditбаланс пуст — пополните, работа продолжится сразу
403content_blockedсексуальный контент с несовершеннолетними — отказ, без оплаты
404not_foundнеизвестный эндпоинт
413request_too_largeтело запроса больше 8 МБ
429rate_limited · concurrencyбольше 300/мин или 8 параллельно — подождите и повторите
503upstream_busyмодель занята — повторите через несколько секунд

Вопросы и ответы

Поддерживает ли API вызов функций?

Да, API поддерживает вызов функций через параметры <code>tools</code> и <code>tool_choice</code>. Вы можете определить инструменты в запросе, и модель вернет структурированный JSON для их использования. Эта функция работает со стандартными клиентами, совместимыми с OpenAI.

Каков размер контекстного окна?

Контекстное окно составляет 100 000 токенов, объединяя промпт и ответ модели. Максимальный объём вывода на запрос — 32 000 токенов или 2 048, если <code>max_tokens</code> не задан. Запросы, превышающие это окно, отклоняются.

Как обрабатываются ошибки?

В ответах об ошибках содержатся код статуса и сообщение. Код <code>401</code> означает, что API-ключ недействителен. Код <code>429</code> означает, что вы превысили лимит запросов. Код <code>402</code> указывает на недостаточный предоплаченный баланс. Ошибки не расходуют ваш токен-кредит.

Ваш ключ — в одной форме от вас

Создайте учетную запись, скопируйте ключ, измените базовый URL. Вот и вся настройка.