中文

基于大语言模型以 YAML 生成信息技术任务的自动化代码

软件工程 2023-05-24 v4 人工智能 计算与语言 编程语言

摘要

由于大语言模型的使用,代码生成能力近期的提升主要惠及通用编程语言。领域特定语言(如用于 IT 自动化的语言)虽涉及众多活跃开发者且是现代云平台的关键组成部分,却甚少受到关注。本工作聚焦于生成 Ansible-YAML(一种广泛使用的 IT 自动化标记语言)。我们提出 Ansible Wisdom,一种从自然语言到 Ansible-YAML 的代码生成工具,旨在提升 IT 自动化生产力。Ansible Wisdom 是一个基于 transformer 的模型,通过使用包含 Ansible-YAML 的新数据集训练得到扩展。我们还针对 YAML 和 Ansible 开发了两种新颖的性能度量以捕捉该领域的特定特征。结果表明,Ansible Wisdom 能从自然语言提示准确生成 Ansible 脚本,性能可与现有 SOTA 代码生成模型媲美或更优。在少样本设置下,我们评估了使用 Ansible、YAML 数据训练的影响,并与包括 Codex-Davinci-002 在内的不同基线进行比较。我们还表明,经过微调后,我们特定的 Ansible 模型(BLEU:66.67)可优于大得多的 Codex-Davinci-002(BLEU:50.4)模型,后者在少样本设置下评估。

关键词

引用

@article{arxiv.2305.02783,
  title  = {Automated Code generation for Information Technology Tasks in YAML through Large Language Models},
  author = {Saurabh Pujar and Luca Buratti and Xiaojie Guo and Nicolas Dupuis and Burn Lewis and Sahil Suneja and Atin Sood and Ganesh Nalawade and Matthew Jones and Alessandro Morari and Ruchir Puri},
  journal= {arXiv preprint arXiv:2305.02783},
  year   = {2023}
}