Le projet open source Project Wisdom a pour but de faciliter l’utilisation de la plateforme Ansible dédiée à l’automatisation en lui apportant des capacités d’écriture automatique de code et de compréhension du langage naturel.
Au travers d’un nouveau projet communautaire dénommé Wisdom, les chercheurs de Big Blue et de Red Hat veulent doter la plateforme Ansible de capacités d’IA, en particulier pour permettre aux développeurs d’infrastructure as code d’être plus productifs mais aussi permettre – pourquoi pas – à la plateforme d’être pilotée à la voix.
Pour rappel, Ansible est un outil open source utilisé pour automatiser la plupart des tâches de configuration et d’administration des systèmes d’information. Véritable plateforme ouvert d’automatisation, elle permet d’industrialiser le provisionnement de ressources, les configurations de serveurs, le déploiement d’applications, l’orchestration de processus, l’installation de mises à jour…. L’exploitation de cette plateforme passe par la création de scripts, baptisés dans ce contexte Playbooks, chargés d’exécuter des instructions habituellement effectuées manuellement. Ces scripts sont écrits avec le langage YAML. Lors de leur exécution, Ansible se connecte au système cible à travers du SSH et lance ces playbooks sans nécessiter le déploiement préalable d’agents.
Pour les équipes Ops, la transformation des architectures « on prem » vers de l’hybride se traduit par une complexité accrue de leur quotidien et nécessite des compétences nouvelles notamment dans le domaine du cloud. Fort de ce constat, les promoteurs du projet Wisdom veulent enrichir l’univers Ansible avec des IA pour simplifier la prise en main d’Ansible par les débutants, accélérer le travail parfois très répétitif et mécanique d’écriture des scripts et même enrichir l’environnement de capacité de traitement du langage naturel (Natural Language Processing). Concrètement, l’utilisateur pourra effectuer ses commandes à la voix, en anglais en lieu et place d’écrire des scripts avec le langage YAML.
Le projet repose notamment sur les modèles IA dérivés des initiatives AI for Code d’IBM. Il s’inscrit dans une nouvelle tendance apparue ces derniers mois : utilisé l’IA pour générer automatiquement du code source et servir de copilote dans un pur esprit de « pair programming » (programmation à deux). L’IA génère l’essentiel du code, le développeur améliorant ou ajustant le code généré pour lui en fonction de ses intentions. Ces modèles IA permettent de combler le fossé entre la pensée humaine exprimée en langage naturelle et le l’écriture du code qui concrétise ce que l’on veut faire.
L’équipe à l’origine du projet poursuit différentes pistes autour de la génération de contenu (conversion de la langue naturelle en code YAML), de la découverte de contenu (pour indiquer à l’utilisateur si le Playbook qu’il est en train de concevoir est similaire à un autre déjà existant), de l’explication de contenu (compréhension du code et explication des effets en résultant), et de l’optimisation de contenu (suggestions d’amélioration et de bonnes pratiques). « Nous vivons une époque fascinante, où nous continuons de faire progresser la manière dont l’IA et les technologies de cloud hybride d’aujourd’hui construisent les ordinateurs et les systèmes de demain », s’enthousiasme Ruchir Puri, chief scientist chez IBM Research; IBM Fellow; VP de la IBM Technical Community.
Project Wisdom se présente pour l’instant sous la forme d’un complément à l’extension Ansible pour Visual Studio Code.
Le but n’est pas seulement de faciliter l’utilisation de la plateforme mais de masquer une partie de la complexité inhérente aux architectures hybrides en interprétant ces commandes vocales et en construisant les workflow d’automatisation ad hoc. Outre les équipes Ops, l’outil pourrait à terme être utilisé par les développeurs ne disposant des connaissances nécessaires pour la mise en production de leurs applications dans une approche DevOps confiant de plus en plus de Ops aux Devs.
Pour Chris Wright, CTO and SVP of Global Engineering chez Red Hat, « ce projet illustre comment l’intelligence artificielle a le pouvoir de modifier fondamentalement la façon dont les entreprises innovent, en accordant des capacités généralement réservées aux équipes opérationnelles à d’autres services. Grâce à des solutions intelligentes, les entreprises peuvent diminuer les obstacles à la participation, combler les lacunes croissantes en matière de compétences et éliminer les cloisonnements à l’échelle de l’entreprise pour repenser les manières de travailler dans le monde de l’entreprise. »