Titre : Renommer un outil, perdre tout le cache

La nouvelle tarification du cache d'Anthropic signifie qu'une simple modification d'un seul caractère — renommer un outil ou ajouter un horodatage à un system prompt — peut transformer un "cache hit" peu coûteux en un "cache miss" au tarif plein, faisant exploser les factures par dizaines.

Ce changement découle de la remise sur le cache à deux niveaux d'Anthropic. Pour certains modèles, une lecture en cache ne coûte que 0,025 × le prix d'entrée habituel ; pour d'autres, la remise est de 0,1 ×. La remise ne s'applique que lorsque la requête correspond exactement à une entrée précédemment mise en cache. Les "misses" sont facturés au tarif de base, l'écart entre un "hit" et un "miss" s'élargissant ainsi de manière spectaculaire. En pratique, un changement de prompt modeste peut faire grimper le coût jusqu'à quarante fois le montant prévu.

Pourquoi ce changement est important

Anthropic a ajouté ce niveau de cache pour encourager la réutilisation de prompts identiques, un schéma courant chez les agents qui appellent de manière répétée le même ensemble d'outils. L'idée est simple : stocker une fois le résultat d'une combinaison prompt-outil, puis le récupérer à moindre coût lors des appels ultérieurs. Les nouveaux multiplicateurs rendent le côté « récupération » beaucoup moins cher, mais ils rendent également la pénalité pour un « miss » bien plus lourde.

Les développeurs qui ont construit des agents autour de system prompts stables voient désormais toute dérive — intentionnelle ou accidentelle — briser la chaîne de cache. Le résultat est une taxe cachée sur le service : un ratio de cache-hits plus faible se traduit directement par des coûts d'exploitation plus élevés.

Ce qui brise le cache

La documentation d'Anthropic décrit une hiérarchie où les changements aux niveaux supérieurs invalident tout ce qui se trouve en dessous. En pratique, cela signifie que des modifications apparemment anodines peuvent entraîner une facturation au tarif plein par effet de cascade.

  • Définitions d'outils – Ajouter, supprimer ou renommer un outil, ou modifier sa description, efface le cache des outils, du system prompt et de tout l'historique des messages.
  • Toggle de recherche web – Modifier le booléen qui active un outil de recherche web efface le system prompt et le cache des messages.
  • Paramètre tool-choice – Ajuster le paramètre qui sélectionne l'outil à exécuter n'invalide que le cache des messages.
  • Payloads d'images – L'ajout ou la suppression d'images n'affecte que le cache des messages.

Schémas courants déclenchés par inadvertance par les développeurs :

  1. Réordonnancement des outils – Certaines bases de code trient les dictionnaires d'outils à chaque déploiement. Le nouvel ordre crée une clé de cache différente, forçant un "miss" à chaque fois.
  2. Prompts horodatés – L'insertion d'une chaîne « généré à HH:MM:SS » dans le system prompt rend chaque requête unique, garantissant un "miss".
  3. Rotation de fragments de prompt – Remplacer une salutation ou une bannière de version modifie le hash du prompt et casse le cache.

Repérer le coût caché

Les journaux d'utilisation d'Anthropic exposent la dynamique du cache via trois champs :

  • cache_read_input_tokens – Tokens lus à partir d'une entrée de cache.
  • cache_creation_input_tokens – Tokens ayant entraîné le stockage d'une nouvelle entrée de cache.
  • input_tokens – Tokens facturés au tarif habituel (le reste après les lectures en cache).

Une hausse soudaine de input_tokens accompagnée d'une baisse de cache_read_input_tokens signale qu'un élément de la pile de prompts a changé. Le suivi de ces métriques permet aux équipes de réagir avant que la facture ne s'envole.

La réponse des développeurs

Face à cette nouvelle réalité tarifaire, de nombreuses équipes traitent désormais la stabilité des prompts comme une métrique de performance de premier ordre. Les stratégies courantes incluent :

  • System prompts statiques – Stocker le prompt dans un fichier versionné et l'injecter sans modification au moment de l'exécution.
  • Ordre des outils déterministe – Définir les listes d'outils directement dans le code plutôt que de s'appuyer sur l'ordre des dictionnaires ou des générateurs externes.
  • Suppression de l'horodatage – Déplacer les informations de journalisation ou de chronométrage vers un canal de métadonnées séparé qui n'affecte pas la chaîne du prompt.
  • Tests sensibles au cache – Ajouter des tests unitaires qui vérifient que le hash du prompt complet (system + outils + messages) reste constant d'une version à l'autre.

Ces pratiques ajoutent une légère surcharge d'ingénierie, mais elles protègent contre la « taxe cachée » qu'un "cache miss" représente désormais.

La perspective d'Anthropic

Anthropic soutient que la remise plus importante encourage la réutilisation, ce qui peut réduire la charge de calcul globale sur ses serveurs. En rendant les lectures en cache considérablement moins chères, l'entreprise espère que les développeurs concevront des agents qui appellent le même ensemble d'outils de manière répétée plutôt que de remodeler constamment les prompts. Le compromis est une pénalité plus élevée pour les appels non réutilisables, ce qui, selon l'entreprise, incite les développeurs à une meilleure hygiène des prompts.

Les critiques soulignent que de nombreux agents en conditions réelles doivent adapter les prompts à la volée — l'ajout de contexte, d'horodatages ou de sélections d'outils dynamiques est souvent essentiel. Pour ces charges de travail, la nouvelle tarification pourrait rendre Anthropic moins attractif par rapport aux fournisseurs qui facturent un tarif fixe, quel que soit le taux de réussite du cache.

À surveiller ensuite

  • Révisions tarifaires – Anthropic pourrait affiner les multiplicateurs si les retours de la communauté montrent que l'écart entre les succès (hits) et les échecs (misses) est trop important.
  • Fonctionnalités de contrôle du cache – Les futures mises à jour de l'API pourraient permettre aux développeurs de spécifier quelles parties d'un prompt doivent être exclues de la clé de cache, offrant ainsi un compromis.
  • Réactions de la concurrence – D'autres fournisseurs de LLM pourraient ajuster leurs propres modèles de cache pour rester compétitifs, soit en proposant des tarifs plus fixes, soit en exposant des contrôles de cache plus granulaires.

À retenir

Avec la nouvelle tarification du cache d'Anthropic, le coût d'un échec de prompt (prompt miss) n'est plus un inconvénient marginal ; c'est un levier financier qui peut faire basculer le budget d'un projet de manière spectaculaire. Maintenir l'immuabilité des prompts système, des définitions d'outils et des métadonnées associées est désormais aussi important que l'écriture d'un code efficace. Les équipes qui traitent le déterminisme des prompts comme une métrique mesurable éviteront les factures surprises et garderont le contrôle de leurs dépenses liées aux agents IA.