[论文解读] CigaR: Cost-efficient Program Repair with LLMs
CigaR 是一个基于 LLM 的程序修复工具,在修复错误时尽量降低令牌成本;它实现了 62% 的令牌成本降低,并在 Defects4J 上修复了 267 个错误中的 69 个(正确补丁占比 25.8%),优于此前基于 GPT 的 APR 工具。
Large language models (LLM) have proven to be effective at automated program repair (APR). However, using LLMs can be costly, with companies invoicing users by the number of tokens. In this paper, we propose CigaR, the first LLM-based APR tool that focuses on minimizing the repair cost. CigaR works in two major steps: generating a first plausible patch and multiplying plausible patches. CigaR optimizes the prompts and the prompt setting to maximize the information given to LLMs using the smallest possible number of tokens. Our experiments on 429 bugs from the widely used Defects4J and HumanEval-Java datasets shows that CigaR reduces the token cost by 73%. On average, CigaR spends 127k tokens per bug while the baseline uses 467k tokens per bug. On the subset of bugs that are fixed by both, CigaR spends 20k per bug while the baseline uses 608k tokens, a cost saving of 96%. Our extensive experiments show that CigaR is a cost-effective LLM-based program repair tool that uses a low number of tokens to automatically generate patches.
研究动机与目标
- 推动降低基于 LLM 的自动化程序修复(APR)的财务成本和环境成本。
- 开发一个 APR 系统,在尽量减少令牌使用的同时保持或提升补丁质量。
- 设计并协调提示策略,以在每个令牌中最大化信息利用,并高效地探索多样的补丁。
- 在标准基准Defects4J上评估 CigaR,与最先进的基于 GPT 的 APR 工具进行比较。
提出的方法
- 三个提示协同工作:一个用于生成初始补丁的起始提示,一个用于改进部分补丁的改进提示,以及一个用于生成多样化且合理补丁的乘法提示。
- 通过对先前响应的总结进行迭代提示,以在不产生过多令牌使用的情况下构建有信息量的上下文。
- 补丁乘法以生成多样且合理的补丁,从而减少冗余探索。
- 高温度、重启式探索以探索搜索空间的不同区域。
- 对提示、响应和测试结果进行缓存,以实现可重复性和成本追踪。
- 实现使用 Python 与 GPT-3.5-turbo-0301,采样温度为 1,且为令牌成本感知的工作流。

实验结果
研究问题
- RQ1相比于最先进的基于 GPT 的 APR 工具,CigaR 在生成合理且正确补丁方面的效果如何?
- RQ2相对于基线,CigaR 在解决 Defects4J 错误时的令牌成本效率如何?
- RQ3重启与补丁乘法如何有助于探索补丁搜索空间并增加补丁的多样性?
主要发现
- CigaR 修复了 267 个错误中的 69 个(25.8% 与 AST 完整匹配),在多轮后产生 185/267 个合理补丁(69.2%)。
- 与 ChatRepair 相比,CigaR 的令牌成本平均降低 62%(每个错误 171K vs. 451K 令牌)。
- 在两工具都修复的错误上,CigaR 节省了 97% 的令牌成本(平均 20K vs. 695K 令牌)。
- CigaR 实现了更高的合理性和补丁多样性,研究集里有 24 个错误仅由 CigaR 修复,另有 45 个错误被任一工具修复。
- 补丁探索策略(重启和乘法)产生越来越多的不同补丁,显示出对搜索空间的有效探索。

更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。