IA sin censura para desarrolladores: crea sin rechazos
La IA sin censura para desarrolladores traslada las reglas de contenido del modelo a tu aplicación. Eso te da libertad y también te da la tarea de escribir y hacer cumplir esas reglas.
Última actualización

Datos clave
- Escribe las reglas de tu producto en un prompt de sistema y compruébalas en el código.
- Añade tus propias comprobaciones de entrada y salida, ya que el modelo no hará todo el trabajo por ti.
- Registra IDs de petición, recuentos de tokens y un ID de usuario hasheado, no conversaciones completas, a menos que las necesites.
- Sigues siendo responsable de tus usuarios y de tu jurisdicción. El contenido sexual que involucre a menores de edad nunca está permitido.
Qué cambia cuando el modelo deja de rechazar
Con un asistente convencional, el proveedor decide qué es aceptable y el modelo rechaza lo demás. Con un modelo sin censura, optimizado para responder sin rechazos de contenido para uso adulto lícito, esa capa desaparece. La IA sin censura para desarrolladores es útil para herramientas de ficción, aplicaciones de compañía, investigación sobre el comportamiento de modelos y cualquier producto donde los rechazos convencionales estorben el trabajo lícito.
Lo que reemplaza el filtro del proveedor es tu propio diseño. Tú decides quién puede usar la aplicación, qué puede escribir el modelo y qué haces cuando algo sale mal. Este artículo cubre cuatro partes de ese trabajo: el prompt de sistema, una capa de moderación, el registro y tus responsabilidades.
Empieza con un prompt de sistema que establezca las reglas
Un prompt de sistema es tu primer y más barato control. Escríbelo como una política corta, en frases claras, y mantenlo estable entre versiones para que el comportamiento sea fácil de predecir.
- Rol y entorno. Quién es el asistente y para qué sirve el producto.
- Audiencia. Indica que todos los usuarios y todos los personajes son adultos.
- Límites. Indica lo que el asistente no debe escribir en tu producto, por ejemplo contenido que involucre a menores de edad, personas reales o instrucciones para dañar a otros.
- Formato. Longitud, tono, idioma, qué hacer cuando se pregunta algo fuera de alcance.
SYSTEM = '''You are the narrator of an interactive fiction app for adult readers.
All characters are adults. Never write sexual content involving minors.
Do not write about real, named private individuals.
If a request is outside the story, say so briefly and return to the scene.
Keep replies under 200 words.'''
Un prompt de sistema es una guía, no una garantía. El modelo puede desviarse y los usuarios pueden presionarlo. Por eso existe la siguiente capa.
Construye una capa de moderación alrededor del modelo
Comprueba el texto dos veces: antes de que llegue al modelo y después de que el modelo responda. Las reglas baratas capturan los casos obvios, y una segunda llamada al modelo puede juzgar los casos ambiguos. El modo JSON facilita analizar la decisión.
import json
from openai import OpenAI
client = OpenAI(base_url="https://api.bestuncensored.com/v1", api_key="YOUR_KEY")
BLOCKLIST = ["example banned phrase"] # your own rules
JUDGE = '''Classify the text. Reply with JSON: {"verdict": "allow" or "block", "reason": "short"}.
Block if it sexualizes anyone under 18, or asks for real-world harm.'''
def judge(text):
r = client.chat.completions.create(
model="uncensored",
messages=[{"role": "system", "content": JUDGE}, {"role": "user", "content": text}],
response_format={"type": "json_object"},
temperature=0,
)
return json.loads(r.choices[0].message.content)
def safe_reply(user_text, system):
low = user_text.lower()
if any(b in low for b in BLOCKLIST) or judge(user_text)["verdict"] == "block":
return "That request is outside what this app allows."
r = client.chat.completions.create(
model="uncensored",
messages=[{"role": "system", "content": system}, {"role": "user", "content": user_text}],
)
out = r.choices[0].message.content
if judge(out)["verdict"] == "block":
return "That reply was withheld by the app's content rules."
return out
El juez consume tokens como cualquier llamada: a $0,15 por 1M de entrada y $0,50 por 1M de salida, una comprobación de 300 tokens con un veredicto de 20 tokens cuesta 300 x $0,15 / 1.000.000 + 20 x $0,50 / 1.000.000 = $0,000045 + $0,00001 = $0,000055. Dos comprobaciones por mensaje añaden $0,00011, que es poco frente a la respuesta. Ningún filtro es perfecto, así que mantén un botón de informe y revisa los elementos marcados.
Registro sin acumulación
Necesitas registros para depurar, gestionar informes de abuso y vigilar los costes. No necesitas todas las conversaciones en texto plano, y guardarlas crea riesgos para ti y tus usuarios. Los prompts enviados a esta API no se usan para entrenamiento, pero tus propios registros son tu responsabilidad.
Un valor predeterminado sensato es registrar metadatos: hora, un ID de usuario hasheado, el encabezado de respuesta X-Request-Id, recuentos de tokens y la decisión de moderación. Almacena texto completo solo para elementos marcados, con un período de retención corto.
import hashlib, logging
log = logging.getLogger("llm")
def logged_call(user_id, messages):
raw = client.chat.completions.with_raw_response.create(
model="uncensored", messages=messages
)
resp = raw.parse()
log.info(
"user=%s req=%s in=%s out=%s balance=%s",
hashlib.sha256(user_id.encode()).hexdigest()[:12],
raw.headers.get("x-request-id"),
resp.usage.prompt_tokens,
resp.usage.completion_tokens,
raw.headers.get("x-balance-usd"),
)
return resp.choices[0].message.content
El ID de petición es lo que citas si contactas con soporte sobre una llamada específica.
Responsabilidades que conservas
Esta es información general, no asesoramiento legal. Habla con un abogado sobre tu caso específico. Estos puntos se aplican a la mayoría de productos construidos sobre un modelo sin censura:
- La línea dura. El contenido sexual que involucre a menores de edad nunca está permitido en este servicio, y ningún prompt de sistema cambia eso. Trátalo como una línea en tu propio producto también.
- Control de edad. Si tu producto contiene material para adultos, verifica o al menos controla por edad de una manera que se adapte a los lugares donde operas.
- Legislación local. Las normas sobre contenido para adultos, protección de datos y conservación de registros varían según el país y el estado. Se aplican a ti y a tus usuarios, donde sea que se ejecute la API.
- Términos y privacidad. Publica tus propios términos y aviso de privacidad. Lee también los del proveedor: términos y privacidad.
- Claves. Mantén las claves de API en tu servidor, nunca en un navegador o en la agrupación de la aplicación.
Abuso, informes y límites propios
Una vez que lleguen usuarios reales, algunos intentarán llevar el producto más allá de tus reglas. Planifica esto desde el primer día.
- Límites por usuario. Limita mensajes por día y peticiones por minuto por cuenta. Esto protege tu presupuesto y ralentiza el abuso automatizado. Tus propios límites deben estar por debajo de los de la API: una clave completa permite 300 peticiones por minuto entre todos los usuarios.
- Un botón de reporte. Permite a los usuarios marcar una respuesta. Guarda el ID de petición y el texto del intercambio marcado, y revisa la cola periódicamente.
- Escalación. Decide de antemano qué ocurre tras violaciones repetidas: una advertencia, una suspensión temporal, un bloqueo. Escríbelo en tus términos.
- Higiene de claves. Una vez que hayas recargado tu cuenta, puedes tener hasta 5 claves etiquetadas, así que usa una por entorno. Nunca envíes una clave en el código del cliente. Regenera una clave en la página de claves si puede haberse filtrado; la antigua deja de funcionar al instante.
Tu cola también te mostrará dónde el prompt de sistema es débil. Cuando aparezcan tres veces el mismo tipo de salida marcada, cambia el prompt o el filtro, luego vuelve a ejecutar tu conjunto de pruebas para asegurarte de que nada más se rompió. Trata los prompts como código: guárdalos en control de versiones y anota para qué sirvió cada cambio.
Planifica límites y fallos
El código de producción necesita backoff. Una clave completa permite 8 peticiones concurrentes y 300 peticiones por minuto. Al superar un límite, la API devuelve HTTP 429 con código rate_limited o concurrency, y en sobrecarga temporal un 429 con Retry-After: 5. Respeta ese encabezado. Si ejecutas una llamada de juez y una llamada de respuesta por mensaje, ambas cuentan contra los límites, así que dimensiona tu cola para el doble de peticiones.
Las peticiones fallidas o rechazadas no se cobran, así que los reintentos no cuestan nada para los intentos fallidos. La documentación lista los parámetros, y puedes probar todo con el crédito de prueba desde la página de clave de API. Para opciones en este ámbito, consulta opciones de IA sin censura comparadas.
Una revisión previa al lanzamiento
Antes de que lleguen usuarios reales, recorre una sesión guiada como lo haría un atacante. Intenta que la aplicación produzca algo que tus reglas prohíben, preguntando directamente, mediante juego de roles, dividiendo la petición entre turnos y pegando texto que contenga instrucciones. Registra qué se filtra y corrígelo en la capa adecuada.
- Si el modelo ignora una regla en el prompt de sistema, ajusta la redacción y añade una comprobación en el código.
- Si una comprobación bloquea demasiado contenido lícito, afloja la regla o añade una ruta de permiso, y mide la tasa de bloqueo falso en una muestra de prompts reales.
- Si el problema solo aparece en chats largos, prueba con un historial completo, ya que las reglas se desvían a medida que crece el contexto. Una ventana de 100.000 tokens te da espacio para mantener las reglas cerca de la parte superior y repetir un recordatorio corto al final.
Repite esta revisión cada vez que cambies el prompt, el filtro o la configuración del modelo. Mantén los casos de prueba en un archivo y ejecútalos como una comprobación automatizada, así un cambio que rompa una regla fallará antes de enviarse.
Más guías
Preguntas frecuentes técnicas
Obtén tu clave de API
Regístrate, recupera tu clave y actualiza la URL de tu endpoint. Sencillo.
¿Un modelo sin censura elimina la necesidad de moderación?
- No. Elimina los rechazos del proveedor, así que las reglas pasan a ser tuyas. Añade reglas de prompt de sistema y comprobaciones de entrada y salida que se ajusten a tu producto.
¿Puedo usar una segunda llamada al modelo como filtro?
- Sí. Usa el modo JSON con una instrucción breve y temperatura baja, y analiza el veredicto. Cada comprobación cuesta un pequeño número de tokens.
¿Se usan mis prompts para el entrenamiento?
- No. Los prompts no se utilizan para entrenamiento.
¿Qué está siempre prohibido?
- Contenido sexual que involucre a menores. El servicio es para uso adulto lícito.
¿Debo registrar las conversaciones completas?
- Solo cuando tengas una razón clara. Los metadatos como el ID de petición y los recuentos de tokens suelen ser suficientes, manteniendo el texto completo solo para los elementos marcados.