- Nsfwchat
- Chat NSFW: Inicio rápido: Integra el LLM sin censura
Chat NSFW: Inicio rápido: Integra el LLM sin censura
Integra nuestra API de LLM sin censura usando endpoints estándar compatibles con OpenAI. Esta guía rápida cubre autenticación, formatos de petición y streaming para generación de texto a gran escala.
URL base y autenticación
Usa la URL base dedicada para todas las peticiones. La autenticación se basa en una única clave de API generada durante el registro. Incluye la clave en el encabezado Authorization como token Bearer. Tu clave se muestra inmediatamente después de la creación. Cada cuenta tiene una clave activa; generar una nueva reemplaza la anterior.
La URL base es: https://api.nsfwchat.cc/v1. No se requieren capas adicionales de enrutamiento o proxy. Esta configuración funciona con cualquier cliente compatible con OpenAI ajustando la URL base y la clave de API.
Completado de chat
Envía prompts de texto al endpoint POST /v1/chat/completions. El ID del modelo es uncensored. Este endpoint acepta mensajes de chat estándar y devuelve texto generado. No admite incrustaciones, imágenes ni audio. El modelo está optimizado para respuestas sin censura a contenido adulto legal.
Asegúrate de que tu carga útil incluya el ID del modelo y el historial de mensajes. La API procesa la entrada de texto y devuelve la salida de texto directamente.
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 de Python
Usa el SDK oficial de OpenAI para Python para la integración. Establece el base_url al endpoint de nuestra API y proporciona tu clave de API. El SDK maneja la serialización y el análisis de errores automáticamente. Configura parámetros como temperature y top_p para controlar la aleatoriedad de la salida.
Inicializa el cliente con tu clave y URL base. Llama a chat.completions.create() con el ID del modelo y los mensajes. Este enfoque reduce el código repetitivo para tareas simples de generación de texto.
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 de Node.js
El SDK de OpenAI para Node.js funciona de manera idéntica a la versión de Python. Configura el cliente con la URL base personalizada y tu clave de API. Usa el método chat.completions.create para enviar peticiones.
Este método es ideal para integraciones del lado del servidor. El SDK gestiona el agrupamiento de conexiones y los reintentos. Establece el modelo en uncensored para garantizar respuestas sin censura. Pasa los mensajes como un array de objetos de rol y contenido.
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);
Respuestas en streaming
Activa el streaming estableciendo stream: true en tu petición. La API devuelve Server-Sent Events (SSE). Cada fragmento contiene texto parcial. Los detalles de uso de tokens aparecen en el último fragmento.
El streaming reduce la latencia percibida para salidas largas. Procesa cada fragmento secuencialmente para reconstruir la respuesta completa. Este método es esencial para actualizaciones de interfaz de usuario en tiempo real. Maneja los errores dentro de los eventos de streaming para mantener la estabilidad de la conexión.
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)
Límites de velocidad y errores
Respeta los límites de velocidad para evitar interrupciones del servicio. La API permite 300 peticiones por minuto y 8 peticiones simultáneas por clave. El tamaño máximo del cuerpo de la petición es de 8 MB. Un estado 401 indica una clave de API inválida o faltante. Un estado 429 indica que has excedido el límite de velocidad.
La ventana de contexto es de 100,000 tokens para prompt y completion combinados. Si superas este límite, la petición será rechazada. No hay truncamiento; asegúrate de que tu entrada quepa dentro de la ventana. Un estado 402 indica saldo prepago insuficiente. Los errores y las denegaciones no consumen crédito.
Funciones y límites
Todos los límites y funciones reales de la API en un solo lugar: revísalos antes de recargar.
| Elemento | Valor |
|---|---|
| Formato | compatible con OpenAI: cualquier SDK de OpenAI funciona cambiando la base URL y la clave |
| ID del modelo | uncensored |
| Autenticación | Authorization: Bearer YOUR_KEY |
| Base URL | https://api.nsfwchat.cc/v1 |
| Endpoints | POST /v1/chat/completions · GET /v1/models |
| Modo JSON | response_format: {"type": "json_object"} |
| Ventana de contexto | 100.000 tokens (entrada + salida) |
| Streaming | sí: server-sent events; el último fragmento incluye el uso de tokens |
| Parámetros | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Llamadas a funciones | sí: tools, tool_choice; la respuesta trae tool_calls, también en streaming; resultados como role: tool |
| Salida máxima | hasta el resto de la ventana de 100.000 tokens; max_tokens opcional (sin límite aparte) |
| Tamaño de petición | hasta 8 MB |
| Cabeceras | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Concurrencia | 8 peticiones a la vez por clave |
| Límite de peticiones | 300 por minuto por clave |
| Caducidad | el crédito pagado no caduca, sin suscripción |
| Facturación | crédito prepago por uso real; errores y rechazos no se cobran |
| Recarga | USDT (TRC20) o USDC (Base), cualquier importe entero de $10 a $500 |
| Prueba gratis | $0,50 durante 7 días, sin tarjeta · Clave de prueba: 2 solicitudes paralelas, 60 por minuto; límites completos (8 y 300) tras la primera recarga |
| Bono | +5 % desde $50, +10 % desde $100 |
| Precio | $0,25 por 1M tokens de entrada · $1,00 por 1M de salida |
| Claves | una clave activa por cuenta; una nueva reemplaza a la anterior |
| Acceso | Google o correo y contraseña |
| Contenido | contenido adulto permitido; se rechaza el contenido sexual con menores |
Códigos de error
Los errores llegan como JSON con un type fijo; las peticiones fallidas o rechazadas no se cobran.
| Código | Tipo | Significado |
|---|---|---|
400 | bad_request | JSON inválido, mensajes vacíos, parámetro incorrecto o contexto demasiado largo |
401 | missing_key · invalid_key · key_revoked | falta la clave, es incorrecta o fue reemplazada |
402 | no_credit | sin crédito: recarga y sigue al instante |
403 | content_blocked | contenido sexual con menores: rechazado, no se cobra |
404 | not_found | endpoint desconocido |
413 | request_too_large | cuerpo mayor de 8 MB |
429 | rate_limited · concurrency | más de 300/min o 8 en paralelo: espera y reintenta |
503 | upstream_busy | modelo ocupado: reintenta en unos segundos |
Preguntas y respuestas
¿La API admite llamadas a funciones?
Sí, la API admite llamadas a funciones mediante los parámetros <code>tools</code> y <code>tool_choice</code>. Puedes definir herramientas en tu petición y el modelo devolverá JSON estructurado para el uso de herramientas. Esta función es compatible con clientes compatibles con OpenAI.
¿Cuál es el tamaño de la ventana de contexto?
La ventana de contexto es de 100,000 tokens, combinando tanto el prompt como la completion. La salida máxima por petición es de 32,000 tokens, o 2,048 si no se establece <code>max_tokens</code>. Las peticiones que superan esta ventana son rechazadas.
¿Cómo se manejan los errores?
Las respuestas de error incluyen un código de estado y un mensaje. Un código <code>401</code> significa que la clave de API es inválida. Un código <code>429</code> significa que has alcanzado el límite de peticiones. Un código <code>402</code> indica saldo prepago insuficiente. Los errores no consumen tu crédito de tokens.
Tu clave está a un formulario de distancia
Crea una cuenta, copia la clave, cambia la URL base. Esa es toda la configuración.