前提条件与后置条件作为大语言模型代码生成的设计约束
论文信息
- 原文:查看原文
论文信息
- 作者:Luke Newcomb, Alexandra Newcomb, Omar Ochoa
- 原文:查看原文
摘要
大语言模型(LLMs)显著推动了自动化代码生成的发展,但当前方法在提示(prompting)过程中主要依赖自然语言描述。由于固有的歧义性和规格说明不足,这种方法在处理复杂的、类级别的软件生成任务时面临挑战。另一方面,很少有研究探讨形式化软件工程约束(例如作为契约式设计(Design-by-Contract)范式一部分的显式前提条件与后置条件)如何影响类级别的生成任务。本文通过结构化的评估填补了这一空白,评估了六个最先进的大语言模型从系统设计的类级别规格说明生成中等复杂度系统的完整软件实现。结果表明,在提示过程中加入显式的设计约束显著提升了初始生成的准确率(通过 pass@k 指标衡量),尤其在 Python 中表现明显,在 C++ 中也是如此。参数较少的模型受益尤为显著。这些发现表明,将结构化的软件工程约束与设计原则集成到基于大语言模型的代码生成工作流中,可提升自动化软件项目的准确性与可维护性。