LLM2D
RobuNFR:评估大型语言模型在非功能需求感知代码生成中的稳健性
RobuNFR: Evaluating the Robustness of Large Language Models on Non-Functional Requirements Aware Code Generation
发布日期: 4/4/2025
arXiv ID: oai:arXiv.org:2503.22851v2

摘要

arXiv:2503.22851v2 宣告类型:替换-交叉 摘要:在使用语言模型(LLMs)处理非功能性需求(NFRs)时,开发人员的行为可能会有所不同(例如,以不同的措辞表达相同的NFR)。稳健的LLMs应该在这些变化中输出一致的结果;然而,这一方面尚未得到充分探索。我们提出了RobuNFR,用于在代码生成中评估LLMs在NFR意识下的鲁棒性,涵盖四个NFR维度:设计、可读性、可靠性和性能,使用三种方法:提示变化、回归测试和多样化的流程。我们的实验表明,RobuNFR揭示了在考虑代码生成中的NFR时测试中的LLMs中的鲁棒性问题。具体而言,在提示变化的情况下,包括NFR会导致Pass@1的下降最多达39%,而标准差从0.48增加到2.48,相比之下,基础模型中没有NFR(即功能仅限)的情况下。虽然整合NFR通常会提高总体的NFR指标,但也导致了更高的提示敏感性。在回归设置中,一些LLMs在不同版本之间表现出差异,一种方面的改进(例如,减少代码异味)常常伴随另一种方面的退步(例如,降低正确性),揭示了不一致性,挑战了它们的鲁棒性。在改变流程时,测试中的LLMs在两种流程之间显示出了显著不同的NFR意识的代码生成能力:(1)将NFRs与功能需求整合到初始提示中;(2)使用相同的NFR增强功能仅限生成的代码。