利用大型语言模型进行科学计算中的代码翻译和软件开发
AlphaCode是一个针对竞争性编程问题的系统,通过三个关键组件(专业数据集、高效转换架构和大规模模型采样)实现针对较深层次的推理并在Codeforces上实现了良好和可靠的表现。
Feb, 2022
本文研究了利用大型语言模型进行自然语言生成的能力,并应用于编程课程中常见的两种学习资源的制作。研究发现,在创建编程练习时,只需要输入关键词,即可显著影响编程概念和上下文主题的内容,同时也证明了大多数自动生成的内容是全新且合理的。这些结果表明,使用大型生成机器学习模型作为教学工具是有重要价值的,但在交付给学生之前需要一些监督来确保生成的内容质量。文章还探讨了OpenAI Codex及类似工具对初学者编程教育的影响,并强调了可能改善教学体验的未来研究方向。
Jun, 2022
本文介绍了一种基于大型语言模型和AI技术的代码编写工具CodeCompose,并讨论了它在工业规模部署中的挑战和测量数据。CodeCompose不仅能够辅助编写代码,还能够提高代码质量和产生其他积极影响。
May, 2023
本文通过使用AI辅助生成能力和GitHub Copilot生成的不同语言(C++,Fortran,Python和Julia)的高性能计算的基本数值内核代码,提出了一种衡量模型和编程模型之间关系的“熟练度度量标准”,研究结果显示OpenAI Codex的输出与编程模型的使用和发展成熟度相关。
Jun, 2023
本研究提出了一个新的机器学习模型训练数据集,用于翻译OpenMP Fortran和C++代码,使用代码相似性测试进行数据集的初步筛选,该数据集可以显著提高大规模语言模型的翻译能力,并突出了该数据集在高性能计算代码翻译领域推动的潜力。
Jul, 2023
通过引入强化学习的方法,将代码LMM的输出与性能对齐,提高生成代码的期望加速比,并在一组基准任务中展示了0.9至1.6倍的串行代码速度提升和1.9至4.5倍的OpenMP代码速度提升。
Apr, 2024
通过评估ChatGPT 3.5和4版本在生成各种编程语言代码方面的能力,验证了这些AI模型用于生成科学程序的效力。通过要求ChatGPT生成三个不同的代码:简单的数值积分、共轭梯度求解器和并行一维模板热方程求解器来达到我们的目标。我们的分析重点是代码的编译、运行时性能和准确性。虽然ChatGPT的两个版本都成功创建了可以编译和运行的代码(在某种程度上需要帮助),但AI在使用某些语言时会更容易(可能是由于使用的训练数据集的规模)。甚至对于我们选择的这个简单示例来说,平行代码也很难由AI正确生成。
May, 2024
本研究解决了当前大型语言模型在编写代码时缺乏最佳引导方法的问题,提出了三种方法改进代码与文本生成的引导。关键发现表明,模型在不同任务复杂度和规模下使用代码和文本推理的模式值得关注,且使用模型编写的代码并不总是优于文本推理。此研究为未来的研究方向提供了重要启示和改进空间。
Oct, 2024
本研究解决了编程语言及其高性能计算(HPC)扩展之间翻译的不足,尤其是复杂的并行语义问题。提出的CodeRosetta模型专门设计用于此类翻译,并通过定制的学习框架和训练目标,成功提高了C++到CUDA及Fortran到C++的翻译精度和效率,显示出显著的性能改进。该工作为并行编程的代码翻译提供了新的方向,标志着在复杂任务中的首次成功应用。
Oct, 2024