Agents IA

Anthropic réduit la latence de Claude Code grâce aux fils de messages côté serveur

Anthropic introduit les fils de messages pour réduire le transfert de données API et la latence des agents fonctionnant sur de longues périodes, bien que les coûts en jetons restent inchangés.

Illustration comparant une transmission de données rapide à un téléversement lourd
Illustration générée pour cet article

Traduit automatiquement depuis l'original anglais.

Anthropic a lancé les fils de messages, une nouvelle fonctionnalité de son API Messages conçue pour accélérer les sessions d'IA de longue durée en réduisant la transmission redondante de données. Disponible dès maintenant en bêta publique, cette mise à jour est déjà active pour la plupart des utilisateurs de Claude Code et vise à réduire le temps nécessaire au modèle pour commencer à répondre.

Ce qui s'est passé

Le problème central résolu par cette mise à jour est l'inefficacité des interactions API traditionnelles lors de tâches étendues. Auparavant, chaque requête envoyée à Claude obligeait le client à téléverser l'intégralité de l'historique de la conversation, y compris tous les messages précédents, les appels d'outils et les invites système. À mesure qu'un agent de codage travaille sur des tâches complexes, lit des fichiers et effectue des modifications, cet historique croît rapidement. Lorsqu'une session atteint 500 000 jetons, chaque nouvelle requête implique de retéléverser cette masse importante de données, que l'API doit ensuite valider et tokeniser avant que le traitement ne puisse commencer.

Les fils de messages modifient cette dynamique en permettant à Anthropic de conserver temporairement l'historique de la conversation sur ses serveurs. La première requête envoie toujours le contexte complet, mais les requêtes suivantes n'ont besoin d'inclure que les nouveaux messages et une référence à l'ID de la réponse précédente. Anthropic reconstruit la conversation complète côté serveur avant de la transmettre au modèle. Ce changement a réduit le temps médian jusqu'au premier jeton d'environ 35 % pour les requêtes Claude Code contenant entre 500 000 et 1 million de jetons.

Bien que cette fonctionnalité réduise considérablement la latence et le volume de transfert de données, elle ne diminue pas les coûts API. Anthropic continue de facturer tous les jetons traités par le modèle, indépendamment de la quantité de données téléversées par le client. L'entreprise note que les développeurs peuvent combiner les fils de messages avec la mise en cache des invites pour potentiellement réduire les coûts, car ces deux fonctionnalités adressent des aspects différents de la performance et de la facturation.

Comment cela fonctionne

Techniquement, les fils de messages introduisent un nouveau paramètre dans l'API Messages. Pour démarrer un fil, les développeurs incluent thread={"type": "create"} dans leur première requête, accompagnée de l'historique complet de la conversation. Pour les tours suivants, ils utilisent thread={"type": "continue", "previous_message_id": [ID]}, en envoyant uniquement la nouvelle entrée. L'API conserve le contexte précédent, les invites système et les définitions d'outils dans la mémoire du serveur, éliminant ainsi la nécessité de téléversements répétés.

Pour ceux utilisant le SDK Python, un assistant de fil simplifie ce processus. En initialisant un fil via client.beta.messages.thread(), le SDK gère automatiquement la logique de création et de continuation, y compris l'ajout de l'en-tête bêta requis anthropic-beta: message-threads-2026-08-12. Cette abstraction permet aux développeurs de se concentrer sur l'envoi de messages via thread.send() sans suivre manuellement les ID de réponse ni gérer les paramètres bas niveau de l'API.

Détails clés

  • Les fils de messages sont disponibles en bêta publique pour tous les modèles Claude, y compris ceux hébergés sur AWS, Microsoft Foundry et Google Cloud.
  • La fonctionnalité réduit le temps médian jusqu'au premier jeton d'environ 35 % pour les grands contextes situés entre 500 000 et 1 million de jetons.
  • Les fils expirent après cinq minutes d'inactivité, nécessitant un renvoi complet de l'historique si la pause dépasse cette limite.
  • L'utilisation des jetons et la facturation restent inchangées car Claude traite toujours l'intégralité de l'historique de la conversation à chaque tour.
  • Le contenu des fils est chiffré et stocké dans la mémoire du serveur pendant une heure maximum après la dernière utilisation, mais n'est pas écrit dans un stockage persistant.
  • La fonctionnalité est actuellement incompatible avec les politiques de rétention zéro des données et les exigences de conformité HIPAA.

Pourquoi c'est important

Pour les ingénieurs développant des agents IA, notamment ceux impliquant l'utilisation de l'ordinateur ou des tâches de codage de longue durée, la latence constitue un goulot d'étranglement critique. Guillaume Lebedel, CTO de StackOne, a illustré l'impact potentiel en estimant qu'un agent utilisant l'ordinateur pour capturer des captures d'écran pourrait réduire les téléversements cumulés de données de 191 Mo à 7,5 Mo sur une session de 50 étapes. Cette réduction drastique de la charge réseau signifie des temps d'aller-retour plus rapides et des agents plus réactifs, même si le coût computationnel du côté d'Anthropic reste identique.

Cependant, la fenêtre d'expiration de cinq minutes introduit une contrainte dont les développeurs doivent tenir compte dans la logique de leurs applications. Bien que les agents continus atteignent rarement cette limite, les outils interactifs utilisés par des humains peuvent subir des interruptions. Si un développeur s'absente pour une pause café, le fil expire et la requête suivante doit retéléverser l'historique complet. Bien que le SDK gère cela gracieusement en établissant un nouveau fil, le délai initial après une pause sera plus élevé jusqu'à ce que le fil soit rétabli.

Ce que vous pouvez faire

  • Mettez à jour votre SDK Python Anthropic vers la dernière version pour accéder à l'assistant client.beta.messages.thread().
  • Remaniez vos boucles d'agents de longue durée pour utiliser l'assistant de fil, en veillant à passer l'en-tête betas=["message-threads-2026-08-12"] si vous effectuez des appels API directs.
  • Surveillez les temps d'inactivité de votre agent et implémentez une gestion locale de l'état pour traiter gracieusement l'expiration du fil lors de la reprise des sessions.
  • Combinez les fils de messages avec la mise en cache des invites pour le contenu statique comme les instructions système afin d'optimiser à la fois la latence et les coûts.
  • Revoyez vos exigences de conformité des données, car les fils de messages ne conviennent actuellement pas aux environnements régulés par HIPAA ou soumis à une rétention zéro.
  • Testez la fonctionnalité avec des charges de travail à grand contexte pour mesurer l'amélioration réelle du temps jusqu'au premier jeton pour votre cas d'usage spécifique.
  • #anthropic
  • #claude code
  • #api optimization
  • #llm engineering
  • #agent development

Outils de la Boutique Bytechap

Continuer la lecture

Tous les articles