5 astuces pour faire baisser le coût de l'IA générative
C'est l'une des principales frictions à l'adoption de l'IA générative : le coût. Après une phase d'expérimentation, nombreuses sont les entreprises à entrer en phase de production à l'échelle. Une nouvelle étape qui conduit – quasi inconditionnellement - à une hausse des coûts d'exploitation. Il existe cependant plusieurs techniques pour faire baisser drastiquement la facture.
1. Compresser les prompts
Le prompt représente une partie non négligeable du total de tokens traités par les LLM. En utilisant en série un prompt non optimisé, le prix à l'API, dans le cadre d'un modèle propriétaire, et le coût de l'énergie avec un modèle open source ont tendance à flamber. Il existe une flopée de techniques pour réduire le nombre de tokens en input. La première, la plus simple, consiste tout simplement à prompter en anglais, même pour un output en français. On estime que passer du français à l'anglais représenterait une économie d'environ 30% de tokens.
L'autre astuce pour gagner en efficacité consiste à utiliser du JSON, XML ou YAML à la place d'instructions en langage naturel. Le but est encore et toujours de gagner en signe et donc en tokens. Une instruction comme "Tu es aujourd'hui un assistant en charge d'analyser le sentiment du texte suivant en détail" devient alors "{role: "analyzer", task: "sentiment", mode: "detailed"}." Enfin pour réduire encore un peu plus la taille d'un prompt, il peut être utile d'utiliser des abréviations standardisées. On passe ainsi de "Pour chaque élément de la liste, analyse le sentiment et donne une note de 1 à 5" en langage naturel à : "sent_analysis(items) -> rate[1-5]." L'optimisation doit, en revanche, se faire par itération pour éviter de dégrader trop fortement le taux d'accuracy lié à votre cas d'usage.
2. Utiliser les fonctions de Batch API
Nous vous en parlions déjà le 13 janvier dernier, il existe un outil simple pour diviser par deux le coût d'un appel API chez OpenAI ou Anthropic : la batch API. Cette méthode implémentée dans les API des deux éditeurs américains permet d'adresser des tâches aux LLM qui seront réalisées pendant les heures creuses d'utilisation des serveurs. Le processus peut prendre jusqu'à 24 heures mais permet, on le rappelle, de réduire la facture finale de 50%. La technique reste cependant réservée aux tâches non urgentes en lot.
3. Utiliser des modèles plus petits et spécialisés
Ce sera sans aucun doute l'une des grandes tendances de 2025 : le downsizing des modèles. Les benchmarks le montrent, les modèles spécialisés de petites et moyennes tailles performent aussi bien que les très grands modèles. Il est plus que conseillé d'utiliser, quand cela est possible, des modèles affinés sur un cas d'usage spécifique et/ou sur des données métiers. L'accuracy sera préservée et le gain d'énergie sera considérable. A titre d'exemple, des modèles comme TinyLlama (1,1B de paramètre) ou Mistral 7B obtiennent des scores comparables aux grands modèles sur des tâches ciblées après fine-tuning. Une solution qui, bien qu'elle nécessite l'utilisation de modèles open source et un investissement initial en temps de développement, offre un retour sur investissement rapide.
4. Utiliser un système de routage
C'est l'autre grande tendance du moment. Le principe est très simple et se résume en une phrase : pourquoi utiliser un superordinateur pour faire une addition quand une calculatrice simple convient ? Le routage de LLM consiste très simplement à utiliser une orchestration de plusieurs modèles en fonction de la complexité de la tâche à effectuer. Schématiquement, si la demande initiale est complexe, elle sera alors dirigée vers un modèle de grande taille. A l'inverse, si la demande est simple, elle sera dirigée vers un petit modèle, spécialisé ou non.
L'implémentation technique d'un tel système nécessite trois composants essentiels : un classificateur d'entrée qui analyse la complexité de la requête, une matrice de routage qui définit les règles d'attribution vers les différents modèles, et un orchestrateur qui gère le flux en temps réel. Cette architecture, bien que complexe à mettre en place initialement, permet des économies significatives en production.
Plusieurs solutions permettent de débuter rapidement comme LangChain, la librairie Transformers de Hugging Face (utilisation de pipeline ou AutoModel), Ray Serve ou encore Prompt Layer notamment.
5. Utiliser des puces optimisées
Si les GPU Nvidia, notamment le H100, restent la référence pour l'entraînement des modèles, leur utilisation systématique pour l'inférence n'est plus une nécessité. De nouveaux acteurs comme Groq, Cerebras ou plus classiquement IBM avec son projet North Pole, proposent des puces spécialisées offrant une consommation énergétique réduite et d'une infrastructure de refroidissement simplifiée, permettant une baisse significative du coût total de possession.
Enfin au-delà de ces nouvelles puces spécialisées, d'autres alternatives émergent comme le TPU de Google, les processeurs Trainium et Inferentia d'AWS, ou encore les puces Rivos qui visent à concurrencer directement les solutions Nvidia