CodeGen: 一个用于代码的开放式大语言模型,支持多轮程序综合
本文探索了大型语言模型在通用编程语言的程序合成方面的局限性,并在新的基准测试中评估了这些模型的性能。作者在两个基准测试(MBPP 和 MathQA-Python)上测试了这些模型,结果表明这些模型的性能随着其大小的增加而呈现对数线性关系。他们研究了这些模型进行对话以及语意建模的能力,并发现即使是最好的模型也无法完全预测某些程序的输出。
Aug, 2021
本文研究了利用基于语义分析和综合技术的后处理步骤来增强大型预训练语言模型,并通过使用 Python Pandas API 的多模态输入来合成代码。
Dec, 2021
本文研究了利用大型语言模型进行自然语言生成的能力,并应用于编程课程中常见的两种学习资源的制作。研究发现,在创建编程练习时,只需要输入关键词,即可显著影响编程概念和上下文主题的内容,同时也证明了大多数自动生成的内容是全新且合理的。这些结果表明,使用大型生成机器学习模型作为教学工具是有重要价值的,但在交付给学生之前需要一些监督来确保生成的内容质量。文章还探讨了 OpenAI Codex 及类似工具对初学者编程教育的影响,并强调了可能改善教学体验的未来研究方向。
Jun, 2022
通过对现有大型模型 (包括 Codex、GPT-J、GPT-Neo、GPT-NeoX-20B 和 CodeParrot) 的系统评估,我们填补了目前缺少大量模型和数据设计决策信息的空白,并提出了一个基于 GPT-2 架构的新模型 (PolyCoder)。我们发现虽然 Codex 本身并不是开源的,但现有的开源模型在某些编程语言上取得了接近的结果,并且在 C 编程语言中,PolyCoder 模型优于所有模型包括 Codex。
Feb, 2022
该研究探讨了大型语言模型在编程问题中的应用,发现最新技术如 InstructGPT 和 ChatGPT 在处理指令时表现优异,而早期使用变量名如 Codex 的模型的性能受描述问题时表浅的指标较大影响。
Jun, 2023
本文提出了新的基准测试,包括 MBXP,Multilingual HumanEval 和 MathQA-X,以测试多语言环境下代码生成模型的性能,并发现了多语言模型的优势,以及通过 few-shot prompting 实现对模型新语言的教学能力和在单语言环境下的 zero-shot translation 能力。同时,作者还利用其代码生成模型在多种语言上实现了大规模引导过程,产生了其他与代码相关的评估任务中使用的合成规范解决方案。
Oct, 2022
本文探讨了使用 Large Language Models 进行程序合成时,实现 Synthesize,Execute,Debug 方法的方法,包括替换或修复故障程序,以及不同基于模板和基于模型的提示生成技术,取得了比传统方法更好的表现。
Apr, 2023
利用对最近的大型语言模型进行了代码测试的详尽分析,本研究展示了这些模型的一系列有趣性质,并展示了如何改进大型语言模型的程序测试能力,通过利用生成的测试用例来提高合成程序的质量,相较于 GPT-3.5-turbo 和最新的最先进技术,我们的方法在 HumanEval + 上的代码通过率分别提高了 11.77% 和 4.22%。
Oct, 2023
通过在 Verilog 数据集上微调现有的 Large Language Models(LLMs),我们探索了使用 LLMs 自动生成高质量的 Verilog 代码的能力。微调后的开源 CodeGen-16B 模型在功能正确性上优于最先进的商业 GPT-3.5-turbo 模型,并在多样化和复杂的问题集中表现出竞争性能,尤其在某些场景下显示了对生成正确 Verilog 代码的潜力,突出了内部小型 LLMs 在硬件设计自动化方面的潜力。
Jul, 2023
该研究介绍了一种技术,它允许大型语言模型在解决编程任务时利用用户提供的代码,并且提出了一种逐步生成模块化子函数的方法,以帮助模型在初始生成的代码不足时进行未来的代码生成尝试。
Nov, 2023