论文

冗余生成抑制:让 LLM 更环保,一次一个词元

Babbling Suppression: Making LLMs Greener One Token at a Time

摘要

背景:大语言模型 (LLM) 越来越多地用于现代软件开发,通过人工智能助手帮助代码生成、代码完成和重构。虽然它们加速了开发工作流程,但它们通常会产生无关的输出,称为“胡言乱语”,这会产生额外的认知、经济和能源成本。目标:这项工作研究了基于 LLM 的代码生成中的混乱问题,并提出了一种实用的、与模型无关的方法来减少不必要的输出,而不影响解决方案的准确性。方法:我们引入了冗余生成抑制(BS),这是一种通过评估中间输出并在解决方案通过所有测试后终止生成来将测试执行集成到 LLM 生成过程中的方法。这可以防止生成过多的词元,同时不会影响模型的准确性。针对两个 Python 和两个 Java 基准测试进行了实证研究,针对四个 3-4B 参数模型和六个 6-7B 参数模型。结果:我们的研究结果表明,所有测试模型中都会出现 babbling,其中 Java 中的出现频率高于 Python。在容易出现问题的模型中,应用 BS 可以显着降低 Python 的能耗高达 65%,Java 的能耗降低高达 62%。在 40 个模型基准对中,有 29 个模型的平均能耗有所降低,其中 22 个案例的降低幅度超过 20%。生成的词元数减少了 35 对,而 BS 的 GPU 每个词元能量开销保持在 10% 以下的有 26 对,减少了 2 个,最高达到 24%,在大多数情况下产生了净节能。意义:BS 可以通过减少能源消耗和最大限度地减少开发人员的认知工作,使人工智能辅助编程更加高效和可持续。其与模型无关的设计可以轻松集成,具有广泛的适用性。