error code: 524A timeout occurredThe request timed out after N seconds with no response bodyEl detalle importante es que el reloj mide el tiempo hasta el primer byte, no la duración total. Una respuesta con streaming empieza a emitir casi de inmediato, así que puede durar muchos minutos sin llegar nunca al límite. Una petición sin streaming con una fase de razonamiento larga no envía nada hasta terminar del todo, y esa es exactamente la forma que se corta.
Por eso el fallo parece aleatorio. El mismo prompt funciona cuando termina rápido y falla cuando el modelo piensa más tiempo, y se correlaciona con la profundidad del razonamiento, no con nada que hayas cambiado.
Ejecuta la misma petición con streaming activado y desactivado. Si una sobrevive y la otra no, lo has encontrado:
# non-streaming — vulnerable to the time-to-first-byte limit
curl -sS -X POST 'YOUR_BASE_URL/chat/completions' \
-H 'Authorization: Bearer YOUR_KEY' \
-H 'Content-Type: application/json' \
-d '{"model":"MODEL","stream":false,"messages":[...]}'
# streaming — first byte arrives in well under a second
-d '{"model":"MODEL","stream":true,"messages":[...]}'
El streaming además te da un modo de fallo mucho mejor: si algo va mal a mitad, conservas la salida parcial en lugar de perder toda la llamada.
https://api.apiclan.us/v1 sin ese límite.Revisado por última vez el 2026-10-01. Escrito a partir de problemas diagnosticados en una pasarela compatible con OpenAI en producción, no recopilado de otras webs.