Optimisation des coûts d'utilisation des LLM
L' optimisation des coûts d'utilisation des grands modèles de langage (LLM) est un ensemble de stratégies et de méthodes techniques visant à réduire les ressources de calcul et financières nécessaires pour l'entraînement, l'ajustement fin (fine-tuning) et, en particulier, l'exécution (inférence) des grands modèles de langage. La pertinence de ce domaine est due au coût énorme du développement et de l'exploitation des LLM.
Par exemple, l'entraînement du modèle GPT-3 avec 175 milliards de paramètres a coûté, selon les estimations, environ 4,6 millions de dollars sur une infrastructure GPU cloud[1] et a nécessité 1,3 million de kWh d'électricité[2]. Cependant, les principaux coûts surviennent souvent à l'étape de l'inférence. Selon les estimations, les coûts opérationnels quotidiens pour maintenir le service ChatGPT début 2023 s'élevaient à environ 700 000 dollars (environ 0,0036 $ par requête), ce qui dépasse de loin les coûts uniques de l'entraînement[3].
Optimisation à l'étape de l'entraînement et du choix du modèle
Une gestion efficace des coûts commence par des décisions fondamentales prises avant l'étape de l'inférence.
Lois de mise à l'échelle : taille du modèle vs volume de données
L'une des avancées majeures dans la compréhension de l'économie de l'entraînement des LLM a été les lois de mise à l'échelle de Chinchilla, présentées par des chercheurs de DeepMind en 2022. Elles ont montré que pour une utilisation optimale du budget de calcul, un modèle doit être entraîné sur un volume de données significativement plus important que ce qui était fait auparavant[4].
Historiquement, on supposait que les performances augmentaient principalement avec le nombre de paramètres. Cependant, l'étude Chinchilla a démontré que le modèle Chinchilla (70 milliards de paramètres), entraîné sur 1 400 milliards de tokens, surpasse en qualité le modèle beaucoup plus grand GPT-3 (175 milliards de paramètres), entraîné sur seulement ~300 milliards de tokens[5]. Le ratio recommandé est d'environ 20 tokens de données d'entraînement pour chaque paramètre du modèle. Cette approche permet de créer des modèles plus compacts et efficaces, réduisant ainsi les coûts tant pour l'entraînement que pour l'inférence ultérieure.
Ajustement fin (Fine-tuning) et son efficacité
Au lieu d'entraîner un modèle coûteusement à partir de zéro, une pratique de plus en plus courante est l'ajustement fin (fine-tuning) de modèles ouverts existants (par exemple, la famille LLaMA, Falcon). Pour réduire davantage les coûts, des méthodes d' ajustement fin efficace en paramètres (Parameter-Efficient Fine-Tuning, PEFT) sont utilisées.
La méthode la plus populaire, LoRA (Low-Rank Adaptation), permet d'adapter un modèle en ne mettant à jour qu'un petit nombre de paramètres supplémentaires. Des études montrent que LoRA peut réduire les coûts d'ajustement fin de plusieurs dizaines de pourcents (jusqu'à ~68 % dans certains scénarios) avec un impact négligeable sur la qualité[6].
Réduction de la taille du modèle (Model Compression)
Une direction cruciale de l'optimisation est la réduction de la taille physique du modèle tout en préservant ses performances.
Distillation de connaissances (Knowledge Distillation)
La distillation de connaissances est un processus dans lequel un grand et puissant modèle « professeur » est utilisé pour entraîner un modèle « élève » plus compact. L'élève apprend à imiter les réponses du professeur sur un vaste ensemble de données, assimilant ainsi ses « connaissances ». Cette méthode permet d'atteindre une qualité comparable sur des tâches spécifiques avec des coûts considérablement réduits. Par exemple, le modèle DeepSeek-R1 a été distillé avec succès de 671 milliards à 70 milliards, et même à 1,5 milliard de paramètres, avec une perte de qualité acceptable pour de nombreuses applications[7].
Quantification (Quantization)
La quantification est un processus de réduction de la précision numérique utilisée pour représenter les poids d'un modèle. Au lieu des nombres à virgule flottante standard de 32 bits ou 16 bits, on utilise des entiers de 8 bits ou même de 4 bits.
- La quantification 8 bits réduit la taille du modèle d'environ 50 % avec une perte de précision d'environ 1 %.
- La quantification 4 bits réduit la taille du modèle de 75 %, tout en maintenant une qualité de sortie compétitive[7].
Avec un support matériel adéquat (par exemple, dans les GPU modernes de Nvidia) et des bibliothèques logicielles (par exemple, TensorRT), la quantification peut accélérer l'inférence de 2 à 4 fois[8].
Optimisation à l'étape de l'inférence
Une fois le modèle entraîné et déployé, la majeure partie des coûts est liée à son utilisation quotidienne.
Traitement par lots des requêtes (Batching)
Le traitement par lots (batching) consiste à regrouper plusieurs requêtes d'utilisateurs en un seul « lot » (batch) pour un traitement simultané sur le GPU. Cela augmente considérablement l'utilisation du matériel et le débit global. Pour les LLM, où la génération de réponses se fait token par token, le plus efficace est le traitement par lots continu (continuous/in-flight batching). Cette méthode permet d'ajouter dynamiquement de nouvelles requêtes au lot au fur et à mesure que d'autres requêtes s'y terminent, ce qui élimine les temps d'inactivité et maximise la charge du GPU[9].
Mise en cache des clés et des valeurs (KV Cache)
Dans les modèles de type Transformer, la génération de chaque nouveau token nécessite des informations sur tous les tokens précédents. Pour éviter une croissance exponentielle des calculs, on utilise la mise en cache des clés et des valeurs (KV Cache). Le système stocke les résultats intermédiaires des calculs du mécanisme d'attention pour le contexte déjà traité et les réutilise, ce qui rend la génération de longues séquences et les dialogues multi-tours beaucoup plus efficaces[7].
Optimisation du mécanisme d'attention
Le stockage du KV Cache nécessite une quantité de mémoire considérable. Pour la réduire, des variantes optimisées du mécanisme d'attention ont été développées :
- Multi-Query Attention (MQA) : Toutes les têtes d'attention utilisent un seul ensemble commun de clés et de valeurs.
- Grouped-Query Attention (GQA) : Un compromis intermédiaire où les têtes d'attention sont divisées en groupes, et chaque groupe utilise un ensemble commun de clés et de valeurs.
La société Meta a appliqué avec succès le GQA dans les modèles LLaMA 2, ce qui a permis d'augmenter considérablement l'efficacité de l'inférence lors du traitement de contextes longs sans perte de qualité significative[10].
Optimisation de l'infrastructure et de l'architecture système
Systèmes hybrides et Génération Augmentée par la Récupération (RAG)
Il n'est pas toujours nécessaire d'utiliser le modèle le plus grand et le plus puissant pour une tâche donnée. Une approche hybride ou en cascade consiste à utiliser un modèle petit et peu coûteux pour les requêtes simples, et seulement en cas d'échec ou pour des tâches complexes, la requête est redirigée vers un modèle plus grand et plus coûteux.
Un cas particulier et très efficace de cette approche est la Génération Augmentée par la Récupération (RAG). Dans cette architecture, le LLM peut être relativement compact, car il utilise des informations à jour extraites d'une base de connaissances externe (par exemple, de la documentation d'entreprise ou d'un moteur de recherche) pour formuler sa réponse. Cela non seulement réduit les exigences sur la taille du modèle, mais résout également le problème des hallucinations. Le déploiement d'un modèle spécialisé de 70 milliards de paramètres avec RAG sur une infrastructure locale peut être de 2 à 4 fois moins cher que l'utilisation de l'API GPT-4 dans le cloud[11].
Références
- ↑ «OpenAI's GPT-3 Language Model: A Technical Overview». Lambda Labs. [1]
- ↑ «The Energy Footprint of Humans and Large Language Models». Communications of the ACM. [2]
- ↑ «The Inference Cost Of Search Disruption - Large Language Model Cost Analysis». SemiAnalysis. [3]
- ↑ Hoffmann, J., et al. (2022). «Training Compute-Optimal Large Language Models». arXiv:2203.15556.
- ↑ Chow, T. (2024). «Three Kuhnian Revolutions in ML Training». Substack. [4]
- ↑ «A Study to Evaluate the Impact of LoRA Fine-tuning on the Performance of Non-functional Requirements Classification». arXiv:2503.07927. (2025).
- ↑ 7.0 7.1 7.2 «LLM Inference Optimization: How to Speed Up, Cut Costs, and Scale AI Models». deepsense.ai. [5]
- ↑ Jin, H., et al. (2024). «GPTQ: Accurate Post-Training Quantization for Generative Pre-trained Transformers».
- ↑ «Continuous vs dynamic batching for AI inference». Baseten Blog. [6]
- ↑ «What is grouped query attention?». IBM. [7]
- ↑ «Inferencing on-premises with Dell Technologies». Dell Technologies Analyst Paper. [8]