中文

自动化量子软件维护:易变性检测与根因分析

软件工程 2024-11-01 v1 人工智能

摘要

易变性测试(Flaky tests)是指在代码未更改的情况下,测试结果不一致地通过或失败的现象。由于其复杂性和概率性,这在软件工程中,尤其是量子软件工程中,是一个重大挑战,会导致隐藏问题和开发人员精力浪费。我们旨在创建一个自动化框架来检测量子软件中的易变性测试,并构建一个扩展的量子易变性测试数据集,以克服人工方法的局限性。基于先前对14个量子软件仓库的人工分析,我们扩展了数据集,并利用Transformer和余弦相似度实现了易变性测试的自动化检测。我们使用来自OpenAI GPT和Meta LLaMA系列的大语言模型(LLMs)进行了实验,以评估它们从代码和问题描述中检测和分类易变性测试的能力。嵌入Transformer被证明是有效的:我们识别出25个新的易变性测试,将数据集扩展了54%。顶尖的LLMs在易变性检测方面达到了0.8871的F1分数,但在根因识别方面仅为0.5839。我们引入了一个使用机器学习的自动化易变性测试检测框架,展示了有前景的结果,但也凸显了在大型量子代码库中改进根因检测和分类的必要性。未来的工作将侧重于改进检测技术并开发自动化的易变性测试修复方法。

关键词

引用

@article{arxiv.2410.23578,
  title  = {Automating Quantum Software Maintenance: Flakiness Detection and Root Cause Analysis},
  author = {Janakan Sivaloganathan and Ainaz Jamshidi and Andriy Miranskyy and Lei Zhang},
  journal= {arXiv preprint arXiv:2410.23578},
  year   = {2024}
}

备注

5 pages, 1 figure