La plupart du trafic LLM se répète. Un chatbot renvoie le même prompt système à chaque tour, et un agent renvoie ses définitions d'outils ainsi que l'intégralité de la conversation jusqu'à présent. La mise en cache des prompts permet au modèle de lire ce préfixe répété depuis un cache, et les entrées mises en cache sont facturées à une fraction du tarif d'entrée normal. Ce guide explique son fonctionnement sur GetVibe API et comment en tirer le meilleur parti.
Ce que vous payez pour les entrées mises en cache
Chaque modèle de texte de notre catalogue indique ses conditions de mise en cache. Dans https://getvibeapi.com/api/catalog, chaque variante de modèle contient :
cachedInputUsd: le prix par million de tokens d'entrée mis en cache.cacheReadMult: le prix de lecture depuis le cache sous forme de fraction du prix d'entrée normal.cacheWriteMult: la facturation de l'écriture dans le cache par rapport à l'entrée normale.
Au moment de la rédaction, presque tous les modèles de texte indiquent cacheReadMult: 0.1, ce qui signifie qu'un token d'entrée mis en cache coûte un dixième du tarif normal, ainsi que cacheWriteMult: 1. L'exception est Claude Fable 5.1, avec 0.025 pour les lectures et 1.25 pour les écritures. Ces valeurs peuvent changer : consultez-les donc dans le catalogue ou sur la page de chaque modèle plutôt que de les coder en dur.
| Modèle | Prix (entrée · sortie) |
|---|---|
| Claude Opus 5.5 | $0.1067 entrée · $0.5334 sortie par million de tokens |
| GPT-6 Sol | $0.1096 entrée · $0.548 sortie par million de tokens |
| DeepSeek V4.1 Flash | $0.0112 entrée · $0.0445 sortie par million de tokens |
Les pages des modèles indiquent le prix des entrées mises en cache à côté de ces chiffres.
Modèles OpenAI : automatique
Sur /v1/chat/completions, les modèles de la famille OpenAI utilisent automatiquement la mise en cache. Lorsque plusieurs requêtes commencent par le même préfixe stable, ce préfixe est lu depuis le cache. Vous n'avez besoin d'aucun champ spécial. L'essentiel est que le début de la requête ne change pas. Nous transmettons le corps de la requête octet par octet, sans réorganiser les champs, de sorte qu'un préfixe identique de votre côté reste identique en amont.
Claude : points de rupture cache_control
Claude ne met en cache le contenu que lorsque la requête contient explicitement un point de rupture cache_control. La simple répétition du préfixe n'active pas la mise en cache. Placez le point de rupture à la fin de la partie qui ne change pas :
curl https://getvibeapi.com/v1/messages \
-H "x-api-key: $GETVIBE_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-opus-5.5",
"max_tokens": 256,
"system": [
{"type": "text", "text": "Une grande instruction fixe qui vaut la peine d'être mise en cache...",
"cache_control": {"type": "ephemeral"}}
],
"messages": [{"role": "user", "content": "Question concernant l'instruction"}]
}'
Si vous n'envoyez pas vous-même de point de rupture, la passerelle en insère un pour vous, sur /v1/messages et /v1/chat/completions. Si vous gérez vous-même les points de rupture, votre balisage est conservé tel quel.
Cinq règles pour un prompt pouvant être mis en cache
- Contenu stable d'abord, contenu variable ensuite. Le prompt système, les définitions d'outils et les documents de référence vont en haut. Le nouveau message de l'utilisateur va à la fin.
- Pas d'horodatages ni d'identifiants de requête dans le préfixe. Un seul caractère modifié près du début invalide tout ce qui le suit.
- Conservez un ordre fixe pour les définitions d'outils. Générer la liste des outils à partir d'une map non ordonnée modifie le préfixe à chaque appel.
- Ajoutez l'historique sans le réécrire. Les agents qui résument ou réordonnent les tours précédents interrompent le cache. Ajoutez les nouveaux tours à la fin.
- Restez sur un seul modèle. Un cache appartient à un modèle : changer de modèle au cours d'une conversation repart donc sans cache.
Vérifier que tout fonctionne
Examinez l'objet usage dans la réponse. Au format OpenAI, les tokens mis en cache apparaissent sous prompt_tokens_details.cached_tokens. Au format Anthropic, recherchez cache_read_input_tokens et cache_creation_input_tokens. La vue d'utilisation de votre tableau de bord affiche également une part de requêtes ayant utilisé le cache pour chaque modèle. Si le nombre de tokens mis en cache reste nul pour des requêtes identiques, cela signifie qu'un élément de votre préfixe change.
Étapes suivantes
Consultez la documentation sur la mise en cache, configurez Claude Code sur un endpoint personnalisé (les agents tirent le plus grand parti de la mise en cache) ou comparez les prix des entrées mises en cache sur la page Modèles.
