Concurrencia, tiempos de espera y facturación
Límites de concurrencia, tiempos de espera, tamaño de petición y cuándo se factura.
Esta página reúne las reglas de funcionamiento que conviene conocer antes de integrar. Para códigos de error y política de reintentos, consulta Códigos de error y reintentos.
Concurrencia
| Ámbito | Por defecto | Rango | Al superarlo |
|---|---|---|---|
| Cuenta | 5 peticiones en curso | Se amplía bajo petición | 429 user_concurrency_limit |
| Clave de API | Sin límite propio | Cualquier número entero desde 1, configurado en la clave en Claves API; vacío o 0 = sin límite propio | 429 apikey_concurrency_limit |
- Si ambos límites están configurados, se aplica el más bajo.
- El chat, la generación de imágenes, el envío de vídeo y
/v1/messages/count_tokensconsumen concurrencia; el sondeo de tareas yGET /v1/modelsno. - Al superarlo recibes un 429
User concurrency limit reached, please retry lateroAPI key concurrency limit reached, please retry later, conRetry-After: 1. - Escríbenos para ampliar el límite.
Las peticiones que superan el límite se rechazan de inmediato con un 429; nada espera en el servidor. Limita el ritmo en tu cliente o reintenta según Retry-After.
Tiempos de espera
| Caso | Comportamiento del servicio | Tiempo de lectura recomendado en el cliente |
|---|---|---|
| Chat en planes Gemini de conexión directa | Una generación que no termina en unos 100 segundos se considera agotada y se reintenta, así que la espera total puede ser mayor | 240 s o más |
| Chat sin streaming en el resto de plataformas | El tiempo total tiene tope (Claude: 300 s, luego 504); con contextos grandes el primer token puede tardar más de un minuto | 300 s o más; usa streaming para salidas largas |
| Chat en streaming | Sin salida en unos 90–150 s (según el modelo), o unos 150 s de silencio a mitad, cuenta como atascado: se reintenta o termina con error. Los latidos mantienen la conexión | 300 s o más; activa los resúmenes de razonamiento en modelos de razonamiento intenso |
| Generación de imágenes síncrona | Las imágenes grandes suelen tardar entre 30 y 100 segundos | 300 s o más |
| Imágenes asíncronas y vídeo | El envío responde de inmediato; el resultado se obtiene por sondeo. Las tareas sin terminar fallan a las 24 h (Seedance) o 2 h (Kling, Midjourney, Wan / HappyHorse, MiniMax) | 60 s bastan para el envío |
Tamaño de la petición
| Límite | Mínimo | Máximo | Al superarlo |
|---|---|---|---|
| Cuerpo de la petición, cualquier endpoint | — | 60 MB | 413 request_too_large |
input en /v1/audio/speech (speech-2.8-hd / speech-2.8-turbo) | 1 carácter | 4.096 caracteres | 400 |
text en /v1/t2a_v2 (speech-2.8-hd / speech-2.8-turbo) | 1 carácter | 10.000 caracteres | 400 |
input en /v1/audio/speech (seed-tts-2.0 / seed-icl-2.0 / seed-audio-1.0) | 1 carácter | 5.000 caracteres en seed-tts-2.0 y seed-icl-2.0, 3.000 en seed-audio-1.0 (un carácter chino cuenta como 1) | 400 |
Grabación audio en /v1/voice_clone (seed-icl-2.0) | — | 10 MB decodificada; cuerpo de 16 MiB | 400 / 413 |
Las imágenes y los vídeos en base64 alcanzan los 60 MB rápido, así que compáctalos o envía una URL cuando el modelo lo admita. Divide los guiones de voz largos en el cliente; consulta la API de texto a voz. Los límites de medios por modelo (número de imágenes, tamaño de archivo, duración) están en la guía de cada modelo.
Facturación
| Situación | ¿Se factura? |
|---|---|
| Petición correcta | Sí, según la unidad del modelo (tokens / imagen / segundo / carácter; en voz, un carácter chino cuenta 2) |
| Petición fallida (4xx, 5xx) | En principio no; lo ya generado se factura (p. ej. Responses que falla tras generar tokens) |
| Flujo interrumpido a mitad, o cliente desconectado antes de tiempo | Sí, por lo ya generado |
| Tarea asíncrona fallida | No |
Además:
- Sin saldo se bloquean las peticiones nuevas: cuando el saldo disponible llega a cero, las peticiones nuevas devuelven 402. Las que ya están en curso no se ven afectadas.
- Los envíos de vídeo reservan saldo: se reserva el coste estimado, de modo que un saldo positivo puede devolver 402 si «reservado en curso + esta estimación» lo supera. La reserva se libera al terminar la tarea.
- Cuotas por clave: si una clave tiene cuota propia, agotarla devuelve 402
insufficient_quotacon "API key quota exhausted".
Consultar saldo y consumo
curl https://api.hop-base.com/v1/usage \
-H "Authorization: Bearer sk-tu-clave"balance es lo que esta clave aún puede gastar en este momento. El significado de cada campo, las unidades y los casos de error están en API de cuenta y catálogo. Para el detalle, abre Consumo en la consola.
Los enlaces de resultado de imágenes y vídeo caducan en plazos distintos: consulta API de generación de imágenes y Generación de vídeo.
Próximos pasos
- Códigos de error y reintentos: qué significa cada código de error y si conviene reintentar
- API de cuenta y catálogo: consulte saldo, uso y catálogo de modelos por API
- Modelos disponibles: consulte los ID de modelo disponibles para una clave