Pourquoi est-ce important ?
La formation et l'exécution de modèles d'IA peuvent être très gourmandes en ressources, ce qui augmente les coûts et les émissions de carbone. Le secteur des TIC (technologies de l'information et de la communication) représente déjà 2 à 5 % des émissions mondiales et pourrait atteindre 14 % d'ici 2040, les centres de données contribuant à près de la moitié de cette croissance.
En tant que chefs de projet, nous ne contrôlons peut-être pas le code ou l'infrastructure, mais nous influençons les décisions clés et les choix intelligents, comme l'utilisation de modèles plus petits, la formation efficace et les bonnes questions à poser. Ce chapitre a pour but de vous fournir des méthodes techniques qui réduisent l'impact environnemental, même sans données claires sur la consommation d'énergie que les grandes entreprises technologiques (également principales propriétaires de centres de données) ne partagent pas facilement. Ces techniques ne sont pas seulement bénéfiques pour la planète, elles peuvent également accélérer le travail de votre équipe et réduire les coûts d'infrastructure.
Que puis-je faire ?
-
Sélectionnez le cadre d'IA le plus économe en énergie (par exemple, PyTorch semble être plus économe en énergie pendant la phase d'inférence et TensorFlow pendant la phase d'entraînement).
-
Utilisez des modèles pré-entraînés lorsque cela est possible, afin de réduire la charge de traitement. Des modèles open source pré-entraînés de qualité sont disponibles et peuvent être utilisés tels quels ou avec un apprentissage par transfert. Par exemple : Mistral, Llama, DeepSeek, Hugging Face.
-
Privilégiez les modèles spécialisés et plus petits aux LLM généraux de pointe (par exemple, des modèles de transformateurs plus petits comme DistilBERT pour les tâches de NLP). Pour surmonter le scepticisme quant à leur efficacité, testez un modèle plus petit afin de valider la parité des performances, en partageant les résultats de manière transparente avec les parties prenantes.
-
Utilisez le taille des modèles, qui réduit la complexité d'un modèle déjà formé en supprimant les composants inutiles. Cela rend le modèle plus petit et plus efficace, ce qui limite le temps de calcul pour votre environnement de production.
-
Régler avec précision votre modèle avec soin, en gelant les paramètres des modèles pré-entraînés et en introduisant votre propre sous-ensemble de paramètres.
-
Tirez parti des techniques d'échantillonnage aléatoire lorsque vous traitez un ensemble de données très volumineux. Cela vous permet de créer un sous-ensemble représentatif de données pour l'entraînement ou l'évaluation de votre modèle, ce qui peut réduire considérablement le temps de calcul.
-
Pratiquez l'distillation pour transférer les connaissances de modèles complexes et volumineux (enseignants) vers des modèles plus petits et plus efficaces (élèves), ce qui réduit les ressources informatiques et la consommation d'énergie tout en maintenant les performances.
-
Utilisez des types de données à faible précision, en tirant parti de l'optimisation de la mémoire (quantification, une technique d'optimisation de la mémoire pour l'exécution de l'inférence) afin de réduire la taille des modèles. Par exemple : float32, int8
-
Entraînez et exécutez les modèles plus efficacement. Planifiez l'entraînement lorsque l'énergie est moins chère ou plus verte, par exemple la nuit ou dans les régions où l'énergie verte est disponible. Reportez ou mettez en file d'attente les processus qui prennent beaucoup de temps, comme l'inférence de modèles volumineux, pour un traitement par lots.
-
Encouragez l'inférence locale ou sur appareil pour les tâches récurrentes ou prévisibles afin de réduire la dépendance au cloud.
-
Optez pour l'edge computing lorsque cela est possible. Les modèles plus petits sont mieux adaptés au traitement et au stockage à proximité de la source de données, ce qui réduit la consommation d'énergie.
-
Tirez parti de l'Apprentissage fédéré pour former un modèle ML sur plusieurs appareils ou serveurs contenant des données locales sans partager les données réelles afin de limiter la formation du modèle et de réduire le temps de traitement.
-
Pratiquez la refactorisation de code IA économe en énergie : identifiez et refactorisez les codes IA qui contribuent à une consommation d'énergie élevée sans sacrifier la précision ou les performances de ces modèles.
-
Travaillez avec des ingénieurs pour optimiser l'utilisation du matériel à toutes les étapes du développement, définir des limites de puissance pour les GPU et tirer parti du traitement par lots.
Éléments à prendre en considération
-
🧑💰Conception optimisée du système et allocation des ressources pour de meilleures performances et des coûts réduits
-
🌍 Mesures d'efficacité énergétique conduisant à une diminution de la consommation
-
🌍💰Réduction de la consommation d'eau dans les opérations
À quoi ressemble le succès ?
Demandez aux ingénieurs de rendre compte des gains d'efficacité ou des compromis en matière de performances et organisez régulièrement des revues de modèles afin de discuter de l'impact environnemental, de la précision et de la latence.