使用大型語言模型在 YAML 中自動生成資訊技術任務的程式碼
Automated Code generation for Information Technology Tasks in YAML through Large Language Models
May 2, 2023
作者: Saurabh Pujar, Luca Buratti, Xiaojie Guo, Nicolas Dupuis, Burn Lewis, Sahil Suneja, Atin Sood, Ganesh Nalawade, Matt Jones, Alessandro Morari, Ruchir Puri
cs.AI
摘要
最近由於使用大型語言模型而提升的程式碼生成能力主要受益於通用程式設計語言。領域特定語言,例如用於IT自動化的語言,儘管涉及眾多活躍開發人員並且是現代雲平台的重要組成部分,卻受到遠少於關注。本研究專注於生成Ansible-YAML,這是一種廣泛用於IT自動化的標記語言。我們提出Ansible Wisdom,一個自然語言轉換為Ansible-YAML程式碼的生成工具,旨在提高IT自動化生產力。Ansible Wisdom是一個基於Transformer的模型,通過使用包含Ansible-YAML的新數據集進行擴展訓練。我們還開發了兩個針對YAML和Ansible的新型性能指標,以捕捉該領域的特定特徵。結果顯示,Ansible Wisdom能夠準確地從自然語言提示中生成Ansible腳本,其性能與現有最先進的程式碼生成模型相當或更好。
English
The recent improvement in code generation capabilities due to the use of
large language models has mainly benefited general purpose programming
languages. Domain specific languages, such as the ones used for IT Automation,
have received far less attention, despite involving many active developers and
being an essential component of modern cloud platforms. This work focuses on
the generation of Ansible-YAML, a widely used markup language for IT
Automation. We present Ansible Wisdom, a natural-language to Ansible-YAML code
generation tool, aimed at improving IT automation productivity. Ansible Wisdom
is a transformer-based model, extended by training with a new dataset
containing Ansible-YAML. We also develop two novel performance metrics for YAML
and Ansible to capture the specific characteristics of this domain. Results
show that Ansible Wisdom can accurately generate Ansible script from natural
language prompts with performance comparable or better than existing state of
the art code generation models.