Abstract
Automatic programming has seen increasing popularity due to the emergence of tools like GitHub Copilot which rely on Large Language Models (LLMs). At the same time, automatically generated code faces challenges during deployment due to concerns around quality and trust. In this article, we study automated coding in a general sense and study the concerns around code quality, security and related issues of programmer responsibility. These are key issues for organizations while deciding on the usage of automatically generated code. We discuss how advances in software engineering such as program repair and analysis can enable automatic programming. We conclude with a forward looking view, focusing on the programming environment of the near future, where programmers may need to switch to different roles to fully utilize the power of automatic programming. Automated repair of automatically generated programs from LLMs, can help produce higher assurance code from LLMs, along with evidence of assurance
Abstract (translated)
自动编程由于诸如GitHub Copilot这样的工具而日益受到欢迎,这些工具依赖于大型语言模型(LLMs)。与此同时,自动生成的代码在部署过程中面临挑战,原因是担忧代码质量和可信度。在本文中,我们研究了自动编程的通用概念,并研究了编程者责任方面的担忧。这些是企业在决定使用自动生成的代码时需要关注的关键问题。我们讨论了软件工程方面的进步,如程序修复和分析,如何实现自动编程。我们最后从未来的编程环境出发,关注程序员需要切换到不同角色来充分利用自动编程的力量。自动从LLMs生成的程序的修复可以帮助生成更高保证代码,并附带保证的证据。
URL
https://arxiv.org/abs/2405.02213