自然语言 IDE 代码生成:机遇与挑战
本研究对基于大型语言模型的对话 UI 进行了研究,目标是实现上下文感知的工具,该工具可以自动利用开发人员的编程上下文来回答问题。我们为用户提供了一个 IDE 插件,允许用户使用高级请求查询后端(例如 OpenAI 的 GPT-3.5 和 GPT-4),我们进行了 32 名参与者的探索性用户研究,研究确认这种方法比 Web 搜索更有效地帮助理解代码,但效果的差异因参与者的经验水平而异。
Jul, 2023
本文研究了利用大型语言模型进行自然语言生成的能力,并应用于编程课程中常见的两种学习资源的制作。研究发现,在创建编程练习时,只需要输入关键词,即可显著影响编程概念和上下文主题的内容,同时也证明了大多数自动生成的内容是全新且合理的。这些结果表明,使用大型生成机器学习模型作为教学工具是有重要价值的,但在交付给学生之前需要一些监督来确保生成的内容质量。文章还探讨了 OpenAI Codex 及类似工具对初学者编程教育的影响,并强调了可能改善教学体验的未来研究方向。
Jun, 2022
人工智能正在开发出可以用于程序编写的 AI 系统,生成代码的自然语言描述,语言模型在生成代码的过程中表现出了良好的性能,但它们的评估通常只在少数语言和部分层次上进行,还需要更好的培训数据。
Mar, 2023
研究调查了 8 个提示特征对生成代码的风格、内容、正确性、复杂性、大小和与开发人员代码的相似性的影响,并考虑了在使用 Copilot 生成 200 个 Java 方法的 124,800 个提示的任务结果表明,某些提示特征,如示例的存在和方法目的的总结,可以显著影响结果的质量。
Feb, 2024
该研究论文综述了自然语言处理技术的利用,重点关注使用大型代码训练的基于 Transformer 的大型语言模型在 AI 辅助编程任务领域中的应用。这些模型在包括代码生成、代码补全、代码翻译、代码概述、缺陷检测和克隆检测等 AI 辅助编程应用中扮演着关键角色,而其中值得注意的例子包括由 OpenAI 的 Codex 和 DeepMind AlphaCode 提供支持的 GitHub Copilot。本文概述了主要的大型语言模型及其在与 AI 辅助编程相关的下游任务中的应用,并探讨了在这些应用中结合 NLP 技术和软件自然性面临的挑战和机遇,同时讨论了将 AI 辅助编程能力拓展到苹果的 Xcode 移动软件开发环境中的问题和机会,以使开发人员能够获得更先进的编码辅助,并使软件开发流程更加高效。
Jul, 2023
我们研究了使用编程提示和文本提示对三种流行的 GPT 模型 (davinci、code-davinci-002 和 text-davinci-002) 在更广泛的任务选择 (例如 QA、情感、摘要) 中的表现,结果表明,在很少例外的情况下,编程提示并没有始终优于文本提示。同时,我们还展示了代码提示的样式对某些但不是所有任务的性能有很大的影响,并且微调文本指令可以提高代码提示的相对性能。
Apr, 2023
本文概述了自然语言处理与程序语言之间翻译意图的研究进展,重点介绍了自然语言语义分析和程序逻辑综合的技术、神经符号方法、架构、监督方法以及代码生成的框架,并分析了该领域存在的一些尚未解决的问题。
Apr, 2021
本研究构建了一个考核数据科学笔记本中 Pandas 数据分析框架的代码生成问题集 ARCADE,并开发了一个 Python 计算笔记本的代码语言模型 PaChiNCo,该模型可以通过少量提示生成更好的代码,提高了模型预测的多样性和可解释性。
Dec, 2022
本文提出了一个以生成扩展查询为基础的框架,利用强大的代码生成模型来提高代码检索任务。该方法优化了嵌入到潜空间的文档 - 代码对,利用生成的代码片段将文档查询扩展与目标代码片段匹配。该方法在 CodeSearchNet 数据集上实验,并取得了迄今为止最好的性能结果。
Dec, 2022
本文探讨采用无监督神经机器翻译生成源代码,如何应对编译和逻辑错误,通过实验发现置信度亮显和备选翻译等 UI 设计在增强软件工程师的使用体验方面起到了重要作用。
Apr, 2021