es ▾
API de IA Uncensored para desarrolladoresdoesgrokhaveanapi.com

Inicio rápido de la API: Conecta tu cliente a nuestro modelo sin censura

Este inicio rápido muestra cómo apuntar un cliente compatible con OpenAI a nuestro modelo de texto uncensored. Necesitas una URL base, un model id y tu clave.

Autenticación y URL base

Cada solicitud se envía a https://doesgrokhaveanapi.com/v1 y lleva tu clave en la Authorization cabecera como token portador. Copia la clave desde la página Obtener clave API; se muestra una vez que te registras y puedes reemplazarla en cualquier momento.

Corto y directo: la URL base y la clave son los únicos dos valores que cambian cuando migras un cliente existente.

curl https://api.doesgrokhaveanapi.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "What is the current API endpoint for the model?"}]
  }'

El endpoint de finalización de chat

Enviar POST /v1/chat/completions con una lista de mensajes. La respuesta tiene la misma estructura que la respuesta de finalizaciones de chat de OpenAI, por lo que los analizadores existentes siguen funcionando.

  • Usa el rol user para tu prompt y system para instrucciones.
  • Lee la respuesta de choices[0].message.content.
  • Los recuentos de tokens se devuelven en usage, y es por eso que se cobra a tu crédito.
from openai import OpenAI

client = OpenAI(base_url="https://api.doesgrokhaveanapi.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)

Modelo admitido: 'uncensored'

Establece el campo model en uncensored. Este es el único id de modelo en el servicio, por lo que no hay nada que elegir. GET /v1/models lo devuelve, lo cual es una forma rápida de confirmar que la clave funciona.

El modelo es un modelo de peso abierto que se ejecuta en nuestros propios servidores. No rechaza solicitudes adultas, ficticias o controvertidas de carácter lícito. El único límite estricto es el contenido sexual que involucra a menores.

Streaming y llamada de funciones

Añadir stream: true para recibir tokens como eventos enviados por el servidor. El último fragmento contiene los números de uso, por lo que puedes registrar el costo por solicitud sin una segunda llamada.

La llamada de funciones funciona a través del estándar tools y tool_choice campos. Define cada función con un esquema JSON y lee la tool_calls matriz de la respuesta.

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)

Parámetros: Temperatura, Top P y Stop

Los parámetros de muestreo admitidos son temperature, top_p, stop, seed, presence_penalty y frequency_penalty. Usa una temperatura baja para código y extracción, y una más alta para ficción.

Si no configuras max_tokens, el límite predeterminado de salida es de 2.048 tokens. El máximo absoluto por solicitud es de 16.000 tokens.

Modo JSON y formatos de respuesta

Establecer response_format para { 'type': 'json_object' } cuando necesites una salida legible por máquina. Pide JSON en el prompt también, porque el modelo sigue la instrucción y el formato juntos.

  1. Describe los campos que necesitas en el mensaje del sistema.
  2. Mantén el ejemplo corto, dos o tres claves.
  3. Valida el resultado en tu código antes de almacenarlo.

Límites de velocidad y manejo de errores

Cada clave puede enviar 300 solicitudes por minuto y 8 solicitudes simultáneas. Se rechazan las solicitudes con un cuerpo superior a 8 MB. Un 401 significa que la clave es incorrecta, un 402 indica que se agotaron los créditos y un 429 significa que alcanzaste el límite de velocidad: espera y reintenta con retroceso exponencial.

Los errores y rechazos no se cobran. Ten en cuenta la ventana de contexto de 100.000 tokens para hilos largos: el recuento de prompt y de completado se suman.

Node.js

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.doesgrokhaveanapi.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);

Preguntas frecuentes

¿Qué URL base debo usar?

Usa https://doesgrokhaveanapi.com/v1 como la URL base. Cualquier SDK compatible con OpenAI la acepta cuando cambias la URL base y la clave, y nada más en tu código necesita cambiar.

¿Qué ID de modelo debo enviar?

Envía sin censura. Es el único modelo del servicio. Llama a GET /v1/models para confirmar el id y que tu clave está activa antes de ejecutar trabajos más grandes.

¿Por qué mi solicitud devuelve 402?

Una respuesta 402 significa que el crédito prepagado de la cuenta se ha agotado. Recarga con USDT en TRC20 o USDC en Base desde $20, y la siguiente solicitud se procesará. Las solicitudes fallidas no se cobran.

Tu clave de API está a un paso de distancia

Regístrate, copia tu token, actualiza el endpoint. Ese es todo el proceso.

Comenzar ahora