For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Navigation principale

Mise en cache des prompts

Réduisez la latence et les coûts grâce à la mise en cache des prompts.

Les avantages de la mise en cache des prompts

La mise en cache des prompts réutilise les calculs déjà effectués lorsque les requêtes partagent le même préfixe de prompt. Elle présente trois avantages principaux :

  • Moins de calculs : Évitez de recalculer un préfixe de prompt que le modèle a déjà traité.
  • Des tokens d’entrée moins chers : Bénéficiez du tarif réduit du modèle pour les tokens d’entrée réutilisés depuis le cache, avec une réduction pouvant atteindre 90 %.
  • Plus de rapidité : Réduisez le temps de traitement des entrées avant le début de la réponse.

La mise en cache des prompts est activée par défaut pour les modèles OpenAI compatibles. Utilisez le tableau de bord de mise en cache des prompts pour suivre les taux de succès des lectures du cache, et l’outil Diagnostics du cache de prompts pour comprendre les échecs de recherche dans le cache et améliorer sa réutilisation.

Les appels aux modèles via l’API Agents utilisent le même mécanisme de mise en cache des prompts que l’API Responses. La réutilisation du contexte au sein d’une session peut préserver un préfixe de prompt commun, mais le maintien d’une session ne garantit pas un accès au cache réussi. Consultez Observabilité et utilisation pour connaître les champs d’utilisation des sessions et la comptabilisation de l’utilisation des sous-agents.

Les tarifs de mise en cache des prompts varient selon le modèle. Consultez les tarifs de l’API pour connaître les tarifs actuels des entrées en cache et des écritures dans le cache. Le tarif d’écriture dans le cache ne constitue pas un supplément : les tokens d’entrée sont facturés au tarif des entrées hors cache, des entrées en cache ou des écritures dans le cache.

Qu’est-ce que le cache de prompts ?

Lorsque le modèle traite les tokens d’entrée, il doit calculer des états intermédiaires, appelés états clé-valeur (KV). Ces états lui permettent de se référer aux tokens précédents pendant le traitement de nouvelles entrées et la génération de tokens de sortie.

La mise en cache des prompts conserve cet état pour un préfixe réutilisable : les tokens inchangés au début d’un prompt. Lorsqu’une requête ultérieure possède le même préfixe et trouve une entrée correspondante dans le cache, le modèle peut réutiliser l’état enregistré au lieu de traiter à nouveau ces tokens. Il doit toutefois traiter toute nouvelle entrée pour générer une nouvelle réponse.

Le cache de prompts stocke des tenseurs clé-valeur (KV), et non les tokens eux-mêmes.

Demandez à ChatGPT une explication plus approfondie

OpenAI met en cache l’intégralité du contexte rendu du modèle, y compris les instructions fournies par OpenAI, les messages développeur, les définitions d’outils et l’historique de conversation contenant du texte, des images, des documents et du contenu audio pris en charge.

La réutilisation du cache exige une correspondance sur l’intégralité du préfixe rendu. Si le contenu ou un paramètre pertinent change avant un point d’arrêt, le préfixe qui s’étend au-delà de cette modification ne peut plus correspondre à l’entrée existante du cache.

Fonctionnement de la mise en cache

Un point d’arrêt de cache marque la fin d’un préfixe de prompt qu’OpenAI peut enregistrer dans le cache et réutiliser dans des requêtes ultérieures. La première requête écrit un préfixe admissible dans le cache. Les requêtes suivantes recherchent le plus long préfixe correspondant disponible dans le cache, en parcourant les points d’arrêt admissibles à rebours jusqu’à trouver une correspondance.

Pour être mis en cache, un préfixe de prompt doit atteindre la longueur minimale en tokens requise pour la mise en cache du modèle. Les tokens du contenu système masqué fourni par OpenAI ne comptent pas dans ce minimum. La longueur minimale d’un prompt pouvant être mis en cache est de 1 024 tokens pour GPT-5.6 et les modèles ultérieurs ; elle varie selon les paramètres de la requête pour les modèles antérieurs. Consultez la comparaison des modèles pour en savoir plus.

Une fois la longueur minimale en tokens requise pour la mise en cache atteinte, vous pouvez choisir explicitement où placer les points d’arrêt de cache, ou laisser OpenAI choisir leurs emplacements de manière implicite. Les options disponibles dépendent du modèle.

Fonctionnement de la correspondance des préfixes

OpenAI parcourt uniquement les limites de recherche dans le cache (expliquées ci-dessous) de la requête entrante, du préfixe le plus long au plus court, pour trouver un préfixe correspondant déjà en cache et disponible sur la machine.

Pour GPT-5.6 et les modèles ultérieurs, les limites de recherche dans le cache de la requête entrante sont les suivantes :

  • Mode exclusivement explicite : les 2 premiers et les 50 derniers points d’arrêt explicites.
  • Mode implicite : les 2 premiers et les 50 derniers points d’arrêt explicites, le point d’arrêt implicite, jusqu’à 20 fins de messages antérieurs admissibles et la fin du bloc initial de messages développeur consécutifs. Le mode implicite peut ainsi réutiliser un préfixe qui se termine à la fin d’un message antérieur, sans point d’arrêt explicite à cet endroit.
Génération du modèle
Mode de mise en cache

Les points d’arrêt implicites sont placés au niveau du dernier message utilisateur admissible.

Système masquéOutilsDéveloppeurHistorique du contexteSuiteEntrée en cacheEntrée hors cache
Longueur minimale de mise en cache (variable selon le modèle)

Requête 1

12,000 tokens d’entrée
3,000 tokens(à titre indicatif)

Requête 2

15,000 tokens d’entrée
3,000 tokens(à titre indicatif)
0
2.5k
5k
7.5k
10k
12.5k
15k
17.5k
20k
Tokens d’entrée (y compris les tokens masqués donnés à titre indicatif)
15,000
Dernier point d’arrêt correspondant
3,000
Tokens masqués
=
12,000
Nombre de tokens en cache renvoyé

Durée de vie du cache

Les entrées du cache ne sont pas conservées indéfiniment. Une requête ultérieure ne peut réutiliser un préfixe mis en cache que si son entrée est encore disponible. Chaque réutilisation renouvelle sa durée de vie sans frais supplémentaires d’écriture en cache. Les paramètres de durée de vie et de conservation dépendent du modèle.

Emplacement du cache

Les états mis en cache sont stockés sur des machines individuelles, où un trafic supérieur à 15 requêtes par minute peut entraîner le routage des requêtes excédentaires vers d’autres machines. Une requête ne peut réutiliser un préfixe mis en cache que si elle atteint une machine contenant une entrée correspondante qui n’a pas expiré. Acheminer les requêtes vers la bonne machine est donc important pour réutiliser le cache.

Les caches ne sont pas partagés entre organisations et ne peuvent pas être réutilisés au-delà des limites régionales de traitement.

OpenAI gère automatiquement le routage. Au sein d’une organisation et d’une région de traitement, le routage pour un modèle donné dépend des éléments suivants :

  • La charge actuelle des machines et leur capacité disponible.
  • Une empreinte de hachage des premiers tokens qui suivent le contenu masqué d’OpenAI, y compris les définitions d’outils lorsqu’elles sont présentes. Le nombre de tokens hachés varie selon le modèle.
  • Une valeur prompt_cache_key fournie, qui sépare la réutilisation du cache entre les groupes de requêtes et contribue à optimiser le routage vers le cache sur les modèles antérieurs à GPT-5.6.

Résumé des différences entre les modèles

ComportementGPT-5.6 et versions ultérieuresGPT-5.5 et GPT-5.5 ProAutres modèles antérieurs
Points d’arrêt implicitesÀ la fin du dernier message admissible.Espacés à intervalles réguliers de 2 048 tokens.Espacés à intervalles réguliers qui dépendent du modèle.
Points d’arrêt explicitesPris en chargeNon pris en chargeNon pris en charge
prompt_cache_keyFacultatif pour comptabiliser séparément l’utilisation du cacheUtilisez une clé stable pour optimiser le routage vers le cacheUtilisez une clé stable pour optimiser le routage vers le cache
Longueur minimale du préfixe pouvant être mis en cache1 024 tokens d’entrée visiblesVarie selon les paramètres de la requêteVarie selon les paramètres de la requête
Décompte des tokens mis en cacheJusqu’à la limite admissible exacte, hors tokens masquésExclut les tokens masqués et arrondit au multiple de 128 inférieurExclut les tokens masqués et arrondit au multiple de 128 inférieur
Frais de lecture du cache0,1× le tarif des tokens d’entrée non mis en cacheTarif des tokens d’entrée mis en cache propre au modèleTarif des tokens d’entrée mis en cache propre au modèle
Frais d’écriture en cache1,25× le tarif des tokens d’entrée non mis en cacheAucuns frais supplémentaires d’écriture en cacheAucuns frais supplémentaires d’écriture en cache
Paramètre de durée de vie du cacheprompt_cache_options.ttlprompt_cache_retentionprompt_cache_retention
Valeurs de conservation prises en charge"30m""24h" uniquement"in_memory" ou "24h"*
Durée de vie du cacheAu moins 30 minutes après la dernière écriture ou réutilisationGénéralement environ 30 minutes, jusqu’à 24 heuresGénéralement 5 à 10 minutes d’inactivité pour in_memory, ou jusqu’à 24 heures pour 24h

* La conservation prolongée est prise en charge par gpt-5.5, gpt-5.5-pro, gpt-5.4, gpt-5.2, gpt-5.1-codex-max, gpt-5.1, gpt-5.1-codex, gpt-5.1-codex-mini, gpt-5.1-chat-latest, gpt-5, gpt-5-codex et gpt-4.1.

Pour les modèles antérieurs à GPT-5.6, la longueur minimale d’entrée pouvant être mise en cache varie selon les paramètres de la requête, notamment les outils, les images, les schémas de sortie, l’effort de raisonnement et la verbosité.

Demandez à ChatGPT de déterminer la longueur minimale pouvant être mise en cache pour votre requête

Comment optimiser la mise en cache des prompts

Veillez à préserver l’historique de conversation, à garder les définitions d’outils stables et à choisir où s’effectue la mise en cache. Sur GPT-5.6 et les modèles ultérieurs, utilisez prompt_cache_options.mode et prompt_cache_breakpoint pour contrôler les points de coupure du cache. Vous pouvez également utiliser une valeur prompt_cache_key facultative si votre application doit comptabiliser séparément l’utilisation du cache de chaque client. Sur les modèles antérieurs à GPT-5.6, utilisez une valeur prompt_cache_key stable pour optimiser le routage vers le cache des requêtes qui partagent un préfixe réutilisable.

Demandez à ChatGPT d’optimiser la mise en cache de vos prompts

Exemples

Les exemples suivants s’appliquent à GPT-5.6 et aux modèles ultérieurs.

Pièges à éviter

Questions fréquentes