2025-11-15T16:58:11.980929

Prompt engineering and its implications on the energy consumption of Large Language Models

Rubei, Moussaid, di Sipio et al.
Reducing the environmental impact of AI-based software systems has become critical. The intensive use of large language models (LLMs) in software engineering poses severe challenges regarding computational resources, data centers, and carbon emissions. In this paper, we investigate how prompt engineering techniques (PETs) can impact the carbon emission of the Llama 3 model for the code generation task. We experimented with the CodeXGLUE benchmark to evaluate both energy consumption and the accuracy of the generated code using an isolated testing environment. Our initial results show that the energy consumption of LLMs can be reduced by using specific tags that distinguish different prompt parts. Even though a more in-depth evaluation is needed to confirm our findings, this work suggests that prompt engineering can reduce LLMs' energy consumption during the inference phase without compromising performance, paving the way for further investigations.
academic

Prompt engineering and its implications on the energy consumption of Large Language Models

基本信息

  • 论文ID: 2501.05899
  • 标题: Prompt engineering and its implications on the energy consumption of Large Language Models
  • 作者: Riccardo Rubei, Aicha Moussaid, Claudio Di Sipio, Davide Di Ruscio (University of L'Aquila)
  • 分类: cs.SE (Software Engineering)
  • 发表时间: 2025年1月10日
  • 论文链接: https://arxiv.org/abs/2501.05899

摘要

随着AI系统的环境影响日益受到关注,大语言模型(LLMs)在软件工程中的密集使用带来了计算资源、数据中心和碳排放的严峻挑战。本文研究了提示工程技术(PETs)如何影响Llama 3模型在代码生成任务中的碳排放。研究使用CodeXGLUE基准测试,在隔离测试环境中评估了能耗和生成代码的准确性。初步结果表明,使用特定标签来区分不同提示部分可以减少LLMs的能耗。尽管需要更深入的评估来确认研究发现,但这项工作表明提示工程可以在不影响性能的情况下减少LLMs推理阶段的能耗。

研究背景与动机

问题定义

本研究要解决的核心问题是:如何通过提示工程技术减少大语言模型在推理阶段的能耗,同时保持代码生成任务的性能

重要性分析

  1. 环境影响:LLMs的训练和推理过程消耗大量计算资源,产生显著的碳足迹。例如,某些模型的碳排放相当于5辆汽车的终生排放量
  2. 资源挑战:LLMs需要高性能计算集群,训练过程可能持续数周或数月
  3. 评估困难:由于并行任务和非独占使用集群等因素,测量HPC环境中的能耗特别具有挑战性
  4. 标准缺失:即使是维护良好的LLMs排行榜基准也不报告能耗,只关注准确性指标

现有方法局限性

  1. 现有研究主要关注硬件层面的影响测量,缺乏对提示工程技术节能效果的系统研究
  2. 缺乏标准化的碳排放测量指南和信息
  3. 评估LLMs消耗具有挑战性,因为生成代码的变异性更高

研究动机

基于绿色软件工程(GSE)的发展需求,本文专注于利用提示工程技术来减轻LLMs在推理阶段的能耗,为AI系统的可持续发展提供新的解决思路。

核心贡献

  1. 首次系统研究:调查了多种提示工程技术和自定义标签对LLMs执行代码完成任务时能耗的影响
  2. 权衡分析:研究了碳排放、执行时间和生成代码准确性之间的权衡关系,探索了能效与模型准确性之间的平衡
  3. 实验发现:证明了使用自定义标签可以显著减少能耗(one-shot减少99%,few-shots减少83%)
  4. 开源贡献:提供了完整的复现包,促进该领域的进一步研究

方法详解

任务定义

任务:代码完成(Code Completion)

  • 输入:不完整的Java代码片段
  • 输出:完成代码片段的一行代码
  • 约束:在保持准确性的同时最小化能耗

实验架构

研究设计了一个完整的实验工作流程:

  1. 数据源:CodeXGLUE数据集
  2. 提示创建器:将输入转换为Llama 3可理解的格式
  3. 提示增强器:使用自定义标签增强提示
  4. 本地部署的Llama 3:执行代码完成任务
  5. 能耗监控:使用CodeCarbon工具监控每次执行
  6. 结果存储:保存问题、答案和测量结果

提示配置设计

研究定义了5种不同的提示配置:

C0 - 默认配置

  • 定义模型角色,提供不完整代码片段,无任何自定义
  • Zero-shot无示例,one-shot一个示例,few-shots五个示例

C1 - 无解释的自定义标签

{
  "role": "user",
  "content": "<code>package com.lmax.disruptor.support;</code><incomplete>public final</incomplete>"
}

C2 - 有解释的自定义标签: 在提示中嵌入自定义标签的含义说明

C3 - 系统角色中的自定义提示: 将标签解释放在系统角色部分

C4 - 无系统定义: 完全不使用系统角色定义,直接在用户提示中包含任务说明

技术创新点

  1. 自定义标签系统:引入<code><incomplete>标签来明确区分输入代码和需要完成的部分
  2. 多维度评估:同时考虑能耗、执行时间和准确性指标
  3. 量化技术结合:使用16位浮点数而非默认32位,减少计算成本
  4. 隔离测试环境:确保测量的准确性和可重复性

实验设置

数据集

  • 数据集:CodeXGLUE代码完成任务
  • 规模:1000个随机选择的不完整Java代码片段
  • 选择原因:专门为LLMs代码相关任务设计,支持与ground truth的直接比较

评价指标

能效指标

  • 能耗:GPU能耗(kWh),由CodeCarbon计算
  • 执行时间:推理阶段持续时间(秒),不包括模型加载时间

准确性指标

  • 编辑距离:使用Levenshtein Distance计算与ground truth的相似度
  • 精确匹配:编辑距离≤2的情况视为精确匹配(考虑到LLM输出的随机字符)

对比方法

  • 基准方法:三种标准提示工程技术(zero-shot, one-shot, few-shots)
  • 增强方法:五种自定义标签配置

实现细节

  • 模型:Llama 3 8B-Instruct(量化版本)
  • 硬件:AMD Ryzen 7 5800X CPU + Nvidia RTX 4060 TI (8GB)
  • 操作系统:Xubuntu 23.04
  • 重复次数:每个测试重复5次,测试间隔10秒
  • 总执行时间:超过250小时

实验结果

主要结果

RQ1: 自定义标签对能效的影响

能耗结果显示显著改善:

  • Zero-shot:C2配置下从0.0000157 kWh减少到0.0000146 kWh(-7%)
  • One-shot:C2配置下从0.0000347 kWh减少到0.0000174 kWh(-99%)
  • Few-shots:C2配置下从0.0000537 kWh减少到0.0000293 kWh(-83%)

执行时间改善:

  • One-shot:从1.54秒减少到0.74秒(-52%)
  • Few-shots:从2.1秒减少到1.09秒(-48%)
  • Zero-shot:C1配置下从0.74秒减少到0.63秒(-14.8%)

RQ2: 自定义标签对准确性的影响

精确匹配改善:

  • Zero-shot:C1配置下从63提升到82(+23%)
  • One-shot和Few-shots:C3配置下约44%的改善

编辑距离减少:

  • Zero-shot:C2配置下24%改善
  • One-shot:C2配置下64%减少
  • Few-shots:C2配置下70%改善

关键发现

  1. C2配置最优:在提示中包含标签解释的配置在大多数情况下表现最佳
  2. C4配置问题:完全不使用系统角色定义导致模型生成不受控制的响应
  3. Few-shots稳健性:在缺乏明确角色定义时,few-shots技术受影响最小
  4. 能耗与准确性正相关:自定义标签同时改善了能效和准确性

统计显著性

通过5次重复实验和10秒间隔设置,确保了结果的统计可靠性,减少了测量偏差和异常值的影响。

相关工作

LLMs能耗评估研究

  1. 时间转移技术:Jagannadharao等研究了通过暂停和恢复训练来减少碳排放
  2. 模型比较:Liu和Yin比较了BERT、DistilBERT和T5模型的碳排放
  3. 硬件影响:Samsi等比较了不同Llama模型规模和GPU配置的能耗
  4. 代码生成效率:Cursaro等研究了CodeLlama生成代码与人工代码的能效比较

提示定制研究

  1. 特征影响:Fagadau等分析了8种提示特征对Copilot代码输出的影响
  2. 结构优化:Reynolds和McDonell探索了无示例策略的提示工程
  3. 变形测试:Li等使用变形测试研究提示修改
  4. 软提示:Wang等提出了使用虚拟标记的提示调优技术

结论与讨论

主要结论

  1. 能效改善:自定义标签可以显著减少LLMs在代码完成任务中的能耗
  2. 性能保持:能耗减少的同时,模型准确性得到提升
  3. 配置依赖:LLMs的能耗高度依赖于使用的提示工程技术
  4. 双重优化:提示工程可以同时优化能效和性能

局限性

  1. 数据集限制:仅测试了1000个代码片段,由于时间成本限制(每个片段约900秒)
  2. 单一任务:仅关注代码完成任务,其他任务可能需要不同的能源资源
  3. 单一模型:仅测试了Llama 3,结果的泛化性需要验证
  4. 硬件依赖:实验在特定硬件配置上进行,不同环境可能产生不同结果

未来方向

  1. 扩展研究:将研究扩展到更多LLMs和代码相关任务
  2. 高级技术:研究RAG或微调等高级技术对碳排放的影响
  3. 多任务评估:调查自定义提示在不同软件工程任务中的效果
  4. 标准化:建立LLM能耗测量的标准化方法论

深度评价

优点

方法创新性

  1. 首次系统性研究提示工程对LLM能耗的影响
  2. 设计了多维度的自定义标签配置方案
  3. 建立了能效与准确性的权衡分析框架

实验充分性

  1. 使用了标准化的CodeXGLUE基准测试
  2. 采用了隔离测试环境,确保测量准确性
  3. 多次重复实验,提高结果可靠性
  4. 提供完整的复现包

结果说服力

  1. 显著的能耗减少(最高99%)
  2. 准确性同步提升
  3. 详细的消融实验分析

不足

方法局限性

  1. 量化技术的使用可能影响结果的普适性
  2. 自定义标签设计相对简单,缺乏更复杂的语义结构
  3. 仅考虑了GPU能耗,忽略了CPU和内存的贡献

实验设置缺陷

  1. 样本规模受限(1000个片段)
  2. 单一编程语言(Java)
  3. 固定的few-shots示例数量(5个)
  4. 缺乏与其他节能技术的比较

分析不足

  1. 缺乏对不同代码复杂度的分析
  2. 未深入探讨标签机制的理论基础
  3. 对异常结果(如C4配置)的分析不够充分

影响力

学术贡献

  1. 开创了LLM绿色计算的新研究方向
  2. 建立了提示工程与能效优化的联系
  3. 为可持续AI发展提供了实用方法

实用价值

  1. 可直接应用于现有的代码生成系统
  2. 实现成本低,易于部署
  3. 在保持性能的同时显著降低能耗

可复现性: 提供了详细的实验设置和开源复现包,支持研究结果的验证和扩展。

适用场景

  1. 代码生成服务:在线代码补全和生成平台
  2. 开发环境集成:IDE中的智能代码助手
  3. 大规模部署:需要处理大量代码生成请求的企业系统
  4. 资源受限环境:边缘计算或移动设备上的代码生成应用
  5. 绿色计算倡议:关注环境影响的AI系统开发

参考文献

本文引用了42篇相关文献,涵盖了绿色软件工程、LLM能耗评估、提示工程等多个研究领域的重要工作,为研究提供了坚实的理论基础和对比参照。


总体评价:这是一项具有重要实用价值的研究,首次系统性地探索了提示工程对LLM能耗的影响。尽管存在一些局限性,但研究结果令人鼓舞,为可持续AI发展提供了新的思路和方法。该工作有望推动更多关于绿色AI和节能优化的研究。