3 个月前

像人类一样调试:通过逐步验证运行时执行过程的大型语言模型调试器

像人类一样调试:通过逐步验证运行时执行过程的大型语言模型调试器

摘要

大型语言模型(LLMs)在代码生成领域正推动显著进展。除了传统的单次代码生成之外,近期研究进一步将单元测试与程序验证器融入LLM,实现对生成代码的迭代优化。然而,这些方法将生成的程序视为一个不可分割的整体,导致LLM在调试复杂逻辑流程和数据操作的程序时能力受限。相比之下,人类开发者在调试程序时通常会设置断点,有选择性地检查运行时的执行信息。执行流程以及中间变量在调试过程中起着关键作用,但在现有代码生成研究中仍被严重忽视。在本研究中,我们提出了大型语言模型调试框架(Large Language Model Debugger, LDB),该框架使LLM能够利用运行时执行信息对生成的程序进行有效修正。具体而言,LDB将程序划分为基本块(basic blocks),并在运行时持续追踪每个基本块执行后中间变量的取值。这一机制使LLM能够聚焦于整体执行流程中的简化代码单元,逐块验证其正确性是否符合任务描述,从而高效定位潜在错误。实验结果表明,LDB在HumanEval、MBPP和TransCoder等多个基准测试上,相较于基线方法性能提升最高达9.8%,在不同LLM选型下均实现了代码调试任务的新SOTA(State-of-the-Art)表现。

代码仓库

floridsleeves/llmdebugger
官方
GitHub 中提及

基准测试

基准方法指标
code-generation-on-humanevalLLMDebugger (GPT 4o)
Pass@1: 98.2
code-generation-on-humanevalLLMDebugger (OpenAI o1)
Pass@1: 99.4

用 AI 构建 AI

从想法到上线——通过免费 AI 协同编程、开箱即用的环境和市场最优价格的 GPU 加速您的 AI 开发

AI 协同编程
即用型 GPU
最优价格
立即开始

Hyper Newsletters

订阅我们的最新资讯
我们会在北京时间 每周一的上午九点 向您的邮箱投递本周内的最新更新
邮件发送服务由 MailChimp 提供
像人类一样调试:通过逐步验证运行时执行过程的大型语言模型调试器 | 论文 | HyperAI超神经