Skip to main content

Vue d’ensemble

Le streaming livre la sortie progressivement. Utilisez le streaming Responses lorsque le modèle annonce un contrat Responses natif et qu’une route upstream du même protocole est disponible ; sinon, utilisez Chat Completions ou le protocole natif publié par le modèle.

Recommandé : streaming Responses

Limites de streaming Responses et Gemini

Pour Responses SSE, TokenLab conserve les noms, l’ordre et les champs des événements upstream et lit usage ainsi que l’état terminal hors bande, sans modifier le wire. Après le premier événement livré, aucun autre canal ni credential n’est essayé. Responses WebSocket n’accepte que les événements officiels response.create. Stream est implicite ; background et response.cancel ne sont pas proposés sur ce transport, et background fonctionne uniquement en HTTP. Chaque connexion est sérielle, sans multiplexage, et limitée à 60 minutes. Gemini SSE conserve les chunks natifs. Les événements contenant uniquement des métadonnées, les chunks intermédiaires sans finishReason et une fin EOF naturelle sont valides ; TokenLab n’ajoute aucun marqueur Chat [DONE].

Streaming Chat Completions

Si votre framework attend encore des chunks SSE provenant de /v1/chat/completions, cela fonctionne également :

Conditions de fin du stream

Conditions de fin typiques :
  • response.completed pour les streams de l’API Responses
  • finish_reason: "stop" pour les streams Chat Completions
  • finish_reason: "length" lorsqu’une limite de token est atteinte
  • événements d’appel d’outil/de fonction lorsque le modèle souhaite utiliser des outils

Modèle pour application web

Bonnes pratiques

Utilisez /v1/responses si votre SDK ou votre application le prend déjà en charge. Réservez le streaming /v1/chat/completions aux intégrations motivées par la compatibilité.
Ajoutez les chunks delta à l’interface utilisateur ou au terminal au fur et à mesure de leur arrivée plutôt que d’attendre la réponse complète.
Considérez les coupures réseau et les déconnexions en amont comme des modes de défaillance normaux et reconnectez-vous avec précaution pour les sessions de longue durée.