LLM2D
自然语言提纲编写代码:LLM时代的知识密集型编程
Natural Language Outlines for Code: Literate Programming in the LLM Era
作者: Kensen Shi, Deniz Alt{\i}nb\"uken, Saswat Anand, Mihai Christodorescu, Katja Gr\"unwedel, Alexa Koenings, Sai Naidu, Anurag Pathak, Marc Rasi, Fredde Ribeiro, Brandon Ruffin, Siddhant Sanyam, Maxim Tabachnyk, Sara Toth, Roy Tu, Tobias Welp, Pengcheng Yin, Manzil Zaheer, Satish Chandra, Charles Sutton
发布日期: 4/21/2025
arXiv ID: oai:arXiv.org:2408.04820v4

摘要

arXiv:2408.04820v4 宣告类型: replace-cross 摘要:我们提出使用自然语言大纲作为一种新型的模态和交互界面,以在整个软件开发过程中为开发者提供AI辅助。代码函数的自然语言大纲由多条简洁的叙述性语句组成,将代码分割并以文献式编程的风格总结其主要思想。关键之处在于,我们发现现代大型语言模型实际上可以生成准确且高质量的自然语言大纲。此外,自然语言大纲允诺代码与自然语言之间的双向同步,开发者可以更改代码或自然语言,而AI模型可以自动更新另一方。我们讨论了许多自然语言大纲的应用场景:它们可以加速代码和差异的理解与导航,简化代码维护,增强代码搜索,引导代码生成,等等。随后,我们提出了几种生成大纲的LLM提示技术,并将其进行比较,征求专业开发者的评价意见。最后,我们展示了将自然语言大纲应用于代码审查和恶意软件检测中的两个案例研究。