Hugging Face Hub 碳排放追踪
Hugging Face 引入了一套工具和集成,用于跟踪、报告和基于二氧化碳 (CO2) 排放量过滤机器学习模型。这些举措旨在提升对 AI 模型训练和部署过程中的环境影响的透明度,因为这些过程会通过 GPU、存储和其他计算基础设施的能源消耗产生 CO2。
在 Hub 上按碳足迹过滤模型
huggingface_hub 库现在包含一个 emissions_threshold 参数,允许用户根据模型的训练排放量进行搜索。这使开发者在选择模型时能够优先考虑环保、低排放的模型。
用户可以指定 CO2 克数的范围来过滤结果。例如,使用 HfApi 类,搜索排放量最高为 100 克的模型会返回 191 个模型,其中包括 esiebomajeremiah/autonlp-email-classification-657119381(3.516 克)等示例。相反,搜索排放量最低阈值为 500 克的模型会识别出更大、排放更高的模型,如 Maltehb/aelaectra-danish-electra-small-cased(4009.5 克)。
使用 Transformers 自动追踪排放
为了便于报告,Hugging Face 已将 codecarbon 集成到 transformers 库中。当系统上安装了 codecarbon 时,Trainer 对象会在训练过程中自动实现 CodeCarbonCallback。
此集成会在输出目录(例如 codecarbon-text-classification)中自动生成一个 emissions.csv 文件。该文件记录不同训练运行中的碳排放,使研究人员能够识别与最终模型版本相关的具体排放量。
在模型卡中报告排放
通过在模型的元数据中直接包含排放数据实现透明化。训练完成并通过 codecarbon 跟踪排放后,用户可以将 co2_eq_emissions 值添加到模型卡的顶部。
这种标准化的元数据格式使 Hugging Face Hub 能够索引排放数据,并通过上述的 emissions_threshold 参数进行搜索。有关元数据格式的详细指南可在官方 Hub 文档中找到。
影响 AI 碳排放的因素
机器学习模型生命周期中产生的 CO2 总量由以下三大因素决定:
- Runtime:训练过程的持续时间。
- Hardware:使用的具体计算资源(例如不同的 GPU 架构)。
- Carbon Intensity:为基础设施供能的能源来源的碳足迹。