Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

显示模型的碳排放

为什么计算模型的碳排放是有益的?

Strubell 等人 所述,训练 ML 模型通常会消耗大量能源,并可能产生大量的碳足迹。 因此,重要的是要跟踪报告模型的排放,以便更好地了解我们领域的环境影响。

关于模型的碳足迹,我应该包含哪些信息?

如果可以,您应该包含有关以下内容的信息

  • 模型训练所在的位置(从位置方面考虑)
  • 所使用的硬件,例如 GPU、TPU 或 CPU,以及数量
  • 训练类型:预训练或微调
  • 模型的估计碳足迹,使用 Code Carbon 包实时计算,或使用 ML CO2 计算器 在训练后计算。

碳足迹元数据

您可以将碳足迹数据添加到模型卡元数据(在 README.md 文件中)。 元数据的结构应为

---
co2_eq_emissions:
  emissions: number (in grams of CO2)
  source: "source of the information, either directly from AutoTrain, code carbon or from a scientific article documenting the model"
  training_type: "pre-training or fine-tuning"
  geographical_location: "as granular as possible, for instance Quebec, Canada or Brooklyn, NY, USA. To check your compute's electricity grid, you can check out https://app.electricitymap.org."
  hardware_used: "how much compute and what kind, e.g. 8 v100 GPUs"
---

我的模型的碳足迹是如何计算的? 🌎

考虑计算硬件、位置、使用情况和训练时间,您可以估算模型产生了多少 CO2

计算方法很简单! ➕

首先,您需要了解用于训练的电网的碳排放强度,即每千瓦时(KwH)电能使用所产生的 CO2 量。 碳排放强度取决于硬件的位置和该位置的 能源组合,即使用的是可再生能源(如太阳能 🌞、风能 🌬️ 和水力 💧)还是不可再生能源(如煤炭 ⚫ 和天然气 💨)。 用于训练的可再生能源越多,训练的碳排放强度就越低!

然后,您需要使用 pynvml 库获取 GPU 在训练过程中的功耗。

最后,将功耗和碳排放强度乘以模型的训练时间,即可得到 CO2 排放量的估算值。

请注意,这并不是一个精确的数字,因为还有其他因素会影响碳排放,例如数据中心供暖和制冷所需的能源,这些因素会导致碳排放增加。 但是,这将使您大致了解模型产生的 CO2 排放量!

向模型添加碳排放元数据

  1. 如果您使用的是AutoTrain,系统会为您跟踪 🔥
  2. 否则,在训练代码中使用 Code Carbon 等跟踪器,然后指定
co2_eq_emissions: 
  emissions: 1.2345

在模型卡元数据中,其中 1.2345 是以为单位的排放值。

要了解有关 Transformer 碳足迹的更多信息,请查看 视频,这是 Hugging Face 课程的一部分!

< > 更新 在 GitHub 上