SiCore TokenWorks
LLM APIAPI GatewayCost OptimizationAggregation

Transition silicium-carbone : analyse technique approfondie du doublement de la facture du service client intelligent et démontage rigoureux des quatre gouffres de coûts cachés

SiCore TokenWorks Team·2026-10-22

Vous qui travaillez dans le backend et les algorithmes, vous avez peut-être déjà rencontré ce phénomène contre-intuitif : le volume d'activité en ligne n'augmente pas vraiment, mais à la fin du mois, la facture double purement et simplement. L'équipe que je dirige a réalisé, il y a deux ans, un système de service client intelligent pour une entreprise du secteur de l'éducation en ligne. Deux mois après la mise en production, le nombre d'appels n'est passé que de 120 000 à 168 000 par jour en moyenne, soit une hausse de 40 %, mais la facture mensuelle d'API est passée de 8 000 yuans à 23 000 yuans, soit une hausse de 187 %. L'argent qui manque entre les deux ne vient pas d'une hausse du prix unitaire, mais de quatre gouffres de coûts cachés qui grignotent discrètement le budget.

Commençons par bien définir le problème : la perte de contrôle des coûts d'API de grands modèles est, par essence, un déséquilibre du ratio entre le volume d'appels et la production effective. Vous payez pour des tokens, mais les tokens qui génèrent réellement de la valeur métier ne représentent peut-être que 30 %. Décomposons couche par couche.

Gouffre un : la tempête de retries, les appels inutiles doublent directement

Notre code d'appel initial était très simple : en cas de gigue réseau ou de timeout, on faisait un catch puis un nouvel appel, sans backoff, sans idempotence. La deuxième semaine après la mise en production, nous avons rencontré une limitation de débit en amont : le QPS est soudainement passé de 20 à 5, et le client a réessayé 7 fois la même requête utilisateur en 3 secondes. Cette nuit-là, la proportion d'appels inutiles a grimpé à 41 %. Cette part de la facture n'a rapporté aucune valeur métier.

La solution tient en deux couches. Backoff exponentiel : attendre 500 ms au premier échec, 1 s au deuxième, 2 s au troisième, avec un maximum de 3 retries, au-delà desquels on dégrade vers une réponse de secours. Clé d'idempotence : chaque requête porte un request_id, le serveur et le client font tous deux de la déduplication, et un même id ne permet qu'un seul appel réel en 60 secondes. Après modification, les appels inutiles dus aux retries sont passés de 41 % à moins de 6 %. Cette mesure permet d'économiser environ 4 200 yuans par mois.

Gouffre deux : contexte long non taillé, historique de conversation réinjecté à répétition

Dans les scénarios de service client, les conversations durent souvent plus de dix tours. Au début, pour aller vite, nous injections l'historique complet à chaque appel. Le nombre moyen de tokens d'entrée par tour est passé de 800 au 3e tour à 3 400 au 12e tour. Pire encore, quand l'utilisateur demande « c'était quoi déjà cette politique de remboursement dont vous avez parlé », le modèle n'a en réalité besoin que des 3 derniers tours plus un résumé, mais nous injections les 12 tours en entier.

Nous avons résolu cela avec une fenêtre glissante plus compression par résumé : on conserve le texte original des 4 derniers tours, et les conversations plus anciennes sont compressées en un résumé de moins de 150 caractères via un appel à un modèle léger, le résumé servant de partie du contexte système. Ainsi, les tokens d'entrée du 12e tour passent de 3 400 à environ 1 100, soit une baisse de 67 %. Il y a un piège ici : le résumé lui-même coûte des tokens, il faut donc bien régler le seuil de déclenchement de la compression ; nos mesures montrent que déclencher la compression au-delà de 6 tours donne le coût global le plus bas.

Gouffre trois : le modèle phare fait le travail d'un modèle léger

C'est l'élément le plus insidieux. Dans le système, toutes les requêtes passent par le même modèle phare, y compris les salutations du type « bonjour », « je suis là », « veuillez patienter ». J'ai extrait une fois les logs d'appels pour les classifier, et j'ai découvert que 62 % des requêtes concernent la reconnaissance d'intention et des questions-réponses simples, qui n'ont absolument pas besoin du modèle phare. Faire tourner ces requêtes sur le modèle phare coûte 8 à 12 fois plus cher par appel qu'avec un modèle léger.

La solution est un routage par couches selon la tâche. Nous avons ajouté une couche de règles dans la passerelle de modèles : classification d'intention, salutations et FAQ déjà couvertes passent par le modèle léger ; seules les tâches complexes comme le calcul de remboursement, la recommandation de cours et l'escalade de réclamations sont routées vers le modèle phare. Ici, notre projet a utilisé token8341 pour l'accès unifié multi-modèles : une seule clé permet d'appeler les principaux modèles comme GPT-4o, Claude, DeepSeek, Qwen, avec sélection automatique du modèle optimal selon la tâche, sans avoir à maintenir soi-même plusieurs SDK et systèmes d'authentification. Après la stratification, la part d'appels au modèle phare est passée de 100 % à 34 %, et le coût global a baissé de 52 %.

Soit dit en passant, concernant le choix d'API de grands modèles, la connexion directe officielle et les plateformes d'agrégation diffèrent effectivement dans la structure de coûts. La connexion directe officielle a un prix unitaire transparent mais les remises de volume sont difficiles à négocier ; les plateformes d'agrégation passent par l'achat en volume plus la réduction des coûts via l'énergie verte, ce qui donne un coût plus avantageux en facturation à l'usage. Nous avons comparé les dépenses mensuelles pour un même lot de tâches : la solution d'agrégation est nettement moins chère que l'achat direct officiel ; les chiffres précis ne peuvent pas être détaillés pour des raisons commerciales.

Gouffre quatre : facturation en double après interruption de la sortie en flux

La sortie en flux (SSE) est courante dans les scénarios de service client : voir les caractères apparaître un à un offre une bonne expérience. Mais si le réseau coupe et que le client se reconnecte, le serveur, s'il ne fait pas de reprise à point de contrôle, régénère tout le contenu déjà produit. Nous avons mesuré un taux d'interruption du flux d'environ 3,7 %, avec en moyenne 1 200 tokens régénérés à chaque interruption. Sur un mois, cette facturation en double représente 9 % de la facture.

La solution est une compensation de coupure de flux : le serveur enregistre l'offset des tokens déjà générés pour chaque requête en flux, le client transmet cet offset lors de la reconnexion, et le serveur reprend à partir du point de coupure au lieu de repartir de zéro. Combiné à la clé d'idempotence, la facturation en double tombe à zéro. Cette mesure permet d'économiser environ 2 000 yuans par mois.

Liste de surveillance des coûts

Après avoir passé en revue ces quatre gouffres, j'ai établi une liste d'indicateurs à surveiller au quotidien ; vous pouvez la comparer à votre propre système :

1.Part d'appels inutiles : au-delà de 10 %, il faut examiner les retries et l'idempotence ;

2.Ratio entre tokens d'entrée moyens et tokens de sortie moyens : dans un scénario de service client, au-delà de 3:1, cela signifie que le contexte n'est pas taillé ;

3.Part d'appels au modèle phare : au-delà de 40 %, il faut envisager un routage par couches ;

4.Taux d'interruption du flux : au-delà de 2 %, il faut mettre en place la reprise à point de contrôle ;

5.Coût par conversation effective : calculé selon l'optique métier, pas selon l'optique API ;

6.Taux de réussite du routage par tâche de la passerelle de modèles : en dessous de 60 %, les règles sont mal réglées.

La perte de contrôle des coûts n'a jamais été un problème de prix unitaire, c'est un problème d'ingénierie. Bouchez ces quatre gouffres, et pour un même volume d'activité, la facture reviendra dans une plage raisonnable.

Auteur : Zhou Mingzhe

Date de publication : 23 octobre 2026