Guía rápida de la API de IA sin censura
Esta documentación te guía para integrar la API de LLM sin censura en tu aplicación fácilmente. Usa esta guía para comenzar con las completions de chat sin censura en cuestión de minutos.
- URL base
https://api.apitanpasensor.com/v1- Modelo
uncensored
Configuración de URL base y autenticación
Para comenzar, debes configurar la URL base para que el SDK compatible con OpenAI apunte a nuestro servidor. Usa https://api.apitanpasensor.com/v1 como endpoint principal. La autenticación se realiza mediante el encabezado Authorization: Bearer YOUR_API_KEY. La clave de API que obtienes al registrarte es única y solo es válida para una cuenta. Si regeneras la clave, la antigua se revocará inmediatamente y no se podrá usar, aunque no caduque automáticamente con el tiempo.
Ejemplo de primera petición
Envía una petición POST a /v1/chat/completions con el modelo uncensored. Este modelo open-weight no filtra temas adultos legítimos o controversiales, a diferencia de los modelos empresariales estándar.
curl https://api.apitanpasensor.com/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."}]
}'Asegúrate de incluir el parámetro model con el valor uncensored. La respuesta será un JSON con el texto generado por el modelo.
Integración con SDK de Python
Usa la librería openai en Python para interactuar con la API. Establece base_url y api_key según la configuración anterior. El modelo uncensored admite un contexto largo de hasta 100.000 tokens, lo que te permite enviar prompts muy largos sin perder información importante.
from openai import OpenAI
client = OpenAI(base_url="https://api.apitanpasensor.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)El ejemplo de código anterior muestra cómo enviar mensajes de sistema y de usuario de forma sencilla.
Integración con SDK de Node.js
Para usuarios de Node.js, el SDK de OpenAI también se puede configurar fácilmente. Establece baseURL a la URL de nuestro endpoint y usa tu clave de API. Este enfoque te permite integrar IA sin censura en tu aplicación web o servidor rápidamente.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.apitanpasensor.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);Recuerda que este modelo solo maneja texto; no admite generación de imágenes, audio ni video.
Activar streaming (SSE)
Para una experiencia de usuario más receptiva, activa el streaming añadiendo stream: true a los parámetros de la petición. La API devolverá la respuesta usando Server-Sent Events (SSE). Esto es muy útil para aplicaciones de chat en tiempo real donde el usuario ve los resultados token por token.
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)El streaming no cambia el precio ni el límite de tokens, solo la forma de entrega de la respuesta.
Limitaciones, errores y gestión del contexto
Esta API tiene un límite de 300 peticiones por minuto por clave y un tamaño máximo de cuerpo de petición de 8 MB. Si la clave no es válida, recibirás un error 401. Si el saldo de crédito se agota, aparecerá un error 402. El error 429 indica que has superado el límite de peticiones. La ventana de contexto es de 100.000 tokens para la suma de prompt y completion. Asegúrate de gestionar los tokens sabiamente para no superar este límite.
Preguntas frecuentes
¿Mi clave de API caduca?
Las claves de API no tienen fecha de caducidad automática. Sin embargo, si decides regenerar la clave en el panel, la clave antigua se revocará inmediatamente y dejará de ser válida, aunque no haya pasado el tiempo.
¿El modelo es realmente sin censura?
Sí, nuestro modelo open-weight está configurado para no rechazar temas adultos legítimos, ficción o investigación de seguridad. La única restricción estricta que siempre se aplica es el contenido sexual que involucra a menores.
¿Qué pasa si me quedo sin crédito?
Recibirás un error 402 (Pago requerido) en la siguiente petición. El crédito que compras no caduca, así que puedes recargarlo en cualquier momento sin miedo a perder el saldo.
Tu clave solo necesita un paso
Crea una cuenta, copia la clave, cambia la URL base. Ese es todo el proceso de configuración.
Ficha técnica de la API
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 |
| Endpoints | POST /v1/chat/completions · GET /v1/models |
| Autenticación | Authorization: Bearer YOUR_KEY |
| ID del modelo | uncensored |
| Base URL | https://api.apitanpasensor.com/v1 |
| Parámetros | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Modo JSON | response_format: {"type": "json_object"} |
| Salida máxima | hasta el resto de la ventana de 100.000 tokens; max_tokens opcional (sin límite aparte) |
| Ventana de contexto | 100.000 tokens (entrada + salida) |
| Streaming | sí: server-sent events; el último fragmento incluye el uso de tokens |
| Llamadas a funciones | sí: tools, tool_choice; la respuesta trae tool_calls, también en streaming; resultados como role: tool |
| Concurrencia | 8 peticiones a la vez por clave |
| Cabeceras | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Límite de peticiones | 300 por minuto por clave |
| Tamaño de petición | hasta 8 MB |
| Precio | $0,25 por 1M tokens de entrada · $1,00 por 1M de salida |
| Facturación | crédito prepago por uso real; errores y rechazos no se cobran |
| Bono | +5 % desde $50, +10 % desde $100, +15 % desde $200 |
| 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 |
| Recarga | USDT (TRC20) o USDC (Base), cualquier importe entero de $20 a $500 |
| Caducidad | el crédito pagado no caduca, sin suscripción |
| Claves | una clave activa por cuenta; una nueva reemplaza a la anterior |
| Contenido | contenido adulto permitido; se rechaza el contenido sexual con menores |
| Acceso | Google o correo y contraseña |
Errores y qué hacer
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 |