Automatisierte Codegenerierung für Informationstechnologie-Aufgaben in YAML mittels großer Sprachmodelle
Automated Code generation for Information Technology Tasks in YAML through Large Language Models
May 2, 2023
Autoren: Saurabh Pujar, Luca Buratti, Xiaojie Guo, Nicolas Dupuis, Burn Lewis, Sahil Suneja, Atin Sood, Ganesh Nalawade, Matt Jones, Alessandro Morari, Ruchir Puri
cs.AI
Zusammenfassung
Die jüngsten Fortschritte in den Fähigkeiten zur Codegenerierung durch den Einsatz großer Sprachmodelle haben hauptsächlich allgemeine Programmiersprachen begünstigt. Domänenspezifische Sprachen, wie sie beispielsweise in der IT-Automatisierung verwendet werden, haben hingegen weit weniger Beachtung gefunden, obwohl sie viele aktive Entwickler umfassen und ein wesentlicher Bestandteil moderner Cloud-Plattformen sind. Diese Arbeit konzentriert sich auf die Generierung von Ansible-YAML, einer weit verbreiteten Auszeichnungssprache für die IT-Automatisierung. Wir stellen Ansible Wisdom vor, ein Tool zur Generierung von Ansible-YAML-Code aus natürlicher Sprache, das darauf abzielt, die Produktivität in der IT-Automatisierung zu steigern. Ansible Wisdom basiert auf einem Transformer-Modell, das durch das Training mit einem neuen Datensatz, der Ansible-YAML enthält, erweitert wurde. Zudem entwickeln wir zwei neuartige Leistungsmetriken für YAML und Ansible, um die spezifischen Charakteristika dieses Bereichs zu erfassen. Die Ergebnisse zeigen, dass Ansible Wisdom präzise Ansible-Skripte aus natürlichen Sprachbefehlen generieren kann, wobei die Leistung vergleichbar oder besser ist als bei bestehenden state-of-the-art Modellen zur Codegenerierung.
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.