Génération automatisée de code pour les tâches informatiques en YAML à l'aide de modèles de langage de grande envergure
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
Résumé
L'amélioration récente des capacités de génération de code grâce à l'utilisation de grands modèles de langage a principalement bénéficié aux langages de programmation généralistes. Les langages spécifiques à un domaine, tels que ceux utilisés pour l'automatisation informatique, ont reçu beaucoup moins d'attention, bien qu'ils impliquent de nombreux développeurs actifs et constituent un composant essentiel des plateformes cloud modernes. Ce travail se concentre sur la génération d'Ansible-YAML, un langage de balisage largement utilisé pour l'automatisation informatique. Nous présentons Ansible Wisdom, un outil de génération de code en Ansible-YAML à partir de langage naturel, visant à améliorer la productivité de l'automatisation informatique. Ansible Wisdom est un modèle basé sur des transformateurs, enrichi par l'entraînement avec un nouvel ensemble de données contenant des exemples d'Ansible-YAML. Nous développons également deux nouvelles métriques de performance spécifiques à YAML et Ansible pour capturer les caractéristiques propres à ce domaine. Les résultats montrent qu'Ansible Wisdom peut générer avec précision des scripts Ansible à partir de prompts en langage naturel, avec une performance comparable ou supérieure aux modèles de génération de code de pointe existants.
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.