Configuration pour limiter les dépenses API mensuelles d'Anthropic à environ 150 euros après la refonte de la tarification
Pour les freelances ou les petites équipes travaillant avec un budget de développement mensuel inférieur à 500 euros, les récents changements de politique d'Anthropic s'avèrent plutôt problématiques. L'utilisation d'outils tiers est désormais restreinte, et les crédits restants de chaque mois n'est plus reportés au mois suivant et disparaissent purement et simplement. Pourtant, en s'en tenant aveuglément au client officiel, la facture API dépasse rapidement plusieurs centaines d'euros en quelques sessions de codage seulement.
Le problème ne se résoudra pas en changeant simplement d'outil. C'est la structure même des échanges de prompts qu'il faut repenser pour préserver le solde de votre compte.
Analyser les journaux de consommation de tokens et corriger d'abord le taux de réussite du cache
Les outils de codage basés sur des agents envoient en bloc des dizaines de milliers de tokens de contexte en une seule requête. Si l'on regarde la grille tarifaire officielle d'Anthropic, le coût de base en entrée pour Claude 3.5 Sonnet est de 3,00 parmilliondetokens,etde15,00 pour la sortie. En revanche, l'application du caching de prompts réduit le tarif d'entrée à 0,30 $. C'est une différence de 90 %. Dès qu'une extension tierce insère un horodatage ou un identifiant de session tout en haut du system prompt, tout ce cache est invalidé et vous payez 3,00 $ à chaque fois.
Commencez par ouvrir les journaux des trois derniers mois pour calculer le ratio cache_read_input_tokens par rapport aux tokens d'entrée.
- Pour les projets dont le taux de réussite du cache est inférieur à 40 %, examinez la méthode d'injection de prompts.
- Au lieu d'envoyer l'intégralité de la base de code à chaque requête, modifiez la configuration pour ne transmettre que les fichiers modifiés sur la base d'un
git diff.
- Placez des règles fixes au sommet du system prompt et déclarez
cache_control: {"type": "ephemeral"}.
Le simple fait de déplacer les variables dynamiques vers le bas du prompt et de mettre en cache le texte statique permet d'économiser près de la moitié du gaspillage de tokens en arrière-plan.
Répartir les modèles selon la complexité des tâches grâce au proxy LiteLLM
Il n'est pas nécessaire d'écrire chaque ligne de code avec Sonnet ou Opus. Appeler un modèle frontal de pointe pour de la complétion par tabulation est un gaspillage évident.
| Catégorie de tâche |
Modèle appelé |
Lieu d'exécution |
Niveau de coût |
| Conception d'architecture et refactoring massif |
Claude 3.5 Sonnet |
API Cloud |
Tarif de référence (100 %) |
| Fonctions utilitaires simples et tests unitaires |
Claude 3.5 Haiku, DeepSeek-V3 |
API Cloud |
Entre 20 % et 30 % |
| Complétion en temps réel et boilerplate |
Ollama (Qwen2.5-Coder 14B) |
Local sur l'appareil |
0,00 $ |
Installez LiteLLM sur votre machine locale pour l'utiliser comme passerelle de trafic. Rédigez les règles de routage des modèles dans le fichier config.yaml.
`yaml
model_list:
- model_name: smart-model
litellm_params:
model: anthropic/claude-3-5-sonnet-20241022
api_key: os.environ/ANTHROPIC_API_KEY
- model_name: fast-model
litellm_params:
model: deepseek/deepseek-chat
api_key: os.environ/DEEPSEEK_API_KEY
- model_name: local-coder
litellm_params:
model: ollama/qwen2.5-coder:14b
api_base: http://localhost:11434
`
Définissez export ANTHROPIC_BASE_URL="http://localhost:4000" dans votre terminal et connectez Continue.dev ou Claude Code. La complétion automatique en temps réel est gérée par le modèle Qwen sur le GPU local, tandis que seules les questions de conception complexes sont transmises à Sonnet.
Menez également des actions de réduction des tokens de sortie. En configurant le system prompt pour omettre entièrement les introductions superflues, les salutations et les explications de code au profit des seuls blocs de code, vous réduirez considérablement les dépenses en tokens de sortie, qui sont les plus onéreux.
Transférer et épuiser les crédits mensuels restants via l'API Batch
Les crédits mensuels d'Anthropic s'évanouissent tout simplement une fois la date d'expiration dépassée. Pour éviter de perdre le solde restant, lancez l'API Batch d'Anthropic 3 jours avant son expiration.
L'API Batch accorde un rabais de 50 % sur tous les prix des tokens à condition d'obtenir un retour asynchrone dans les 24 heures. Si vous y associez le caching de prompts, vous pouvez traiter les requêtes à environ 5 % du prix initial. Regroupez et soumettez en une seule fois les tâches qui ne nécessitent pas de réponse immédiate en temps réel :
- Analyse statique de l'ensemble de la base de code et vérification des vulnérabilités de sécurité.
- Génération en masse de codes de tests unitaires pour le code existant.
- Mise à jour automatique des spécifications d'endpoints API et de la documentation technique.
En regroupant ces tâches dans un fichier JSONL et en les envoyant vers l'endpoint Batch, vous transformez des crédits qui allaient être perdus en actifs de code de test et de documentation.
Fixer les limites de dépenses et les chemins de contournement locaux
Pour éviter les facturations excessives, désactivez le rechargement automatique (Auto-Recharge) dans les paramètres de facturation de la console Anthropic et effectuez un paiement manuel d'environ 150 $ au début du mois.
Bloquez directement la limite d'appels à 150 $ dans le menu Spend Limits de la console, puis ajoutez une configuration de secours (Fallback) au proxy LiteLLM.
`yaml
router_settings:
fallbacks:
- claude-3-5-sonnet-20241022: ["ollama/qwen2.5-coder:14b"]
`
Même si les crédits sont épuisés et qu'une erreur 429 se produit, Ollama local prend immédiatement le relais des appels. Si vous travaillez en équipe, partagez .continue/config.json à la racine du dépôt Git et définissez une limite mensuelle de 50 $ pour la clé virtuelle (Virtual Key) de chaque membre dans la page d'administration de LiteLLM. Seul le trafic des développeurs ayant dépassé leur limite sera basculé vers le modèle local, empêchant ainsi les dépenses globales de l'équipe de dépasser le budget.