Fondamentaux de l’IA

Mesurer et réduire l’empreinte carbone de l’IA avec CodeCarbon

mm
Ajouter Unite.AI à vos sources préférées sur Google

Les charges de travail d’IA consomment de l’électricité, et les émissions de gaz à effet de serre associées à cette électricité dépendent du lieu et du moment où le calcul s’exécute. CodeCarbon est un outil open source qui estime les émissions opérationnelles en combinant les estimations d’énergie de la charge de travail avec l’intensité carbone de l’électricité.

Une estimation est utile lorsque sa frontière et son incertitude sont explicites. Elle n’inclut pas automatiquement la fabrication du matériel, la construction des centres de données, le réseau, le stockage ou les effets en aval du déploiement d’un modèle.

Points clés

  • La consommation d’énergie et les émissions de carbone sont liées mais pas identiques ; l’intensité carbone du réseau varie selon la région et le moment.
  • CodeCarbon estime l’énergie du CPU, du GPU et de la mémoire, puis applique des facteurs d’émission dépendant du lieu.
  • L’utilisation du matériel, la durée d’exécution, la surcharge du centre de données et la source de mesure affectent la précision.
  • L’objectif pratique est de produire des rapports comparables et de réduire les émissions, et non d’obtenir une précision illusoire.
Measuring and Reducing AI’s Carbon Footprint with CodeCarbon diagram showing workload, power telemetry, energy, grid intensity, co₂e estimate, reduce + report
Déclarez la frontière et l’incertitude ; utilisez les estimations pour comparer et réduire.

Énergie, puissance et intensité carbone

La puissance est le taux de consommation d’énergie, généralement mesurée en watts. L’énergie s’accumule au fil du temps, généralement en kilowattheures. L’équivalent dioxyde de carbone opérationnel est estimé en multipliant l’énergie par un facteur d’émission, tel que des grammes de CO₂e par kilowattheure.

Le même travail peut générer des émissions différentes selon qu’il est exécuté sur un réseau plus propre ou à un moment à faible intensité carbone. Un accélérateur plus rapide peut consommer davantage de puissance instantanée tout en utilisant moins d’énergie totale s’il se termine beaucoup plus tôt.

Ce que mesure CodeCarbon

CodeCarbon observe ou estime l’énergie des composants de calcul et enregistre des métadonnées telles que la durée et le lieu. Lorsque le matériel fournit une télémétrie de puissance directe, les estimations peuvent être plus précises ; sinon l’outil utilise des modèles matériels et des hypothèses d’utilisation.

Le mode en ligne peut utiliser l’intensité carbone sensible à la localisation, tandis que les réglages hors ligne reposent sur des facteurs configurés. Le résultat est une estimation dont la méthode, la version du logiciel et la configuration doivent être conservées avec l’expérience.

Choisir une frontière de rapport

Une frontière au niveau d’une exécution peut couvrir un seul travail d’entraînement. Une frontière de projet peut inclure la recherche d’hyperparamètres, les exécutions échouées, le prétraitement et l’inférence. Une frontière de service peut inclure le réseau, le stockage et le déploiement continu.

L’efficacité énergétique d’un centre de données (PUE) prend en compte la surcharge des installations au‑delà de l’équipement informatique. Les émissions incorporées liées à la fabrication et à la construction nécessitent des données de cycle de vie que le suivi d’exécution ne fournit généralement pas. Les rapports doivent indiquer les exclusions plutôt que de mélanger des totaux incomparables.

Réduire avant de compenser

Commencez par la valeur de la charge de travail : éliminez les expériences redondantes, utilisez l’arrêt précoce, réutilisez les points de contrôle et choisissez des références efficaces. Améliorez l’utilisation, regroupez les lots de façon appropriée et adaptez la taille du modèle à la tâche. L’apprentissage par transfert peut éviter un entraînement à partir de zéro.

Planifiez le travail flexible dans des régions ou des périodes à faible intensité carbone, lorsque cela est légal et opérationnellement pratique. Compressez les modèles et choisissez du matériel de service efficace ; l’IA en périphérie peut réduire le transfert de données mais peut aussi dupliquer du matériel sous‑utilisé, il faut donc mesurer le système complet.

Rapporter l’incertitude et comparer équitablement

Publiez le matériel, le lieu, le temps d’exécution, l’énergie, le facteur d’émission, le nombre d’exécutions et si la valeur est mesurée ou estimée. Séparez le calcul exploratoire de l’exécution d’entraînement finale. Évitez de présenter de nombreuses décimales lorsque les hypothèses dominent la précision.

Comparez les systèmes à la même qualité de tâche et à la même frontière. Un modèle à faible consommation d’énergie qui échoue à la tâche n’est pas efficace, tandis qu’un petit gain de précision peut ne pas justifier une forte augmentation des ressources. Le carbone n’est qu’un impact parmi le coût, l’eau, le cycle de vie du matériel et le bénéfice social.

Ce que CodeCarbon estime

CodeCarbon estime la consommation d’énergie et les émissions de carbone associées à un calcul. Selon l’environnement et la télémétrie disponible, il peut lire le CPU, le GPU, la RAM ou la puissance du système, intégrer l’énergie dans le temps et la multiplier par une estimation d’intensité carbone pour la région électrique. Les résultats sont des estimations influencées par la couverture matérielle, l’intervalle d’échantillonnage, l’attribution des processus, les modèles de puissance, le lieu et les données du réseau. Elles doivent inclure les unités, la version, la méthodologie et l’incertitude, plutôt que d’être présentées comme des mesures physiques exactes.

Les émissions opérationnelles proviennent de l’électricité pendant l’entraînement et l’inférence ; les émissions incorporées proviennent de la fabrication, du transport et de la mise au rebut du matériel et se situent généralement en dehors du suivi d’exécution. Les serveurs partagés compliquent l’allocation, tandis que les instances cloud peuvent offrir une télémétrie limitée. L’intensité moyenne du réseau diffère de l’intensité marginale et varie selon le temps. Les contrats d’énergie renouvelable et les compensations sont des instruments comptables, et non la preuve qu’une charge de travail a généré zéro émission. Déclarez clairement la frontière avant de comparer des exécutions ou des fournisseurs.

Concevoir une expérience de mesure pertinente

Suivez la tâche, le modèle, les données, le matériel, la région, la durée, l’utilisation, l’énergie, l’estimation carbone, la qualité et le nombre de sorties réussies. Les effets de chauffe et de cache peuvent fausser les exécutions courtes, il faut donc répéter les mesures sous charge contrôlée. Comparez les modèles à qualité et objectifs de service égaux plutôt qu’à un seul epoch d’entraînement ou nombre de tokens. Incluez la préparation des données, la recherche d’hyperparamètres, les expériences échouées, les ressources inactives et l’inférence récurrente lorsque cela est pertinent. Une empreinte d’entraînement plus petite peut être submergée par un service à fort volume.

Utilisez l’outil pour identifier les leviers d’ingénierie : réduire les exécutions inutiles, appliquer l’arrêt précoce, dimensionner correctement les accélérateurs, améliorer l’utilisation et le regroupement, choisir des modèles efficaces, quantifier ou distiller, mettre en cache les résultats, planifier le travail flexible pendant des périodes ou dans des régions à faible intensité carbone, et retirer les ressources inactives. Chaque optimisation doit préserver la précision, la latence, la sécurité et la fiabilité requises. Déplacer le calcul sans tenir compte du transfert de données ou des contraintes régionales peut simplement déplacer l’impact plutôt que le réduire.

Rapport et gouvernance

Publiez la méthodologie, la version du logiciel, le matériel, les hypothèses géographiques, la métrique de qualité et l’incertitude avec l’estimation. Évitez de comparer des organisations qui utilisent des frontières différentes. Fixez des budgets et examinez les grandes expériences avant leur exécution, mais ne récompensez pas les équipes qui dissimulent du calcul en dehors des environnements mesurés. Sécurisez les métadonnées de l’expérience et évitez d’enregistrer les invites ou données privées. CodeCarbon rend le coût environnemental visible et comparable dans le cadre d’une méthode disciplinée ; il ne peut pas fournir une évaluation complète du cycle de vie ni remplacer une comptabilité énergétique et carbone vérifiée de façon indépendante.

Exemple pratique : comparaison de deux entraînements de modèle

Une équipe entraîne le même modèle d’image sur deux types d’accélérateurs et utilise CodeCarbon avec des données, un objectif de qualité, une logique de lot et une règle d’arrêt identiques. Elle enregistre la version de l’outil, le matériel, la région, l’échantillonnage, l’utilisation, la durée, l’énergie, la source d’intensité carbone et l’incertitude. La comparaison inclut les essais échoués et le prétraitement, tandis que les émissions incorporées du matériel sont explicitement exclues de l’estimation d’exécution. Les résultats sont normalisés par entraînement qualifié en fonction de la qualité.

La configuration la plus efficace est ensuite testée pour la latence d’inférence, la fiabilité et la précision en aval. Les ingénieurs réduisent le temps d’inactivité et les exécutions d’hyperparamètres, améliorent le regroupement et planifient le travail flexible où l’intensité du réseau est plus faible sans déplacer les données réglementées. Un rapport publie les hypothèses et évite d’affirmer un impact nul grâce aux contrats renouvelables. L’estimation devient un indicateur budgétaire et de conception, et non un badge marketing. Des mesures répétées vérifient si l’optimisation a réduit la charge de travail totale du cycle de vie plutôt qu’une seule exécution visible.

Preuves de mise en œuvre et disponibilité opérationnelle

Une décision de production nécessite plus qu’une démonstration réussie. Définissez les utilisateurs visés, l’environnement d’exploitation, les entrées, les sorties, les dépendances, le propriétaire et les conséquences de chaque défaillance importante. Établissez une base de référence reproductible et un jeu d’évaluation versionné avant l’ajustement. Testez les cas ordinaires, les conditions limites, les entrées malformées ou manquantes, les dérives de distribution, les pannes de dépendances, les usages abusifs, ainsi que les groupes ou environnements les plus susceptibles d’être sous‑servis. Mesurez la qualité de la tâche avec la calibration ou l’incertitude, la latence, le débit, le coût des ressources, l’accessibilité, la confidentialité et la sécurité. Enregistrez chaque transformation et seuil afin qu’un évaluateur indépendant puisse reproduire le résultat et distinguer la preuve d’un prototype attractif.

Avant le lancement, attribuez l’autorité pour la publication, les exceptions, les modifications, les retours en arrière et la mise hors service. Utilisez un déploiement progressif, conservez une solution de secours sûre et vérifiez la surveillance avec des pannes injectées volontairement. La télémétrie opérationnelle doit révéler la qualité des entrées, le comportement des sorties, la version du modèle ou de la règle, l’état des dépendances, les interventions humaines et les résultats confirmés, sans collecter de données sensibles inutiles. Définissez les seuils d’alerte et le responsable de la réponse, puis examinez les preuves du monde réel après le déploiement plutôt que de supposer que la performance hors ligne persistera. Réévaluez chaque fois que les sources de données, les utilisateurs, les modèles, les fournisseurs, les politiques, le matériel ou les objectifs changent. Un système maintenu nécessite également des procédures documentées de récupération, d’apprentissage des incidents, de suppression et de conservation, ainsi qu’un point clair où il doit être désactivé ou remplacé.

Foire aux questions

CodeCarbon mesure-t-il directement le CO₂ provenant d’un ordinateur ?

Non. Il estime les émissions à partir de la consommation d’énergie et de l’intensité carbone de l’électricité ; les ordinateurs n’émettent pas directement les gaz à effet de serre du réseau.

Le cloud computing est-il toujours moins carboné ?

Non. Les résultats dépendent de l’efficacité du matériel, de l’utilisation, de la surcharge du centre de données, du mix énergétique du réseau, de la région, du moment et du déplacement des données.

Références principales

Blogueur et programmeur avec des spécialités en Machine Learning et Deep Learning sujets. Daniel espère aider les autres à utiliser le pouvoir de l'IA pour le bien social.