Aller au contenu principal

Règles du prompt caching

Mis à jour le 30 juillet 2026

Le concept du cache est posé ; place aux règles du jeu. Car le prompt caching n’est pas activé automatiquement : vous devez ajouter manuellement des points de cache (cache points) pour contrôler ce qui est mis en cache. Savoir où les placer — et connaître les conditions qui font qu’un cache se réutilise ou non — est toute la compétence de cette leçon.

Points de cache

Sur Bedrock, le marqueur est un bloc de contenu à part entière : les points de cache indiquent à Claude de mettre en cache tout le travail effectué pour tout ce qui précède ce point dans votre message :

user_message = {
    "role": "user",
    "content": [
        {"text": "votre contenu ici"},
        {"cachePoint": {"type": "default"}}
    ]
}

Le bloc cachePoint s’insère dans la liste de contenu, comme un bloc de texte ou d’image. Règle clé : le travail pour tout ce qui précède le point de cache sera mis en cache ; tout ce qui suit ne sera pas stocké. Le point de cache est une borne, pas une enveloppe — on marque la fin de la zone à cacher.

Fonctionnement

Le cycle en deux temps : lors de la requête initiale, Claude traite tout le contenu et stocke le travail jusqu’au point de cache. Lors des requêtes de suivi, si le contenu avant le point de cache est identique, Claude lit le travail depuis le cache au lieu de le refaire.

Le cache ne sera utilisé que si le contenu avant le point de cache est strictement identique. Même un petit changement comme ajouter « S’il vous plaît » au début empêchera l’utilisation du cache — et la requête entière sera retraitée (et refacturée) comme neuve. Cette exactitude au caractère près est la contrainte de conception numéro un : elle impose de séparer strictement le contenu stable du contenu variable, et de bannir tout élément dynamique — horodatage, identifiant de session — de la zone cachée.

Cache entre les messages

Les points de cache ne s’arrêtent pas aux frontières d’un message : ils peuvent s’étendre sur plusieurs messages, y compris les messages assistant. Vous pouvez ainsi mettre en cache des historiques de conversation entiers jusqu’à un certain point — le scénario type d’un chatbot, où tout l’historique sauf le dernier échange est identique d’un tour à l’autre.

Longueur minimale

Une contrainte chiffrée à connaître : le contenu doit faire au moins 1024 tokens pour être mis en cache. C’est la somme de tous les messages et parties que vous tentez de cacher avant le point de cache — pas chaque bloc individuellement. Sous ce seuil, le point de cache est ignoré sans erreur ni avertissement : vous croyez cacher, rien ne se passe. D’où l’importance de vérifier les métriques d’usage, comme le montrera la prochaine leçon.

Emplacements des points de cache

Les points de cache ne sont pas limités aux messages utilisateur. Vous pouvez les ajouter aux prompts système et aux définitions d’outils — qui sont en fait les opportunités de caching les plus courantes :

Définitions d’outils :

tools = [
    {"toolSpec": add_duration_to_datetime_schema},
    {"toolSpec": get_current_datetime_schema},
    {"cachePoint": {"type": "default"}}
]

Prompts système :

system = [
    {"text": "Vous êtes un ingénieur logiciel senior..."},
    {"cachePoint": {"type": "default"}}
]

Dans les deux cas, le pattern est le même : le cachePoint se place en dernière position de la liste, couvrant tout ce qui le précède — tous les schémas d’outils d’un coup, tout le prompt système d’un coup. Ce sont les meilleures opportunités de caching car les prompts système et les listes d’outils changent rarement entre les requêtes : contenu volumineux, parfaitement stable, renvoyé à chaque appel — le profil idéal.

Points clés à retenir

  • Rien n’est caché sans marqueur : le bloc {"cachePoint": {"type": "default"}} borne la zone à cacher
  • Identité stricte exigée avant le point : un caractère variable = cache inutilisé et requête refacturée
  • Le cache peut couvrir plusieurs messages — historiques de conversation compris
  • Minimum 1024 tokens cumulés avant le point, sinon le marqueur est ignoré silencieusement
  • Meilleurs emplacements : fin de la liste d’outils et fin du prompt système — stables et volumineux