Requirements are All You Need: From Requirements to Code with LLMs

2024年06月14日
  • 简介
    软件需求文档中广泛使用文本格式,为应用大型语言模型(LLMs)于软件工程任务提供了巨大机会。高质量的软件需求不仅增强了手动软件开发过程,也使组织能够充分利用新兴的LLMs技术的潜力。本文介绍了一种专门针对自动化生成代码片段的LLM,该代码片段来自结构良好的需求文档。该LLM通过与软件开发流程、需求分析、面向对象设计和测试驱动开发相关的知识、启发式和指令进行增强,有效地模拟了经验丰富的软件工程师的专业知识。我们引入了一种“渐进提示”方法,使软件工程师可以逐步地与该LLM进行交互。通过这种方法,LLM通过解释所提供的需求来逐步解决软件开发任务,提取功能需求,使用这些需求创建面向对象模型,然后根据面向对象设计生成单元测试和代码。我们通过一个以Web项目开发为重点的案例研究展示了LLM在理解复杂的用户需求和生成健壮的设计和代码解决方案方面的熟练程度。这项研究强调了将LLMs集成到软件开发工作流程中以显著提高效率和质量的潜力。该专门定制的LLM可在https://chat.openai.com/g/g-bahoiKzkB-software-engineer-gpt上获得。
  • 图表
  • 解决问题
    本论文旨在利用大型语言模型(LLMs)自动生成代码片段,从而提高软件开发效率和质量。同时也探索了在软件开发流程中整合LLMs的潜力。
  • 关键思路
    论文中提出了一种定制的LLM,通过“渐进提示”方法逐步解决软件开发任务。该方法包括从需求文档中提取功能需求、创建面向对象模型、生成单元测试和代码等步骤,从而模拟经验丰富的软件工程师的专业知识。
  • 其它亮点
    论文通过案例研究展示了LLM在理解复杂用户需求和生成强健设计和代码解决方案方面的能力。同时,作者提供了一个开源的定制LLM供其他研究者使用。
  • 相关研究
    最近的相关研究包括利用LLMs进行自然语言处理和代码生成的研究,如CodeBERT、GPT-Code等。
PDF
原文
点赞 收藏 评论 分享到Link

沙发等你来抢

去评论