> ## Documentation Index
> Fetch the complete documentation index at: https://generaltranslation.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Streaming

Utilitaires de streaming robustes pour le SDK X API.

Ce module gère les connexions de streaming avec reconnexion automatique,
backoff exponentiel et gestion complète des erreurs. Les clients peuvent consommer
des points de terminaison de streaming sans avoir à se soucier de la gestion des connexions : le SDK
s’occupe automatiquement de toute la reprise.

<div id="class-xdkstreamingstreamconfig">
  ### `class xdk.streaming.StreamConfig`
</div>

Configuration des connexions de streaming avec logique de nouvelle tentative.

<div id="parameters">
  #### Paramètres
</div>

<ParamField path="path.max_retries" type="int" default="10" />

<ParamField path="path.initial_backoff" type="float" default="1.0" />

<ParamField path="path.max_backoff" type="float" default="64.0" />

<ParamField path="path.backoff_multiplier" type="float" default="2.0" />

<ParamField path="path.jitter" type="bool" default="True" />

<ParamField path="path.timeout" type="float or None" default="None" />

<ParamField path="path.chunk_size" type="int" default="1024" />

<ParamField path="path.on_connect" type="Callable[[], None] or None" default="None" />

<ParamField path="path.on_disconnect" type="Callable[[Exception or None], None] or None" default="None" />

<ParamField path="path.on_reconnect" type="Callable[[int, float], None] or None" default="None" />

<ParamField path="path.on_error" type="Callable[[[StreamError" />

<div id="__init__">
  ### `__init__`
</div>

<div id="parameters">
  #### Paramètres
</div>

<ParamField path="path.max_retries" type="int" default="10" />

<ParamField path="path.initial_backoff" type="float" default="1.0" />

<ParamField path="path.max_backoff" type="float" default="64.0" />

<ParamField path="path.backoff_multiplier" type="float" default="2.0" />

<ParamField path="path.jitter" type="bool" default="True" />

<ParamField path="path.timeout" type="float or None" default="None" />

<ParamField path="path.chunk_size" type="int" default="1024" />

<ParamField path="path.on_connect" type="Callable[[], None] or None" default="None" />

<ParamField path="path.on_disconnect" type="Callable[[Exception or None], None] or None" default="None" />

<ParamField path="path.on_reconnect" type="Callable[[int, float], None] or None" default="None" />

<ParamField path="path.on_error" type="Callable[[[StreamError" />

<div id="on_error-callablestreamerror">
  ### `on_error : Callable[[[StreamError]`
</div>

<div id="exception-xdkstreamingstreamerror">
  ### `exception xdk.streaming.StreamError`
</div>

Exception levée pour des erreurs de streaming accompagnées d’une classification.

<div id="parameters">
  #### Paramètres
</div>

<ParamField path="path.message" type="str" />

<ParamField path="path.error_type" type="StreamErrorType" />

<div id="__init__">
  ### `__init__`
</div>

<div id="parameters">
  #### Paramètres
</div>

<ParamField path="path.message" type="str" />

<ParamField path="path.error_type" type="StreamErrorType" />

<div id="class-xdkstreamingstreamerrortype">
  ### `class xdk.streaming.StreamErrorType`
</div>

Classification des erreurs de streaming pour les décisions de réessai.

<div id="parameters">
  #### Paramètres
</div>

<ParamField path="path.value" type="Any" />

<div id="class-xdkstreamingstreamstate">
  ### `class xdk.streaming.StreamState`
</div>

État interne d’une connexion de streaming.

<div id="parameters">
  #### Paramètres
</div>

<ParamField path="path.retry_count" type="int" default="0" />

<ParamField path="path.current_backoff" type="float" default="1.0" />

<ParamField path="path.is_connected" type="bool" default="False" />

<ParamField path="path.total_items_received" type="int" default="0" />

<ParamField path="path.last_error" type="StreamError" />

<div id="__init__">
  ### `__init__`
</div>

<div id="parameters">
  #### Paramètres
</div>

<ParamField path="path.retry_count" type="int" default="0" />

<ParamField path="path.current_backoff" type="float" default="1.0" />

<ParamField path="path.is_connected" type="bool" default="False" />

<ParamField path="path.total_items_received" type="int" default="0" />

<ParamField path="path.last_error" type="StreamError" />

<div id="last_error-streamerror">
  ### `last_error : [StreamError]`
</div>

<div id="xdkstreamingstream_with_retry">
  ### `xdk.streaming.stream_with_retry`
</div>

Diffuser des données à partir d'un endpoint avec reconnexion automatique et backoff exponentiel.
Cette fonction prend entièrement en charge la gestion de la connexion, y compris :

* Reconnexion automatique en cas de déconnexion
* Backoff exponentiel avec jitter pour les délais entre les nouvelles tentatives
* Classification des errors comme réessayables ou fatales
* Callbacks de cycle de vie pour surveiller l'état de la connexion

<div id="parameters">
  #### Paramètres
</div>

<ParamField path="path.session" type="Session">
  La session `requests` à utiliser pour les appels HTTP.
</ParamField>

<ParamField path="path.method" type="str">
  Méthode HTTP (généralement « GET »).
</ParamField>

<ParamField path="path.url" type="str">
  L’URL complète depuis laquelle diffuser le flux.
</ParamField>

<ParamField path="path.config" type="StreamConfig">
  `StreamConfig` avec les paramètres de réessai et de callback.
</ParamField>
