Tous les modèles, capacités et tarifs

Streaming (SSE)

Ajoutez stream:true sur l’un ou l’autre point d’accès. Les types d’événements SSE d’Anthropic sont transmis tels quels ; la passerelle ne met rien en tampon.

Pourquoi streamer

  • Le délai avant le premier token passe de plusieurs secondes à environ 100 ms.
  • Les longues boucles d’appels d’outils ne peuvent pas atteindre le délai d’attente des en-têtes, car l’amont émet message_start immédiatement.
  • Meilleure expérience : affichage progressif plutôt qu’un indicateur de chargement figé.

Types d’événements

  • message_start — premier événement, renvoie les métadonnées de l’assistant.
  • content_block_start · content_block_delta · content_block_stop — un ensemble par bloc texte ou tool_use. Les deltas sont soit text_delta, soit input_json_delta (pour les arguments d’outils).
  • message_delta — stop_reason et mise à jour de la consommation à la fin.
  • message_stop — dernier événement.
  • ping — maintien de connexion toutes les ~15 s.

Python (SDK Anthropic)

python
with client.messages.stream(
    model="claude-sonnet-5-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Tell me a haiku about Paris."}],
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)
    final = stream.get_final_message()
    print("\n--", final.usage)

Node / TypeScript

ts
const stream = client.messages.stream({
  model: "claude-sonnet-5-5",
  max_tokens: 1024,
  messages: [{ role: "user", content: "Tell me a haiku about Paris." }],
});

for await (const event of stream) {
  if (event.type === "content_block_delta" && event.delta.type === "text_delta") {
    process.stdout.write(event.delta.text);
  }
}
const final = await stream.finalMessage();
console.log("--", final.usage);

fetch brut (navigateur, edge)

ts
const r = await fetch("https://api-ai.fr/v1/messages", {
  method: "POST",
  headers: {
    "x-api-key": KEY,
    "anthropic-version": "2023-06-01",
    "content-type": "application/json",
  },
  body: JSON.stringify({
    model: "claude-sonnet-5-5",
    max_tokens: 1024,
    stream: true,
    messages: [{ role: "user", content: "stream me a poem" }],
  }),
});

const reader = r.body!.pipeThrough(new TextDecoderStream()).getReader();
while (true) {
  const { value, done } = await reader.read();
  if (done) break;
  process.stdout.write(value);
}
Aucune mise en tampon côté passerelle
Notre passerelle relaie les octets dès que l’amont les émet, sans mise en tampon. Les flux longs peuvent garder la connexion ouverte plusieurs minutes ; en cas de blocage prolongé de l’amont, la passerelle renvoie une 504.
Dernière mise à jour : 2 octobre 2026Une erreur ? support@minedom-france.fr