一句话:提出AACC,用增强代理式提交分类准确识别NPE修复补丁,F1提升至98.03%。
空指针异常(NPE)是软件崩溃和运行时错误的重要原因。现有NPE修复检测与分类方法常受无关噪声数据、上下文理解不足以及大规模不平衡数据处理效率低等限制。为此,作者提出增强代理式提交分类方法AACC,将提交补丁分类为NPE修复或非NPE修复。AACC利用代码结构和提交消息中的上下文信息,捕获代码修改的语义意图,包含四项关键改进:最佳示例选择、增强知识库、优先代理和迭代细化。最佳示例选择过滤高质量且上下文相关的提交;增强知识库融合上下文元数据、程序语义和缺陷修复模式;优先代理按相关性和影响排序提交;迭代细化让模型从反馈中纠正误分类,降低假阴性。在ChatGPT-4o上的评估表明,该方法优于现有先进方法,F1从72.07%提升至98.03%。
Null Pointer Exceptions (NPEs) are one of the leading causes of software crashes and runtime errors. Although existing methods attempt to detect and classify NPE fixes, they often fall short due to irrelevant or noisy data, a lack of contextual understanding, and inefficiency in processing large and imbalanced datasets. To overcome these challenges, we propose an approach, called Augmented Agentic Commit Classification (AACC for short), to accurately categorize commit patches as NPE fixes or non-NPE. AACC leverages the code structure and contextual insights from commit messages to capture the semantic intent behind code modifications. It features four key advancements: (1) Best example selection that filters high-quality, contextually relevant commits to ensure the model learns from contextual rich and accurate data; (2) an augmented knowledge base that enriches classification by combining contextual metadata, program semantics, and bug fix patterns; (3) a prioritise agent that ranks commits based on relevance and impact, optimizing resource allocation and boosting efficiency; and (4) an iterative refinement process that enables the model to learn from feedback to correct misclassifications, reducing false negative rates. Our evaluation results on ChatGPT-4o suggest that it outperforms the state-of-the-art approaches by improving the F1 score from 72.07% to 98.03%.
DOI 原文 ·
@inproceedings{paperbot9477,
title = {LLM-Based Identification of Null Pointer Exception Patches},
author = {Tahir Ullah and Waseem Akram and Fiza Khaliq and Hui Liu},
booktitle = {ASE},
year = {2025},
doi = {10.1109/ase63991.2025.00226}
}