Automatische codegeneratie voor IT-taken in YAML met behulp van grote taalmodellen
Automated Code generation for Information Technology Tasks in YAML through Large Language Models
May 2, 2023
Auteurs: Saurabh Pujar, Luca Buratti, Xiaojie Guo, Nicolas Dupuis, Burn Lewis, Sahil Suneja, Atin Sood, Ganesh Nalawade, Matt Jones, Alessandro Morari, Ruchir Puri
cs.AI
Samenvatting
De recente verbetering in codegeneratiecapaciteiten door het gebruik van grote taalmodellen heeft vooral voordelen opgeleverd voor algemene programmeertalen. Domeinspecifieke talen, zoals die worden gebruikt voor IT-automatisering, hebben veel minder aandacht gekregen, ondanks het feit dat ze door veel actieve ontwikkelaars worden gebruikt en een essentieel onderdeel vormen van moderne cloudplatforms. Dit werk richt zich op de generatie van Ansible-YAML, een veelgebruikte opmaaktaal voor IT-automatisering. We presenteren Ansible Wisdom, een tool voor het genereren van Ansible-YAML-code vanuit natuurlijke taal, gericht op het verbeteren van de productiviteit van IT-automatisering. Ansible Wisdom is een transformer-gebaseerd model, uitgebreid door training met een nieuwe dataset die Ansible-YAML bevat. We ontwikkelen ook twee nieuwe prestatiemetrices voor YAML en Ansible om de specifieke kenmerken van dit domein vast te leggen. De resultaten tonen aan dat Ansible Wisdom nauwkeurig Ansible-scripts kan genereren vanuit prompts in natuurlijke taal, met prestaties die vergelijkbaar of beter zijn dan bestaande state-of-the-art codegeneratiemodellen.
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.