你有没有算过,训练一个AI模型,到底要烧掉多少电、排出多少碳?想象一下:每训练一个大模型,就像让一辆大排量卡车空转几天几夜,发动机突突作响,油耗账单一路飙升。过去我们只关心这辆“卡车”跑得多快、能不能准时到站,却几乎没人去看油表。现在,越来越多工程师开始警觉:AI的“油耗”正在成为企业账单上不可忽视的一行,也是地球账本上沉重的一笔。 好消息是,就像现在每个家庭都有智能电表能看清“空调开了几度电、冰箱耗了多少瓦”,AI领域也出现了两件趁手的“电表工具”——CodeCarbon和ML CO2 Gauge。它们能实时告诉你:这一次模型训练,用了多少度电、折算成多少公斤二氧化碳,相当于种了几棵树才能抵消。学会使用这些工具,你就能像精打细算的家庭主妇一样,轻松掌握AI项目的“碳账单”,在模型选型和部署时做出更绿色的决策。

岗位关联

对AI从业者而言,掌握碳足迹计算方法,意味着你不仅能评估模型的性能与成本,还能量化它的环境代价,在ESG报告、绿色计算选型、合规审查中拥有别人没有的量化视角。

目录
  1. 可视化演示
  2. 碳足迹概念
  3. CodeCarbon工具
  4. ML CO2工具
  5. 计算方法
  6. 碳减排策略
  7. 模型选型决策
  8. AI 应用场景
  9. Python 演示
  10. 常见误区
  11. 面试题

可视化演示

这篇讲的是怎么计算AI模型训练和推理的碳排放。你能学到CodeCarbon和ML CO2 Gauge怎么用、碳... 切换模式查看不同维度。

本节配有交互动效(进入视口后自动加载,约 3KB)。

CodeCa:核心原理 动态展示关键流程与数据流动 交互控件调节参数实时渲染 f(x) = transform(x) 核心概念的可视化呈现

碳足迹概念

想象一下,你给自己装了一台“AI 电表”之后,首先得明白电表上的数字到底意味着什么。家里电表的读数单位是“度”,而 AI 碳足迹的单位则是“二氧化碳当量(CO2e)”。这个“当量”有点像你买菜时用的“斤”——胡萝卜、土豆、青菜虽然品种不同,但都可以用斤来统一称重。同样道理,AI 训练过程中除了直接用电,还涉及芯片制造、数据中心散热等环节排放的各种温室气体,它们对全球变暖的贡献各不相同,碳足迹就把这些贡献全部折算成二氧化碳的“统一重量”,方便比较和汇总。

从“电表读数”到“碳排放”之间的换算,离不开两个关键数字:能耗和碳强度。能耗指的是你的 GPU、CPU、内存等硬件在训练期间实际消耗的电量,单位是千瓦时(kWh);碳强度则像一个“地域指纹”——同一度电,在挪威可能是水力发电,几乎零碳排;在火力发电为主的地区,则会排出一大坨二氧化碳。把这两个数字相乘,就得到了最基本的碳足迹估算值。

不过,现实中的“电表”并没有那么简单。AI 训练不是一座孤岛——数据中心要散热、要供冷、要有网络设备,这些“周边开销”按惯例用 PUE(电源使用效率)这个系数来折算。PUE 为 1.5 意味着每训练用电 1 度,数据中心整体就要消耗 1.5 度电。这就像你做饭时,炒菜的燃气只是账单的一部分,抽油烟机和排风系统也在默默耗电。把这部分算进去,才是完整的 AI 碳足迹。

回到我们的比喻上来——这就像家庭电费账单上既显示“本月用了多少度电”,也显示“本地发电每度产生多少碳”。只有把两者结合起来看,你才能真正明白:一次 AI 训练,到底给地球添了多少负担。

C=Etraining×PUE×IgridC = E_{\text{training}} \times \text{PUE} \times I_{\text{grid}}
碳足迹 = 训练能耗 × 数据中心效率系数 × 电网碳强度。这个公式就是你给 AI 算“碳账单”的总账目。
  1. 训练能耗(E_training)模型训练期间所有硬件设备消耗的电量,单位 kWh,来自功耗监控工具。
    Etraining=Pavg×TE_{\text{training}} = P_{\text{avg}} \times T
  2. PUE 修正数据中心总用电量除以 IT 设备用电量的比值,PUE 越高说明散热等附加开销越大。
    PUE=EtotalEIT\text{PUE} = \frac{E_{\text{total}}}{E_{\text{IT}}}
  3. 碳强度(I_grid)每产生 1 kWh 电能所排放的二氧化碳当量克数,因地区能源结构而异。
    Igrid=mCO2e1 kWhI_{\text{grid}} = \frac{m_{\text{CO2e}}}{1\,\text{kWh}}

CodeCarbon工具

既然明白了“碳账单”的结构,接下来自然要找一件趁手的“电表”。CodeCarbon 就是这样一款开源的碳足迹追踪工具,它像给 AI 训练过程装了一个实时能耗监控器。你可以把 CodeCarbon 想象成一个“AI 跑步手表”——你训练时,它在后台默默记录每次心跳(GPU/CPU 功耗)、每公里路程(训练时长),最后在训练结束时给你一张完整的热量消耗报告(碳排放量)。

使用 CodeCarbon 非常简单,它支持本地和云端两种模式。在本地模式下,它直接读取 CPU、GPU 和内存的功耗数据,通过你所在地区的电网碳强度计算排放量;在云端模式下,它则从 AWS、Azure 和 Google Cloud 等云厂商的公开数据中获取实例的能耗和碳强度信息。这意味着无论你是在自己的服务器上训练,还是在云平台上跑任务,CodeCarbon 都能准确覆盖。

CodeCarbon 提供了一系列轻量级 API 函数。比如 track_emissions() 可以初始化一个追踪器;EmissionsTracker 类能自动记录每一次训练调用的碳排放;还有 OfflineEmissionsTracker 适合在没有网络的环境下配合本地的区域碳强度文件使用。就像跑步手表不会打扰你的步伐一样,使用 CodeCarbon 时你几乎不用担心它会拖慢训练速度。

就像跑步手表会在你完成一次晨跑后告诉你“燃烧了 320 大卡”一样,CodeCarbon 也会在你每次训练结束后告诉你“这次训练排放了 0.72 kg CO2e”。有了这个数字,你就能像管理体重一样,开始真正管理 AI 训练的环境成本。

EGPU=PGPU×tused×PUEE_{\text{GPU}} = P_{\text{GPU}} \times t_{\text{used}} \times \text{PUE}
CodeCarbon 的核心核算逻辑:GPU 平均功率 × 训练时长 × 数据中心 PUE,就是单块 GPU 的等效能耗。
  1. 平均功率(P_GPU)训练期间 GPU 的平均功耗,单位瓦特,CodeCarbon 周期性采样后端到端记录。
    PGPU=1n∑i=1nPiP_{\text{GPU}} = \frac{1}{n}\sum_{i=1}^{n} P_i
  2. 使用时长(t_used)从追踪器启动到停止的实际训练时间,单位小时。
    tused=tend−tstartt_{\text{used}} = t_{\text{end}} - t_{\text{start}}
  3. PUE 修正把 GPU 直接功耗折算为数据中心总能耗,不同据点的 PUE 系数由工具内置或用户配置。
    EGPU=PGPU×tused×PUEE_{\text{GPU}} = P_{\text{GPU}} \times t_{\text{used}} \times \text{PUE}

ML CO2工具

如果说 CodeCarbon 是“实时跑步手表”,那么 ML CO2 就像是科研实验室里的数据记录员。ML CO2(Machine Learning CO2 Impact)是一个更偏学术和实验管理的碳足迹计算工具,它为每个机器学习实验生成详细的碳足迹记录,甚至能自动生成“模型卡(Model Card)”中关于碳足迹的段落——这就像你的每次实验报告不仅写了准确率和损失函数,还额外附上了一页“环境影响附录”。

ML CO2 的特色在于它的“硬件系数”体系。它把 CPU、GPU、内存、主板等硬件的功耗预先建模成一组系数,再结合训练时长、数据中心位置、能源结构等因素计算碳排放。例如,在 ML CO2 框架中,每块 GPU 有一个固定的功耗参数表,训练时的总功耗等于这些硬件系数的累加。这让它非常适合记录多次实验的碳足迹,并横向对比不同模型设计方案的环保性能。

在真实的研究流程中,ML CO2 经常与实验管理平台配合使用。你每次跑模型时,工具会记录当前的硬件信息、训练时长、云服务商和地域;实验结束后,它会输出一张结构化表格,包含“训练耗时、总能耗、碳排量、相当于多少公里汽车行驶”等直观数据。对于需要发表论文或撰写技术报告的团队,这份表格可以直接变成“碳足迹透明度”的技术附件。

就像实验室里每个培养皿上都要贴标签写明“培养基成分、培养时间、菌种来源”一样,ML CO2 给每个 AI 模型都贴上了一张“实验环境标签”。它对研究者而言,不仅是一串碳排数字,更是一种透明可复现的绿色实验习惯。

CMLCO2=∑i=1n(Wi×ti)×EFC_{\text{MLCO2}} = \sum_{i=1}^{n} \left( W_i \times t_i \right) \times \text{EF}
ML CO2 的计算公式:每种硬件的功耗系数乘以使用时间,再统一乘上排放因子(EF),得到整个实验的碳排量。
  1. 硬件系数(W_i)第 i 种硬件(如某型号 GPU、CPU)在额定条件下的平均功耗,单位瓦特,由工具内置参数库提供。
    Wi=PowerDrawiW_i = \text{PowerDraw}_{i}
  2. 使用时间(t_i)该硬件在整个实验中处于活跃状态的时间,单位小时。
    ti=durationit_i = \text{duration}_i
  3. 排放因子(EF)每千瓦时电对应的 CO2 排放量,按地域和数据中心 PUE 调整后的综合数值。
    EF=Igrid×PUE\text{EF} = I_{\text{grid}} \times \text{PUE}

计算方法

现在你已经见过了两件工具,是时候亲自动手算一笔“碳账单”了。计算 AI 碳足迹的过程,就像在家算一个月的水电煤总费用:先看每个电器(硬件)的功率,乘以使用时间得到能耗,再看当地的电价(碳强度),最终得出费用(碳排放)。整个过程分为三步:获取能耗、确定排放因子、相乘并修正。

第一步是获取能耗。你可以通过 pynvml 这类库实时读取 GPU 的功率,也可以用 CodeCarbon 内置的功耗采样器自动记录。功耗采样的频率越高,结果越准确;就像电表如果每秒记录一次,就能捕捉到空调压缩机的启停瞬间,而不是只能看到平均功率。

第二步是确定排放因子。排放因子取决于训练数据中心所在的地理位置。CodeCarbon 内置了全球各大区域的电网碳强度数据,并通过 IP 或显式指定的数据中心位置自动匹配。比如在法国(核电为主)训练,每度电约 0.06 kg CO2;在澳大利亚(煤电为主)训练,每度电约 0.8 kg CO2——不同地区的“碳单价”差了十几倍。

第三步是相乘与修正。先把平均功率换算成千瓦,乘以训练小时数得到能耗(kWh),再乘以排放因子(kg CO2/kWh),最后乘上数据中心的 PUE。如果你使用云服务,还可以直接调用云厂商的 API 获取实例的确切功耗,工具会自动帮你完成这套换算——就像手机上的记账 App,你只需要输入每一笔支出,它自动帮你分类汇总。

就像学会了看水电表之后,你就能一眼看出家里哪个电器是“电老虎”一样,掌握了这套计算方法,你就能精准定位 AI 训练中哪个环节能耗最高、最能挤出减排空间。这是一切策略优化的基础。

C=Pavg×T1000×PUE×IgridC = \frac{P_{\text{avg}} \times T}{1000} \times \text{PUE} \times I_{\text{grid}}
完整计算式为:碳排量(kg)= 平均功耗(瓦)× 时长(小时)÷ 1000 × PUE × 碳强度(kg/kWh)。
  1. 功率换算把瓦特换算为千瓦,因为电价和碳强度都以 kWh 为单位。
    Pavg×T1000=EkWh\frac{P_{\text{avg}} \times T}{1000} = E_{\text{kWh}}
  2. PUE 修正把 IT 设备能耗放大到数据中心总能耗,PUE 典型值 1.1~2.0。
    Efacility=EkWh×PUEE_{\text{facility}} = E_{\text{kWh}} \times \text{PUE}
  3. 碳强度折算乘以电网碳强度,把电量换算为二氧化碳排放量。
    C=Efacility×IgridC = E_{\text{facility}} \times I_{\text{grid}}

碳减排策略

看懂了账单之后,大部分人的第一反应都是:我怎么把这笔开销降下来?AI 碳减排策略,本质上和家庭节能减排完全同构——无非是“换节能灯”和“少开空调”两大思路。在 AI 领域,这两大思路分别对应“使用绿色能源”和“优化模型与硬件”。

绿色能源是最直接的减排手段。把训练任务调度到使用可再生能源的数据中心,比如谷歌云、Azure 中接入风电、光伏的可用区,可以显著降低或归零碳强度。这就像把家里的电力套餐换成“光伏绿电套餐”,电价可能稍贵,但碳排放几乎为零。CodeCarbon 提供的云区域碳强度排名,就是帮你挑选“绿电套餐”的一种参考清单。

模型优化则是从源头减少能耗。模型剪枝、量化、蒸馏等压缩技术,可以把原本需要 100 亿参数的大模型瘦身成 3 亿参数的小模型,而精度损失仅在 1% 以内。配合早停法、混合精度训练、缓存中间特征等手段,训练时长也能大幅缩短。这就好比把家里的燃油汽车换成混动汽车——跑的里程一样,油耗直接减半。

硬件选型同样关键。一块 A100 的算力能顶几块老 GPU,用更新的架构训练同一个模型,往往在更短时间内完成,总功耗反而更低。就像顶级冰箱虽然标价高,但一级能效让它十年下来省下的电费远超差价。碳减排不一定是牺牲性能,反而可能在效率上带来收益。

别忘了,碳减排并不是“反 AI”或者“牺牲发展”——就像家庭节能减排不会让你放弃舒适生活,只是让你更聪明地用电。绿色 AI 的核心主张是:在保持模型性能的前提下,用更低碳的方式完成每一次计算。

R=1−CoptimizedCbaselineR = 1 - \frac{C_{\text{optimized}}}{C_{\text{baseline}}}
减排率 R 表示优化后碳排量相比基线方案下降的比例,是衡量绿色策略效果的核心指标。
  1. 基线碳排(C_baseline)未做任何优化时,原始模型训练产生的碳足迹。
    Cbaseline=Ebase×IgridC_{\text{baseline}} = E_{\text{base}} \times I_{\text{grid}}
  2. 优化碳排(C_optimized)采用绿色能源、模型压缩、高效硬件后的碳足迹。
    Coptimized=Enew×IcleanC_{\text{optimized}} = E_{\text{new}} \times I_{\text{clean}}
  3. 减排率计算算出优化方案相对于基线减少的排放比例。
    R=1−CoptimizedCbaselineR = 1 - \frac{C_{\text{optimized}}}{C_{\text{baseline}}}

模型选型决策

掌握了碳足迹的计算方法和减排手段之后,最后一步是把这些数据真正用起来。这就是碳足迹在模型选型和部署决策中的价值——它给了你一把新的标尺,让你在选择模型时不再只看“准确率”这一根尺子。

传统模型选型像买手机只看跑分:谁跑分高选谁。但在绿色 AI 的观念里,一台“跑分高但一天三充”的手机,和一台“跑分稍低但续航两天”的手机,需要放在一起综合权衡。用碳足迹数据做决策,就是在原来的“精度—速度—成本”三角模型中,加入第四根轴:环境成本。CodeCarbon 和 ML CO2 输出的报告,正是衡量这根轴的“续航测试工具”。

具体做法是:在候选模型的训练阶段,用工具记录每个模型的单位性能碳排量——比如每提升 1% 准确率需要多少千克 CO2。然后综合比较候选模型在相同任务上的碳排放、推理延迟和准确率。对于服务端频繁调用的场景,推理阶段的碳排往往比训练阶段更重要——就像电动公交车虽然制造过程排碳不少,但十年运营下来远比柴油公交更环保。

当企业把 CER 纳入模型决策时,碳足迹就不再只是论文里的一个注脚,而是跟准确率和预算一样重要的核心指标。对 ESG 团队来说,这些数据还能直接汇入年报、社会责任报告,让公司真正实现“用数据说话”的绿色承诺——就像家里装了智能电表后,每个月节省的每一度电都看得清清楚楚,节能减排从一句口号变成一笔明白账。

CER=Ctraining+CinferenceNinferences×A\text{CER} = \frac{C_{\text{training}} + C_{\text{inference}}}{N_{\text{inferences}} \times A}
碳效率比(CER):综合训练与推理碳排,除以推理次数与准确率的乘积,数值越低代表“越绿色高效”。
  1. 总碳排(C_training + C_inference)模型从训练到部署全生命周期的碳排放总和。
    Ctotal=Ctraining+CinferenceC_{\text{total}} = C_{\text{training}} + C_{\text{inference}}
  2. 推理总量(N_inferences)模型在实际业务中执行的推理次数。
    Ninferences=predictionstotalN_{\text{inferences}} = \text{predictions}_{\text{total}}
  3. 综合效率总碳排除以推理量×准确率,得到单位有效推理的碳成本。
    CER=CtotalNinferences×A\text{CER} = \frac{C_{\text{total}}}{N_{\text{inferences}} \times A}

AI 应用场景

云上模型训练碳排预算管理

阶段:模型训练与资源调度

解决的问题:传统分布式训练只关注 GPU 利用率和时间成本,训练任务跑完后才发现电费超支;更关键的是,碳排数据长期处于黑箱状态。AI 团队引入 CodeCarbon 后,可以在训练脚本中标注每次实验的碳排配额,一旦超过预算自动触发早停或切换到低功耗模式,让“碳预算”像内存预算一样被严格管理。

具体案例:某中大型互联网公司的 NLP 团队每周要训练 20 多个微调模型。他们在每个训练任务里用 EmissionsTracker 记录碳排,并绘制“实验碳排看板”,发现某两个相似任务的碳排差异高达 4 倍。随后团队将预训练模型换成蒸馏后的版本,把每周训练碳排从 800 kg 降到 210 kg,年度节省近 30 吨 CO2e。

模型选型时的绿色对比测试

阶段:模型评估与部署决策

解决的问题:过去选模型时只比较精度和延迟,忽略了在移动端部署大模型的持续碳排成本。通过 ML CO2 为候选模型生成碳足迹实验报告,团队可以在上线前对 BERT、蒸馏版 BERT、TinyBERT 三者的训练碳排、推理碳排做横向对比,为端侧场景选择“足够好但最低碳”的方案。

具体案例:某智能客服公司的算法团队在升级意图识别模型时,用 ML CO2 记录了三套候选方案的碳足迹。结果显示,TinyBERT 虽然准确率比 BERT 低 0.8%,但云端推理碳排仅为后者的 1/7,按全年 10 亿次调用计算,可减少 120 吨碳排放。公司最终选定 TinyBERT,并在技术报告中附上了完整的碳排对比表。

Python 演示

python40 行
# 使用 CodeCarbon 追踪 PyTorch 模型训练的碳排放import timeimport torchimport torch.nn as nnfrom codecarbon import EmissionsTracker class SmallNet(nn.Module):    def __init__(self):        super().__init__()        self.fc = nn.Linear(8, 8)     def forward(self, x):        return self.fc(x) def main():    tracker = EmissionsTracker(project_name="demo-training", output_dir="./emissions")    tracker.start()     model = SmallNet()    optimizer = torch.optim.SGD(model.parameters(), lr=0.01)    loss_fn = nn.MSELoss()     for epoch in range(3):        for batch in range(5):            x = torch.randn(32, 8)            y = torch.randn(32, 8)            optimizer.zero_grad()            pred = model(x)            loss = loss_fn(pred, y)            loss.backward()            optimizer.step()        print("epoch", epoch + 1, "done")        time.sleep(1)     emissions = tracker.stop()    print("Training emissions: %.4f kg CO2e" % emissions)    print("Report saved to ./emissions/emissions.csv") if __name__ == "__main__":    main()
目的:这段代码演示了如何在训练一个简单的 PyTorch 模型时,用 CodeCarbon 自动记录碳排放量并输出 CSV 报告。
  1. from codecarbon import EmissionsTracker导入 CodeCarbon 的追踪器,它是我们“AI 碳电表”的核心入口。
  2. EmissionsTracker(project_name="demo-training", output_dir="./emissions")初始化追踪器,指定项目名和输出目录,类似给电表贴上标签。
  3. tracker.start()开始记录环境信息与硬件功耗,相当于按下跑步手表的“开始”按钮。
  4. tracker.stop()停止追踪并返回总碳排量,相当于运动结束后查看消耗了多少大卡。
  5. emissions返回值以 kg CO2e 为单位,这就是本次训练产生的“碳账单”金额。
  6. output_dir="./emissions"生成 CSV 报告到指定文件夹,方便之后做多轮实验的横向对比。

常见误区

误区“碳排放不简单吗?看电表走了几度电,乘个系数就是碳排了。训练一次跑完,电表读数就是碳足迹。”

正解单次训练的电量只是碳足迹的起点。完整的碳足迹还要加上数据中心散热、供电损耗(PUE 修正)、硬件生产与运输的隐含碳排放,甚至包括推理阶段的长期消耗。就像家里煮一锅饭,除了电饭锅消耗的电,还有抽油烟机、灯和空调都在分摊着这顿饭造成的总能耗。

为何常见:因为“直接用电量”是唯一肉眼可见、工具可测的数字,而 PUE、隐含碳这些因素藏在后台,不特意查资料很难意识到。

误区“我所有模型都在云上训练,CodeCarbon 肯定用不了,我只是租了一台虚拟机,根本摸不到真实硬件。”

正解CodeCarbon 专门提供了云端支持,它可以从公有云 API 中获取你所租实例的硬件型号、功耗数据、所在区域碳强度,甚至支持单独的 @track_emissions 装饰器封装云端训练函数。它就像你出差住酒店时,虽然看不到总电表,但酒店账单已经按房型把电费算好了。

为何常见:直觉上认为“必须直连硬件才能测功耗”,忽略了 CodeCarbon 设计时就把云端 API 作为第一等公民支持。

误区“绿色 AI 无非是牺牲模型质量换环保,老板要准确率,我根本不敢提降碳。”

正解准确率和碳排放并非必然对立。模型蒸馏、量化、混合精度训练、早停策略都可以在几乎不损失准确率的情况下大幅减少碳排;甚至更紧凑的模型往往推理速度更快、部署成本更低。这就像换车,混动车油耗减半但动力并不弱,技术优化才是关键。

为何常见:人们习惯性地把性能指标和环保视为零和博弈,忽略了“效率”本身就是一座尚待挖掘的金矿。

面试题

Q1. 以下哪个公式最准确地描述了 AI 模型训练碳足迹的基本核算逻辑?

单选题 · easy

  • A.碳足迹 = 训练数据量 × 模型参数量
  • B.碳足迹 = 训练能耗 × PUE × 电网碳强度← 正确答案
  • C.碳足迹 = GPU 数量 × 训练天数
  • D.碳足迹 = 内存带宽 × 计算时延

答案:B。碳足迹的基本公式是能耗乘以电网碳强度,再乘数据中心 PUE。选项 B 覆盖了这三个关键因子,而 A、C、D 都只涉及部分硬件或数据属性,无法直接得出碳排放量。

Q2. CodeCarbon 提供哪些追踪模式?

多选题 · mid

  • A.本地硬件功耗追踪← 正确答案
  • B.云端实例碳排追踪← 正确答案
  • C.手动 Excel 统计追踪
  • D.离线区域碳强度追踪← 正确答案

答案:ABD。CodeCarbon 支持本地 EmissionsTracker、云端自动追踪,还有针对无网络的 OfflineEmissionsTracker。C 选项的 Excel 统计并不是 CodeCarbon 自带的追踪模式,它是用户自己手工整理报表的替代做法。

Q3. 在 ML CO2 工具中,“硬件系数”指的是什么?

单选题 · mid

  • A.每个硬件设备的标称功耗参数← 正确答案
  • B.GPU 的浮点运算峰值 TFLOPS
  • C.模型训练的收敛轮次
  • D.数据集的样本总量

答案:A。ML CO2 将 CPU、GPU、内存等硬件的平均功耗预先建模为系数,训练时按使用时长累加,得到总能耗。TFLOPS、收敛轮次、样本量都不能直接表示功耗,因此都排除。

Q4. 两家公司的电网碳强度分别为 0.1 和 0.8 kg CO2/kWh,在相同能耗下训练同一模型,后者碳排放是前者的几倍?

单选题 · mid

  • A.2 倍
  • B.4 倍
  • C.8 倍← 正确答案
  • D.16 倍

答案:C。碳排放与电网碳强度成正比,0.8 / 0.1 = 8,所以在相同能耗下后者的碳排放是前者的 8 倍,选择 C。这也解释了为什么选择数据中心地理位置对绿色 AI 如此重要。

Q5. 下列哪些策略可以有效降低 AI 模型的训练碳足迹?

多选题 · hard

  • A.使用可再生能源数据中心← 正确答案
  • B.对模型进行量化和蒸馏← 正确答案
  • C.增加训练迭代次数到充分收敛
  • D.采用混合精度训练← 正确答案

答案:ABD。绿电、模型压缩和混合精度均能降低能耗或碳强度;而增加训练迭代会延长训练时间,增加能耗,反而推高碳足迹。因此 C 错误。

Q6. CodeCarbon 计算 GPU 能耗时,以下哪项数据不是必需输入?

单选题 · easy

  • A.GPU 平均功耗
  • B.训练使用时长
  • C.数据增强概率← 正确答案
  • D.数据中心 PUE

答案:C。GPU 能耗 = 平均功耗 × 使用时长 × PUE,这三项缺一不可;数据增强概率影响的是模型泛化效果,与能耗计算无关,所以 C 不是必需输入。

Q7. 某模型训练碳排放为 500 kg CO2e,改用高效硬件后碳排降为 150 kg CO2e,则该优化的减排率是多少?

单选题 · hard

  • A.30%
  • B.50%
  • C.70%← 正确答案
  • D.90%

答案:C。减排率 = 1 - 优化碳排 / 基线碳排 = 1 - 150/500 = 0.7,即 70%。这代表相比原来的方案节约了七成碳排放,而非只减少了原本能耗的三成。

Q8. 在模型选型时,为什么要把碳足迹纳入决策指标?

多选题 · mid

  • A.满足企业 ESG 报告披露需求← 正确答案
  • B.帮助比较部署后的长期运营成本← 正确答案
  • C.碳排低的模型一定准确率最高
  • D.降低云资源与能源账单成本← 正确答案

答案:ABD。碳足迹数据可助力 ESG 披露、提高推理效率并降低能源账单,这些都是合理决策依据。C 错误,因为碳排低与准确率并没有必然联系,模型仍须综合评估性能。

Q9. 关于 PUE 下列说法正确的是?

单选题 · easy

  • A.PUE 越小表示数据中心能效越高← 正确答案
  • B.PUE 越大表示数据中心能效越高
  • C.PUE 只与 GPU 发热有关
  • D.PUE 固定为 1.5

答案:A。PUE 是数据中心总能耗除以 IT 设备能耗,理想值是 1。PUE 越接近 1,说明散热、供冷等开销越低,能效越高。它并不固定也不只受 GPU 影响。

Q10. CodeCarbon 与 ML CO2 的核心定位区别是什么?

单选题 · hard

  • A.前者用于训练实时追踪,后者用于实验碳排记录与模型卡← 正确答案
  • B.前者只支持 GPU,后者只支持 CPU
  • C.两者功能完全相同
  • D.前者属于商业软件,后者属于开源软件

答案:A。CodeCarbon 灵活嵌入训练流程做实时追踪,ML CO2 更侧重结构化实验记录与模型卡的碳排输出。选项 B 错误,二者均支持多种硬件;C 夸大共性;D 颠倒了两者的开源属性。