Mise en cache des prompts
Le Prompt Caching permet de mettre en cache les préfixes de prompt réutilisés, réduisant la consommation de tokens et la latence de réponse.
Fonctionnement#
Lorsque votre requête contient un system prompt long et réutilisé ou des informations contextuelles :
- Première requête — traite tous les tokens et met en cache le préfixe du prompt
- Requêtes suivantes — lors d'un cache hit, les tokens mis en cache ne sont plus facturés
- Expiration du cache — le cache a un TTL (généralement 5-10 minutes), après lequel il faut recréer le cache
Prise en charge du cache#
Les ressources de modèles de 诺玛AI sont fournies par des fournisseurs cloud officiels tels qu'AWS Bedrock, Azure OpenAI, Google Cloud, Alibaba Cloud et Volcengine. 诺玛AI prend en charge le Prompt Caching pour tous les modèles pris en charge par ces fournisseurs.
Fournisseur cloud
Modèle représentatif
Mécanisme de cache
AWS Bedrock
Série Claude
Prompt Caching natif
Azure OpenAI
Série GPT-4o
Cache automatique
Google Cloud
Série Gemini
Context Caching
Alibaba Cloud
Série Qwen
Cache côté plateforme
Volcengine
Série Doubao
Cache côté plateforme
La prise en charge du cache pour chaque modèle dépend de la documentation officielle des fournisseurs cloud. 诺玛AI transmet les paramètres liés au cache sans configuration supplémentaire.
Modes d'utilisation#
Protocole OpenAI
Le Prompt Caching pour les modèles OpenAI est automatique — il s'active dès qu'un préfixe de prompt répété est détecté :
# Les longs system prompts sont automatiquement mis en cache
SYSTEM_PROMPT = """Tu es l'assistant support technique de 诺玛AI.
Voici les informations produit que tu dois connaître :
- 诺玛AI est une passerelle LLM supportant de nombreux modèles majeurs
- Compatible avec les trois protocoles OpenAI / Anthropic / Gemini
- ...
(autres connaissances produit omises)
"""
# Première requête : mise en cache du system prompt
response1 = client.chat.completions.create(
model="openai/gpt-4o",
messages=[
{"role": "system", "content": SYSTEM_PROMPT},
{"role": "user", "content": "Quels modèles 诺玛AI supporte-t-il ?"}
]
)
# Deuxième requête : cache hit, plus rapide et moins cher
response2 = client.chat.completions.create(
model="openai/gpt-4o",
messages=[
{"role": "system", "content": SYSTEM_PROMPT}, # Cache hit
{"role": "user", "content": "Comment configurer les outils de développement ?"}
]
)Protocole Anthropic
Les modèles Anthropic prennent en charge le cache control explicite :
Économies de coûts#
Après un cache hit, les tokens mis en cache sont facturés à un tarif réduit, le taux d'économie variant selon le modèle :
- Série Anthropic Claude — un cache hit permet d'économiser environ 90% du coût d'entrée
- Série OpenAI GPT — un cache hit permet d'économiser environ 50% du coût d'entrée
- Série Google Gemini — un cache hit permet d'économiser entre 50 et 75% du coût d'entrée
Le taux d'économie réel dépend du taux de cache hit et de la politique de facturation de chaque fournisseur cloud. Consultez les statistiques d'utilisation dans la console 诺玛AI pour plus de détails.
Bonnes pratiques#
- Placer le contenu long en premier — mettre les parties stables (system prompt, base de connaissances, etc.) au début des messages
- Maintenir un préfixe identique — seuls les préfixes exactement identiques permettent un cache hit
- Concevoir la structure du prompt de manière appropriée — séparer les parties fixes des parties variables
# ✅ Bonne conception : contenu fixe en premier, contenu variable ensuite
messages = [
{"role": "system", "content": LONG_STATIC_PROMPT}, # Peut être mis en cache
{"role": "user", "content": dynamic_question} # Partie variable
]
# ❌ Mauvaise conception : le contenu variable est intercalé dans le contenu fixe
messages = [
{"role": "system", "content": f"Today is {date}. {LONG_PROMPT}"} # Change chaque jour, impossible à mettre en cache
]Le cache hit est visible dans le champ `usage` de la réponse API, ainsi que dans les statistiques d'utilisation de la console 诺玛AI.
Dernière mise à jour le 23 juin 2026