Inicio rápido para pipelines de Vibevoice
Obtén texto sin censura directamente de VibeVoice en segundos. Este inicio rápido muestra cómo integrar nuestra API compatible con openai en tu pipeline usando SDK estándar.
Requisitos previos
Antes de integrar, asegúrate de tener una cuenta activa. Regístrate con Google o correo electrónico en la página Obtener clave de API para recibir tu clave única de inmediato. No necesitas tarjeta de crédito para la prueba inicial de $0,50. Nuestro LLM sin censura sirve el modelo con id "uncensored" a través de un endpoint estándar. La URL base es https://api.vibevoice.top/v1. Esta configuración funciona con cualquier SDK de OpenAI, lo que la convierte en un reemplazo listo para usar para muchos pipelines existentes.
Autenticación
Pasa tu clave de API en el encabezado Authorization. El formato debe ser "Bearer YOUR_API_KEY". Si falta la clave o es inválida, la API devuelve un error 401. Como nos enfocamos en el procesamiento de texto, asegúrate de que tu pipeline envíe solo datos de texto. La clave está vinculada a una cuenta; generar una nueva clave reemplaza la antigua al instante. Esta simplicidad permite iteraciones rápidas en tu entorno de desarrollo.
Envío de una petición
Realiza una petición POST a /v1/chat/completions. Incluye el id del modelo, tus mensajes y cualquier parámetro. Aquí tienes un ejemplo básico usando cURL:
curl https://api.vibevoice.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."}]
}'Esta petición envía una instrucción simple al modelo. La respuesta contiene el texto generado. Puedes ajustar parámetros como temperature para la creatividad o establecer límites estrictos en la longitud de la salida. Este enfoque directo es ideal para generar scripts, subtítulos o variaciones de prompt para otras herramientas.
Integración con el SDK de Python
Usa la biblioteca oficial de OpenAI para Python. Configura la URL base para apuntar a nuestro servicio. Pasa tu clave de API como api_key. Esto te permite usar métodos familiares como client.chat.completions.create(). Es una API compatible con openai, por lo que la estructura de tu código existente probablemente requiera cambios mínimos. Este método es perfecto para procesamiento en backend o tareas de extracción de datos.
from openai import OpenAI
client = OpenAI(base_url="https://api.vibevoice.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)Recuerda manejar las excepciones de forma adecuada. Los errores de red o los límites de peticiones pueden interrumpir tu pipeline. Registrar la respuesta ayuda a depurar por qué un prompt específico pudo haber sido rechazado o haber generado una salida inesperada.
Integración con el SDK de Node
Para entornos JavaScript, usa el paquete npm openai. Establece las propiedades apiKey y baseURL en el objeto de configuración. Esto asegura que las peticiones vayan al endpoint correcto. El SDK de Node admite los mismos parámetros que la versión de Python. Es ideal para servidores web o funciones de borde que necesiten generar texto bajo demanda.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.vibevoice.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);Asegúrate de gestionar el ciclo de vida del objeto client para evitar fugas de recursos. Esta integración es robusta para manejar tareas de generación de texto asíncronas en aplicaciones web modernas.
Respuestas en streaming
Habilita el streaming estableciendo stream a true en tu petición. La API devuelve datos en fragmentos a medida que se generan. Esto es útil para visualizaciones en tiempo real o renderizado progresivo de texto. El último fragmento incluye las estadísticas completas de uso de tokens. El streaming reduce la latencia percibida para los usuarios finales.
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)Maneja el stream correctamente para asegurar que se procesen todos los datos. Si la conexión se cae, podrías perder los datos de uso finales. Esta función es valiosa para aplicaciones que necesitan mostrar texto a medida que se escribe.
Funciones y límites
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 |
| Autenticación | Authorization: Bearer YOUR_KEY |
| Endpoints | POST /v1/chat/completions · GET /v1/models |
| ID del modelo | uncensored |
| Base URL | https://api.vibevoice.top/v1 |
| 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 |
| Ventana de contexto | 64.000 tokens (entrada + salida) |
| Parámetros | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Salida máxima | hasta el resto de la ventana de 64.000 tokens; max_tokens opcional (sin límite aparte) |
| Streaming | sí: server-sent events; el último fragmento incluye el uso de tokens |
| Límite de peticiones | 300 por minuto por clave |
| Tamaño de petición | hasta 8 MB |
| Concurrencia | 8 peticiones a la vez por clave |
| Cabeceras | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| 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 $10 a $500 |
| Bono | +5 % desde $50, +10 % desde $100 |
| Caducidad | el crédito pagado no caduca, sin suscripción |
| 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 |
| Contenido | contenido adulto permitido; se rechaza el contenido sexual con menores |
| Claves | una clave activa por cuenta; una nueva reemplaza a la anterior |
| 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 |
Preguntas y respuestas
¿Cuáles son los límites de peticiones?
Tienes un límite de 300 peticiones por minuto por clave y 8 peticiones simultáneas. El cuerpo de la petición no debe superar los 8 MB. Superar estos límites genera un error 429.
¿Cómo funciona la facturación?
Pagas $0,25 por cada 1M de tokens de entrada y $1,00 por cada 1M de tokens de salida. El crédito se recarga mediante criptomonedas (USDT o USDC) y no caduca. Los errores y rechazos son gratuitos.
¿Cuál es la ventana de contexto?
La ventana de contexto total es de 100.000 tokens para el prompt y la finalización combinados. La salida máxima por petición es de 32.000 tokens, o 2.048 si no se especifica max_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.