Qwen Abliterated: Cambia la configuración de tu cliente en tres líneas
Conecta tu cliente SDK de OpenAI existente a nuestro endpoint sin censura en menos de un minuto. Reemplaza la URL base y la clave de API, luego ejecuta tus llamadas estándar de chat-completions sin modificaciones.
Autenticación y URL base
Nuestra API sigue el formato estándar de OpenAI. Solo necesitas dos cosas: la URL base y una clave de API válida. La URL base es https://api.qwenabliterated.top/v1. No necesitas importar bibliotecas especiales ni cambiar la estructura de tu código. Simplemente actualiza la configuración de tu cliente para apuntar a esta URL y proporciona la clave que generaste en la página Obtener clave de API. El sistema usa autenticación de token Bearer estándar, por lo que cualquier SDK compatible con OpenAI funciona de inmediato.
curl https://api.qwenabliterated.top/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."}]
}'Mantén tu clave segura. A diferencia de algunos proveedores, no rastreamos tu identidad más allá del correo electrónico que usas para iniciar sesión. Los prompts no se utilizan para datos de entrenamiento. Si pierdes tu clave, genera una nueva; reemplaza la clave activa anterior inmediatamente.
Primera petición de finalización
Envía tu primer mensaje usando el endpoint estándar /v1/chat/completions. Pasa el ID del modelo como "uncensored". Este modelo es de pesos abiertos, ajustado para producir salida sin restricciones, y no aplica las negaciones típicas de los modelos de propósito general. Maneja temas adultos, controversiales o técnicos sin ruido adicional, siempre que el contenido no involucre a menores.
from openai import OpenAI
client = OpenAI(base_url="https://api.qwenabliterated.top/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)La respuesta devuelve el texto generado en el campo choices[0].message.content. Si la petición falla debido a una clave inválida, recibirás un error 401. Si tu crédito prepago se agota, recibirás un error 402. Los errores no consumen tu saldo de tokens, así que puedes reintentar sin penalización.
Respuestas en streaming
Para aplicaciones en tiempo real, habilita el streaming estableciendo stream: true. La API devuelve un flujo de Server-Sent Events (SSE). Cada fragmento contiene un token parcial. El fragmento final incluye el uso total de tokens para la petición, permitiéndote rastrear los costos con precisión. Esto es ideal para interfaces de chat o herramientas basadas en terminal donde la latencia es importante.
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 comportamiento del modelo ni la ventana de contexto. Solo afecta cómo se entrega la respuesta. Asegúrate de que tu cliente maneje el flujo correctamente para evitar fugas de memoria. El modelo sin censura funciona bien bajo streaming, entregando texto coherente sin los cortes típicos en medio de la oración que se ven en modelos filtrados.
Modo JSON
Cuando necesites datos estructurados, usa response_format: {"type": "json_object"}. El modelo ha sido instruido para producir JSON válido. Esto es útil para analizar configuraciones, generar estructuras de código o alimentar datos en servicios posteriores. Aunque no se garantiza que sea perfecto, el modelo sin censura maneja estructuras complejas mejor que los modelos estándar que podrían negarse a producir JSON sin restricciones por razones de seguridad.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.qwenabliterated.top/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);Valida siempre la salida en tu lado. Si el JSON está mal formado, la API no reintenta automáticamente. Puedes ajustar la temperatura para influir en la consistencia. Temperaturas más bajas producen estructuras JSON más predecibles, mientras que temperaturas más altas introducen más creatividad pero arriesgan errores de formato.
Llamadas a funciones
El soporte para herramientas está integrado. Define tus funciones en el parámetro tools y establece tool_choice según sea necesario. El modelo devolverá un array tool_calls si decide invocar una función. Debes ejecutar la función y pasar el resultado de nuevo en un mensaje posterior con role: "tool". Esto sigue el patrón estándar de uso de herramientas de OpenAI.
Esta función funciona con cualquier SDK compatible con OpenAI. El modelo sin censura maneja las definiciones de herramientas claramente, sin rechazar producir nombres de funciones debido a filtros de contenido. Es adecuado para construir agentes o automatizar flujos de trabajo que requieren llamadas a APIs externas.
Parámetros, límites y errores
La ventana de contexto es de 100,000 tokens, incluyendo tanto el prompt como la finalización. No hay un límite de salida separado (si max_tokens no está establecido, la respuesta puede extenderse hasta el final de la ventana). Puedes controlar la generación con temperature, top_p, stop, seed y parámetros de penalización.
Los límites de velocidad son de 300 peticiones por minuto y 8 peticiones simultáneas por clave. Si excedes estos límites, recibirás un error 429. Los cuerpos de las peticiones deben ser menores a 8 MB. Estos límites aseguran un rendimiento estable para usuarios de alto volumen. No hay restricciones ocultas sobre el tipo de contenido que puedes generar, excepto el límite estricto sobre contenido sexual que involucre menores.
Especificaciones técnicas
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 |
| Endpoints | POST /v1/chat/completions · GET /v1/models |
| Autenticación | Authorization: Bearer YOUR_KEY |
| ID del modelo | uncensored |
| Base URL | https://api.qwenabliterated.top/v1 |
| 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 |
| Parámetros | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Modo JSON | response_format: {"type": "json_object"} |
| Llamadas a funciones | sí: tools, tool_choice; la respuesta trae tool_calls, también en streaming; resultados como role: tool |
| Límite de peticiones | 300 por minuto 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 |
| Concurrencia | 8 peticiones a la vez por clave |
| Precio | $0,15 por 1M tokens de entrada · $0,50 por 1M de salida |
| Bono | +5 % desde $50, +10 % desde $100, +15 % desde $200 |
| Facturación | crédito prepago por uso real; errores y rechazos no se cobran |
| Caducidad | el crédito pagado no caduca, sin suscripción |
| 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 |
| 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
¿Es este el mismo modelo oficial de Qwen?
No. Ejecutamos un modelo de pesos abiertos ajustado para salida sin censura. No es GPT, Claude, Gemini, Grok ni el modelo de ningún otro proveedor. Es independiente y sirve a nuestro caso de uso específico para generación de contenido sin filtros.
¿Puedo usar mi clave de API de OpenAI existente?
No. Debes generar una clave desde nuestra plataforma. El formato de la clave es estándar, pero está vinculado a tu cuenta de crédito prepago aquí, no a ningún otro proveedor. Las claves se muestran inmediatamente después del registro.
¿Qué pasa si obtengo un error 402?
Un error 402 significa que tu crédito prepago se agotó. Recarga por cripto (USDT en TRC20, USDC en Base) para continuar. Los errores y rechazos no consumen crédito, así que solo pagas por el uso exitoso 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.
Obtener clave de API