Maîtriser les coûts
Caching, right-sizing du modèle, sessions courtes, sub-agents et budget : les leviers concrets pour obtenir le meilleur rapport qualité/coût de ses sessions agentiques.
Pourquoi les coûts comptent
Chaque interaction avec un agent de développement consomme des tokens. Les tokens d’entrée (prompt, contexte, fichiers lus) et les tokens de sortie (code généré, explications) sont facturés différemment, mais les deux s’accumulent. Sur une journée intensive, un développeur peut consommer l’équivalent de plusieurs dizaines d’euros en tokens.
Point clé : Le coût d’un agent n’est pas proportionnel à la qualité du résultat. Une session mal cadrée peut coûter 10x plus cher qu’une session bien préparée pour un résultat identique.
Maîtriser les coûts ne signifie pas les minimiser à tout prix. L’objectif est d’obtenir le meilleur rapport qualité/coût — payer pour de la valeur, pas pour du gaspillage.
Les quatre leviers principaux
1. Prompt caching
Le prompt caching permet de réutiliser les tokens de contexte stable (instructions persistantes, fichiers de référence) sans les refacturer à plein tarif à chaque tour. Le principe : si le préfixe du prompt n’a pas changé depuis le dernier appel, le fournisseur peut réutiliser le KV cache et facturer ces tokens à un tarif réduit (typiquement 90% moins cher).
Attention : Le caching est fragile : si on insère ou modifie du contenu au milieu du prompt (avant les parties stables), tout le cache en aval est invalidé. L’ordre du prompt importe.
2. Right-sizing du modèle
Toutes les tâches ne nécessitent pas le modèle le plus puissant. Un modèle plus petit (Haiku vs Sonnet vs Opus) est souvent suffisant pour des tâches de routine : formatage, renommage, génération CRUD, documentation simple. Le modèle le plus puissant se réserve aux tâches qui exigent un raisonnement complexe.
| Tâche | Modèle adapté | Justification |
|---|---|---|
| Génération CRUD, renommage | Petit (Haiku) | Pattern simple et répétitif |
| TDD feature standard | Moyen (Sonnet) | Raisonnement modéré, contexte limité |
| Refacto architectural | Grand (Opus) | Raisonnement multi-étapes, vision globale |
3. Sessions courtes et focalisées
Une session longue accumule du contexte inutile. L’agent traîne dans sa fenêtre l’historique de tentatives ratées, de fichiers lus et abandonnés, de réflexions intermédiaires. Tout ce contexte est refacturé à chaque tour. Plus la session dure, plus chaque tour coûte cher — c’est le phénomène de context rot appliqué au coût.
Point clé : Découper une tâche longue en sous-tâches indépendantes avec des sessions fraîches est presque toujours moins cher qu’une seule session marathon.
4. Sub-agents et isolation de contexte
Un sub-agent démarre avec un contexte vierge. Il ne voit que le brief qu’on lui passe, pas tout l’historique de la session parente. Chaque tour du sub-agent coûte proportionnellement moins cher car le contexte est réduit. De plus, le sub-agent libère son contexte une fois terminé — il ne pollue pas la session principale.
Budget et garde-fous
Maîtriser les coûts passe aussi par des limites explicites. Sans budget, un agent en boucle de correction peut consommer des centaines de milliers de tokens sans valeur.
Point clé : Trois types de limites à poser : limite de tours (nombre d’itérations), limite de tokens (budget par session), limite de temps (durée max).
Ces limites ne sont pas là pour brider l’agent — elles sont là pour détecter les boucles improductives et forcer un point de décision humain. Un agent qui atteint son budget sans avoir terminé signale probablement un problème de cadrage (prompt, contexte, ou tâche mal découpée).
Attention : Fixer un budget trop bas est aussi nuisible que pas de budget du tout. Un agent qui s’arrête à 80% d’une tâche a consommé des tokens sans livrer de valeur. Calibrer le budget sur l’historique des sessions similaires.
Anti-patterns de coût
| Anti-pattern | Symptôme | Remède |
|---|---|---|
| Session marathon | Coût par tour qui croît exponentiellement | Découper en sous-tâches, sessions fraîches |
| Opus pour tout | Facture élevée pour des tâches simples | Right-sizing : petit modèle pour les tâches simples |
| Boucle infinie | L’agent retente la même correction 20 fois | Budget de tours, exit conditions explicites |
| Context stuffing | Charger toute la codebase en contexte « au cas où » | Charger uniquement les fichiers pertinents |
| Cache cassé | Coût de caching sans bénéfice | Structurer le prompt : contenu stable en tête |