Accueil → Aide

Timeout 524 sur les requêtes API longues

Un 524 est produit par un reverse proxy ou un CDN placé devant l'API, pas par le modèle. Il se déclenche quand l'origine n'a pas envoyé le premier octet de la réponse dans une fenêtre fixe, couramment 100 secondes.

Ce que vous voyez

Pourquoi cela arrive

Le détail important est que le chronomètre mesure le temps jusqu'au premier octet, pas la durée totale. Une réponse en streaming commence à émettre presque immédiatement, elle peut donc durer de longues minutes sans jamais atteindre la limite. Une requête sans streaming avec une longue phase de raisonnement n'envoie rien avant d'avoir complètement terminé, et c'est exactement ce profil qui se fait couper.

C'est pourquoi la panne semble aléatoire. Le même prompt réussit quand il se termine vite et échoue quand le modèle réfléchit plus longtemps, et cela dépend de la profondeur du raisonnement plutôt que de quoi que ce soit que vous ayez changé.

Vérifiez si c'est bien la cause

Exécutez la même requête avec et sans streaming. Si l'une survit et pas l'autre, vous avez trouvé :

# 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":[...]}'

Le streaming vous offre aussi un bien meilleur mode d'échec : si quelque chose casse en cours de route, vous gardez la sortie partielle au lieu de perdre tout l'appel.

Comment le corriger

  1. Activez le streamingCela règle le problème d'emblée pour presque toutes les charges de travail, et c'est un changement d'une ligne. La plupart des SDK et des outils d'agents utilisent déjà le streaming par défaut.
  2. Utilisez un endpoint direct si le fournisseur en propose unCertains fournisseurs publient un hôte d'API qui contourne leur CDN précisément pour éviter cette limite. Si les longs appels sans streaming sont inévitables, c'est à cela qu'il sert.
  3. Découpez le travailSi un seul appel a vraiment besoin de plusieurs minutes de raisonnement avant de produire quoi que ce soit, il est généralement moins cher et plus fiable de le découper en étapes avec points de reprise.
Sur APICLAN, les requêtes en streaming ne sont jamais mises en mémoire tampon, elles ne sont donc pas concernées. Pour les longs appels sans streaming, il existe un endpoint direct sur https://api.apiclan.us/v1 sans cette limite.

Voir aussi

Unexpected token '<' lors d'un appel à une API compatible OpenAI401 invalid API key : quand la clé semble correcte mais échoue quand même

Dernière vérification le 2026-10-01. Rédigé à partir de problèmes diagnostiqués sur une passerelle compatible OpenAI en production, pas compilé à partir d'autres sites.