Key points are not available for this paper at this time.
大型语言模型(LLMs)在代码生成方面取得了显著进展。除了单次代码生成,近期的工作进一步将单元测试和程序验证器集成到LLMs中,以迭代地优化生成的程序。然而,这些工作将生成的程序视为一个不可分割的实体,这对于LLMs在调试程序时来说是不够的,特别是当程序包含复杂的逻辑流和数据操作时。相比之下,当人类开发者调试程序时,他们通常会设置断点并选择性地检查运行时执行信息。执行流程和中间变量在调试过程中发挥着至关重要的作用,但在现有代码生成文献中被低估。在本研究中,我们介绍了大型语言模型调试器(LDB),这是一种新颖的调试框架,使LLMs能够利用运行时执行信息来优化其生成的程序。具体而言,LDB将程序分段为基本块,并在整个运行时执行过程中跟踪每个块后中间变量的值。这使LLMs能够专注于整体执行流程中的更简单代码单元,逐块验证它们相对于任务描述的正确性,并有效地识别任何潜在的错误。实验表明,LDB在HumanEval、MBPP和TransCoder基准测试中始终提高基线性能,提升幅度高达9.8%,在各种LLM选择中实现了代码调试的新最优性能。
Li 等人(周六)研究了这个问题。
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: