Delulu: A Verified Multi-Lingual Benchmark for Code Hallucination Detection in Fill-in-the-Middle Tasks
作者: Mahdi Erfanian, Nelson Daniel Troncoso, Aashna Garg, Amabel Gale, Xiaoyu Liu, Pareesa Ameneh Golnari, Shengyu Fu
分类: cs.LG
发布日期: 2026-05-07
🔗 代码/项目: GITHUB
💡 一句话要点
Delulu:经验证的多语言代码幻觉检测基准,用于中间填充任务
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 代码生成 大语言模型 幻觉检测 中间填充 基准测试
📋 核心要点
- 代码生成大模型在中间填充任务中易产生幻觉,即表面合理但运行时会出错的代码补全,影响代码质量。
- 提出Delulu基准,通过对抗性生成、多模型评判、Docker验证和人工审查,构建高质量、多语言的幻觉检测数据集。
- 实验表明现有开源模型在Delulu上表现不佳,证实了该基准的难度,并揭示了代码幻觉问题的普遍性。
📝 摘要(中文)
大型语言模型在代码生成中,特别是在中间填充(FIM)任务中,经常产生幻觉——看似合理但错误的补全,例如虚构的API方法、无效的参数、未定义的变量或不存在的导入。这些错误通过了初步审查,却引入了运行时错误。我们推出了Delulu,一个经验证的多语言基准,包含7种语言和4种幻觉类型的1,951个FIM样本。样本通过对抗性流程进行筛选:前沿LLM生成看似合理的幻觉,四个不同的评判模型评估它们,基于嵌入的聚类挖掘渐进式困难的例子,自包含的Docker容器验证黄金补全可以编译,而幻觉变体产生预期的运行时错误,最后由人类专家审查删除任何剩余的偏见或容易判定的样本。我们评估了来自五个系列的11个开源FIM模型,参数范围为0.5B-32B:包括一个六点的Qwen2.5-Coder缩放序列,以及一个跨系列序列(CodeLlama、DeepSeek-Coder-V2、StarCoder2)。最强的模型仅达到84.5%的pass@1,没有一个系列超过0.77的编辑相似度,并且每个系列都在相当一部分样本上产生与幻觉对齐的补全,证实了Delulu所暴露的难度是任务内在的,而不是特定于系列的。我们在https://github.com/microsoft/delulu发布了基准、容器和评估框架。
🔬 方法详解
问题定义:论文旨在解决代码生成大模型在中间填充(Fill-in-the-Middle, FIM)任务中产生的代码幻觉问题。现有方法难以有效检测这些幻觉,因为它们通常在语法上是正确的,但语义上是错误的,导致运行时错误。这些幻觉难以被发现,严重影响了代码质量和开发效率。
核心思路:论文的核心思路是通过构建一个高质量的、经验证的多语言基准数据集Delulu,来系统地评估和提高代码生成模型检测和避免幻觉的能力。该基准的设计侧重于生成难以区分的幻觉,并通过自动和人工验证确保其真实性和难度。
技术框架:Delulu的构建流程包含以下几个主要阶段:1) 幻觉生成:使用前沿的LLM生成看似合理的幻觉代码补全。2) 多模型评判:使用多个不同的评判模型对生成的幻觉进行评估,筛选出难以区分的样本。3) 嵌入聚类挖掘:利用嵌入向量聚类技术挖掘更具挑战性的幻觉样本。4) Docker容器验证:使用自包含的Docker容器验证生成的代码,确保黄金补全能够编译通过,而幻觉变体产生预期的运行时错误。5) 人工专家审查:最后由人类专家对样本进行审查,移除任何剩余的偏见或容易判定的样本。
关键创新:Delulu的关键创新在于其构建流程的严谨性和全面性。通过对抗性生成、多模型评判、Docker容器验证和人工专家审查相结合,Delulu能够有效地筛选出高质量的、难以区分的幻觉样本,从而为代码幻觉检测提供了一个可靠的评估基准。此外,Delulu的多语言支持使其能够评估模型在不同编程语言下的幻觉生成能力。
关键设计:Delulu的关键设计包括:1) 对抗性生成策略,旨在生成难以区分的幻觉。2) 多样化的评判模型,确保幻觉的真实性。3) Docker容器验证,提供自动化和可靠的错误验证机制。4) 人工专家审查,消除潜在的偏见和简单案例。此外,Delulu还包含了7种编程语言和4种幻觉类型,使其能够全面评估模型的幻觉生成能力。
🖼️ 关键图片
📊 实验亮点
实验结果表明,即使是最强的模型在Delulu基准上的表现也远未达到完美,最强模型仅达到84.5%的pass@1,且没有模型系列超过0.77的编辑相似度。这表明现有代码生成模型在幻觉检测方面仍存在显著不足,证实了Delulu基准的难度和价值。实验还发现,不同模型的幻觉生成模式存在差异,提示未来的研究方向。
🎯 应用场景
Delulu基准的潜在应用领域包括:代码生成模型的评估与改进、代码自动补全工具的增强、以及软件开发过程中的错误检测与预防。该研究的实际价值在于提高代码生成模型的可靠性,减少运行时错误,从而提升开发效率。未来影响在于推动代码生成技术的发展,并最终实现更智能、更可靠的软件开发流程。
📄 摘要(原文)
Large Language Models for code generation frequently produce hallucinations in Fill-in-the-Middle (FIM) tasks -- plausible but incorrect completions such as invented API methods, invalid parameters, undefined variables, or non-existent imports. These failures pass superficial review yet introduce runtime errors. We introduce Delulu, a verified multi-lingual benchmark of 1,951 FIM samples across 7 languages and 4 hallucination types. Samples are curated through an adversarial pipeline: a frontier LLM generates plausible hallucinations, four diverse judge models evaluate them, embedding-based clustering mines progressively harder examples, self-contained Docker containers verify that golden completions compile while hallucinated variants produce the expected runtime error, and a final human-expert review removes any remaining biased or trivially decidable samples. We evaluate 11 open-weight FIM models from five families spanning 0.5B-32B parameters: a six-point Qwen2.5-Coder scaling slate, plus a cross-family slate (CodeLlama, DeepSeek-Coder-V2, StarCoder2). The strongest model reaches only 84.5% pass@1, no family exceeds 0.77 Edit Similarity, and every family produces hallucination-aligned completions on a non-trivial share of samples, confirming that the difficulty exposed by Delulu is task-intrinsic rather than family-specific. We release the benchmark, containers, and evaluation framework at https://github.com/microsoft/delulu.