Guía de integración: SDK estándar de OpenAI
Conecta tu aplicación a la API LLM abliterada usando SDK estándar de OpenAI. Esta guía cubre autenticación, peticiones básicas, streaming, llamadas a funciones y límites de claves.
https://api.abliteratedapi.com/v1ModelouncensoredPrerrequisitos
Necesitas una clave de API del panel de la API LLM abliterada. Crea una cuenta con correo electrónico y contraseña para recibir tu clave de inmediato. No se requiere tarjeta de crédito para la prueba. La URL base para todas las peticiones es https://api.abliteratedapi.com/v1.. Esta URL funciona con los SDK oficiales de OpenAI y cualquier cliente compatible con OpenAI configurando el base_url y proporcionando tu clave de API.
Autenticación
Pasa tu clave de API en el encabezado Authorization. El valor debe ser Bearer YOUR_API_KEY. Si la clave no es válida, recibirás un error 401. Si la clave se revoca después de regenerarla, también devolverá 401. Si tienes crédito insuficiente, recibirás un error 402. Las claves no expiran; solo se invalidan cuando las regeneras.
curl https://api.abliteratedapi.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."}]
}'
Finalización básica
Envía una petición POST a /v1/chat/completions. El ID del modelo es "uncensored". La API acepta estructuras de mensajes estándar. Los prompts no se usan para entrenamiento. El modelo responde con texto de salida. Puedes enviar hasta 8 MB por cuerpo de petición.
from openai import OpenAI
client = OpenAI(base_url="https://api.abliteratedapi.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)
Respuestas en streaming
Habilita el streaming configurando stream: true en tu petición. La API devuelve Server-Sent Events (SSE). Esto te permite procesar tokens a medida que se generan. El streaming funciona con todos los SDK estándar. Úsalo para una mejor experiencia de usuario en interfaces de chat.
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)
Llamadas a funciones
La API del modelo sin censura admite llamadas a funciones. Define las herramientas en el cuerpo de la petición. El modelo puede seleccionar e invocar estas herramientas. Esto funciona con el formato estándar de OpenAI. Asegúrate de que las definiciones de las herramientas coincidan con las expectativas del SDK. Esto es útil para crear agentes o flujos de trabajo automatizados.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.abliteratedapi.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);
Límites de peticiones y límites
Estás limitado a 300 peticiones por minuto por clave. La ventana de contexto es de 100.000 tokens para prompt y completado combinados. Si excedes el límite de peticiones, recibes un error 429. No hay suscripción; el crédito es prepago y no caduca. Las recargas comienzan en $10. Un límite estricto de contenido bloquea contenido sexual que involucre menores.
Funciones y límites
Una tabla con cada límite, función y precio.
| Elemento | Valor |
|---|---|
| Formato | compatible con OpenAI: cualquier SDK de OpenAI funciona cambiando la base URL y la clave |
| Autenticación | Authorization: Bearer YOUR_KEY |
| Base URL | https://api.abliteratedapi.com/v1 |
| ID del modelo | uncensored |
| Endpoints | POST /v1/chat/completions · GET /v1/models |
| Salida máxima | hasta el resto de la ventana de 100.000 tokens; max_tokens opcional (sin límite aparte) |
| Modo JSON | response_format: {"type": "json_object"} |
| Parámetros | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| 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 |
| Ventana de contexto | 100.000 tokens (entrada + salida) |
| Límite de peticiones | 300 por minuto por clave |
| Concurrencia | 8 peticiones a la vez por clave |
| Cabeceras | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Tamaño de petición | hasta 8 MB |
| Facturación | crédito prepago por uso real; errores y rechazos no se cobran |
| Caducidad | el crédito pagado no caduca, sin suscripción |
| 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 |
| Contenido | contenido adulto permitido; se rechaza el contenido sexual con menores |
| Acceso | Google o correo y contraseña |
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
¿Las claves de API expiran?
No, las claves de API no expiran. Solo se invalidan si regeneras una nueva clave en tu panel. Puedes regenerar tu clave en cualquier momento, lo que revoca inmediatamente la anterior.
¿Cuál es el tamaño de la ventana de contexto?
La ventana de contexto es de 100.000 tokens. Esto incluye tanto el prompt de entrada como el completado de salida. Puedes enviar hasta 8 MB por cuerpo de petición.
¿Qué contenido está bloqueado?
El modelo no rechaza temas adultos legales, ficticios o controversos. Sin embargo, siempre aplica un límite estricto de contenido: el contenido sexual que involucre a menores está bloqueado. Las peticiones de ese tipo se deniegan.
Tu clave está a un formulario de distancia
Crea una cuenta, copia la clave, cambia la URL base. Eso es toda la configuración.
Obtener clave de API