DevOps et IA générative : relation fusionnelle ou antagoniste ?

A chaque révolution annoncée ou lors de chaque point de transformation dans le développement, le monde s’empresse de dire que cela va remplacer les développeurs, ingénieurs et équipes DevOps. Il en a été de même avec l’arrivée des ChatGPT, Google Bard et autres IA génératives. Si ce n'est certainement pas le cas, cela va néanmoins changer la façon de faire les choses pour les équipes tech.

A chaque révolution annoncée ou lors de chaque point de transformation dans le développement, le monde s’empresse de dire que cela va remplacer les développeurs, ingénieurs et équipes DevOps. Il en a été de même avec l’arrivée des ChatGPT, Google Bard et autres IA génératives. Si ce n'est certainement pas le cas, cela va néanmoins changer la façon de faire les choses pour les équipes tech.


Qu’est-ce qu’une IA générative ?

SI les systèmes d'IA étaient précédemment destinés à l'analyse de données et à la prise de décision basée sur les données, comme l'analyse prédictive, le machine learning, voire la business intelligence, les systèmes plus récent, dits génératifs, vont plus loin en produisant in fine du contenu : texte, images, vidéos et même lignes de code.

Vous pouvez ainsi demander à Midjourney de s'inspirer d'un artiste célèbre, en écrivant simplement son nom dans votre prompt. Par exemple : "Claude Monet style" ou "in the style of Monet" et obtenir une image exclusive dans le style de Claude Monet et inspirée de l’ensemble de son œuvre picturale.

Pour les experts comme Yann Le Cunn, spécialiste IA du groupe Meta, l’IA générative tient plus de l’évolution que de la révolution, en ne faisant finalement que rassembler et démocratiser des technologies existantes comme les LLM. Pour les entreprises et les utilisateurs de l’IA, le génératif et sa démocratisation constituent a contrario un véritable bouleversement. L’IA générative est pour les entreprises un potentiel levier d’amélioration de leur productivité. Mais ce peut être aussi l’opportunité pour ces entreprises de valoriser un patrimoine largement sous-exploité à ce jour mais néanmoins constitué et stocké : leurs données non structurées (texte, image, son, vidéo, code).


IA générative de code ?

Si ChatGPT, Dall-e et Midjourney ont permis de démocratiser ces notions et d’attirer l’attention du plus grand monde sous forme de texte et d’images via les secteurs des médias, du journalisme ou de la finance, l'IA générative a également progressé dans le monde de l’IT, sous forme de code cette fois.

Voici les cas d’usages principaux de l’IA générative côté IT :

Automatisation des processus

L'IA générative peut apprendre ce qu'implique un processus ou un flux de travail typique et automatiser de nombreuses tâches répétitives. Voire être en mesure de résoudre ces problèmes avec une intervention humaine minimale.

Evaluation et gestion des risques

L’IA peut analyser et trouver des modèles dans d'énormes volumes de données, puis utiliser ces données pour identifier les risques tels que les vulnérabilités de sécurité et les défaillances imminentes du système. Alors que l'IA prédictive se concentre sur les rapports, les systèmes d'IA générative peuvent suggérer et même mettre en œuvre des correctifs pour ces problèmes.


Optimisations des infrastructures

L'IA générative peut apprendre à observer le bon fonctionnement d'une infrastructure et à identifier les améliorations potentielles des configurations système et réseau, comme la recherche d'un goulot d'étranglement causé par de longues latences système. Le système d'IA peut résoudre le problème, proposer des suggestions de correction et automatiquement mettre en œuvre les modifications.

Monitoring et reporting

L'IA générative peut synthétiser du texte et formuler des descriptions basées sur des données, ce qui en fait un complément naturel aux plateformes de reporting informatique. À l'aide d'invites textuelles ou vocales, les sysadmin peuvent formuler des requêtes pointues en langage naturel à un système d'IA générative.


L’IA générative au service du DevOps ?

La session hivernale des Y Combinator Demo Day, qui a eu lieu en avril dernier et qui est un faiseur de tendance sur les sujets tech a mis en avant 3 tendances majeurs, à savoir l’open source, les outils de développement et l’IA générative. Bien que ces domaines puissent être examinés séparément, il est intéressant de s’attarder sur la façon dont ils pourraient se compléter/s’additionner. Voici quelques potentiels cas d’usages.

Génération de code

Le développement assisté par l'IA peut inclure des tâches allant de la simple complétion de code, suggérer comment terminer une ligne ou un bloc de code, à la création de routines ou de programmes entiers basés sur les demandes détaillées en langage naturel, d'un utilisateur.

Test logiciels et correction de bugs

L'IA générative est apte à synthétiser des données et à produire du texte, c'est donc un choix naturel pour créer des données et des cas de test dans le cadre de tests logiciels. De plus, les systèmes d'IA peuvent exécuter ces tests et rendre compte de leurs résultats.

Les modèles d'IA générative peuvent analyser le code créé par l'homme (et l'IA) à la recherche de bugs et proposer des correctifs, en assurant une homogénéité du code au sein de l’entreprise.

Déploiement automatisé

Une fois les tests validés, les équipes DevOps peuvent déployer automatiquement le code à l'aide de l'IA générative dans le cadre de flux de travail ou de processus automatisés. Les outils d'IA générative peuvent également optimiser la gestion du workload et piloter les outils pour la surveillance de la charge de travail et la collecte des KPI


Les grands noms du secteur ont d’ailleurs déjà lancé des versions de leurs usines logicielles intégrant de l’IA générative : Ansible Lightspeed pour Red Hat, Github Copilot pour Microsoft, Autopilot mode pour h8l.io…

DevOps et IA générative semble une alliance pleine de promesses, mais encore à ses débuts. Les initiatives de précurseurs précédemment citées sont à suivre. Pour conclure, les mots de Sanjeev Mohan, ancien de Gartner et fondateur de sanjmo.com :

« Selon la personne à qui vous parlez, vous découvrez que ChatGPT produit du code parfait ou qu'il le fout en l'air. Je ne vois aucune entreprise, comme Snowflake et les sociétés de bases de données, être perturbée à ce stade. ChatGPT est un moyen incroyable de commencer mais pas de terminer le travail. »
Par Baptiste.casnedi