Au sein de nombreuses communautés Open Source, un certain scepticisme existe quant à l’utilisation des outils d’IA générative pour la contribution et le développement. Il y a de bonnes raisons de s’inquiéter. Dans cet article, notre objectif, ainsi que celui de Red Hat, est de répondre directement à ces préoccupations, sans les écarter. Nos réponses ne sont pas de simples conseils pour d’autres personnes : elles sont destinées à nos propres ingénieurs, dont la plupart sont également des contributeurs Open Source.  

Nous vous communiquerons les directives que nous avons établies pour les équipes d’ingénierie de Red Hat, en fonction de notre utilisation des principes de l’Open Source dans la pratique. Mais tout d’abord, replaçons la vague actuelle de nouveaux outils dans son contexte.

Un bref aperçu historique

Au cours des quarante dernières années, nous avons régulièrement mis en œuvre des outils et des processus de développement logiciel nouveaux et améliorés. En voici quelques-uns : Compilateurs, systèmes de contrôle de version, IDE, machines virtuelles (des deux types), instances cloud, développement agile, conteneurs, gestion de la configuration et tests automatisés. Chaque ensemble d’outils a été nouveau à un moment donné, et nombre d’entre eux ont suscité des débats sur l’authenticité, la qualité et la légitimité. Il fut un temps où les indicateurs de compilation et la saisie semi-automatique dans les IDE étaient des sujets sensibles.  

Les outils de développement basés sur l’IA ne font pas exception. Et cela ne devrait pas être le cas. Au fil du temps, nous constaterons que les outils d’IA améliorent considérablement notre travail de développement dans certains domaines, et pas du tout dans d’autres. L’adoption se fera en conséquence. Nous utilisons des outils pour résoudre des problèmes liés à l’Open Source, et les nouveaux outils nous aideront à résoudre les anciens problèmes tout en découvrant de nouveaux problèmes.

S’il existe un problème majeur dans le monde de l’Open Source, il peut être exprimé ainsi : « Trop de projets, pas assez de responsables de la maintenance ». Aujourd’hui, les chefs de projet doivent en faire plus que jamais : publier des versions plus rapidement, mettre à jour la sécurité plus rapidement, sécuriser les chaînes d’approvisionnement des logiciels, intégrer le CI/CD, assurer la conformité réglementaire et gérer les contributeurs à grande échelle. Ces attentes ne sont pas viables sans de meilleurs outils qui permettent aux équipes de maintenance d’en faire plus avec moins d’efforts. Chez Red Hat, nous sommes convaincus qu’une utilisation raisonnée de l’IA nous permettra de créer la prochaine génération d’outils de développement pour relever ce défi.

Principes d’adoption de l’IA dans l’Open Source

Pour que les nouveaux outils profitent à l’Open Source, nous devons adhérer à la philosophie Open Source qui a façonné Red Hat et notre secteur. Par conséquent, Red Hat a élaboré des directives pour les contributions Open Source basées sur l’IA à l’intention de notre personnel, fondées sur trois principes :

  1. Innover de manière responsable
  2. Faire preuve de transparence
  3. Respecter la communauté

Innover de manière responsable

Qu’il utilise un outil d’IA, un IDE, les résultats d’une session de programmation en binôme ou toute autre méthode de production de code et de documentation, chaque contributeur est entièrement responsable de sa contribution. Le contributeur est l’« humain dans la boucle », c’est-à-dire la personne qui garantit la sécurité et la conformité de sa contribution. Les contributeurs doivent comprendre le code assisté par l’IA comme s’ils l’avaient entièrement écrit eux-mêmes. Ils doivent également être en mesure d’expliquer ce qu’il fait, comment il interagit avec d’autres éléments de code du projet et pourquoi cette modification est nécessaire. Nous ne considérons pas l’IA comme un remplacement des développeurs. L’objectif est d’automatiser les tâches fastidieuses afin de libérer du temps pour la résolution de problèmes complexes et créatifs. Nous croyons en un avenir où les développeurs sont augmentés, et non automatisés.

Notre principe de responsabilité humaine redéfinit l’IA comme un assistant et un tuteur puissant, et non comme un remplacement. Un nouveau venu peut l’utiliser pour comprendre des modèles complexes et découvrir les meilleures pratiques, ce qui lui permet de se concentrer sur la logique de base de sa contribution tout en réduisant le nombre d’erreurs. Les contributeurs expérimentés peuvent utiliser de nouveaux outils pour effectuer des vérifications et des tests plus efficaces et plus approfondis. La responsabilité incombe toujours aux personnes : les membres expérimentés doivent encadrer le contributeur, et pas seulement le code, et les membres débutants doivent être responsables de ce qu’ils soumettent et faire preuve d’une volonté d’apprendre.

Faire preuve de transparence

L’ouverture favorise la confiance. Le marquage des contributions importantes assistées par l’IA, par exemple avec une ligne « assisted-by » dans le commit, aide les communautés à développer ensemble les meilleures pratiques et permet de réaliser des audits en cas de problème. Cela permet également aux projets d’identifier, au fil du temps, les outils d’IA qui sont utiles à leur développement et ceux qui ne le sont pas.  

Le marquage des contributions aide également les relecteurs à évaluer correctement les nouvelles contributions. Les contributions de faible qualité générées par l’IA posent un problème grave aux projets. Chez Red Hat, nous continuerons à travailler sur des pratiques et des outils que nous partagerons avec l’ensemble de l’écosystème à mesure que nous apprendrons à mieux relever ces défis.

Respecter la communauté

Une collaboration efficace dans l’Open Source repose sur le respect des politiques de contribution et des normes sociales établies pour chaque projet. Notre première responsabilité est de comprendre et de participer au processus choisi par une communauté pour adopter de nouvelles technologies comme l’IA, ou d’aider à lancer une discussion sur la création d’un tel processus lorsqu’il n’existe pas. En d’autres termes, il s’agit de contribuer à la conversation plutôt que d’essayer de l’imposer. 

Nous savons que certains projets accueilleront favorablement les nouveaux outils, que d’autres les interdiront et que d’autres encore adopteront des politiques spécifiques concernant le marquage et les utilisations acceptables. Dans la mesure du possible, Red Hat aidera les communautés à élaborer et à adopter des politiques qui les aideront à maintenir leurs valeurs communautaires, leur intégrité et leurs normes de qualité. L’essentiel est que les projets puissent utiliser les outils d’IA d’une manière qui leur convienne.

L’innovation en action chez Red Hat

Notre utilisation de l’automatisation basée sur l’IA pour la maintenance des paquets Red Hat Enterprise Linux (RHEL) est un exemple concret d’innovation responsable. Comme le détaille Laura Barcziová dans cet article de blog, la création d’un système de production fiable a nécessité une attention particulière à la responsabilisation. L’équipe d’ingénierie a intégré des protections essentielles, telles que des modes d’exécution à blanc et un traçage détaillé, afin qu’un humain puisse toujours comprendre et vérifier les décisions de l’IA. Cette priorité accordée à la fiabilité et à la supervision humaine est essentielle à une innovation responsable.

Le processus de politique de contributions assistées par l’IA du projet Fedora est un excellent exemple de transparence et de respect de la gouvernance communautaire. Élaborée à la suite d’un vaste débat public, elle exige responsabilité et divulgation, servant de modèle sur la façon dont les projets Open Source peuvent créer leurs propres directives claires et pragmatiques pour l’IA.

L’Open Source repose sur une innovation fondée sur des principes

Chez Red Hat, nous pensons que l’IA offre d’énormes possibilités aux projets Open Source et aux contributeurs. Nous nous engageons à faire évoluer notre écosystème de manière à préserver les principes clés de l’Open Source. Cet engagement est ancré dans une simple vérité : l’ensemble de notre gamme de produits repose sur l’innovation issue des projets Open Source en amont. La santé, le dynamisme et la productivité de ces communautés de contributeurs ne sont pas seulement une priorité, mais constituent le fondement même de notre succès.

Notre stratégie de produits reflète cet engagement : de la fourniture d’une plateforme d’IA de niveau entreprise avec Red Hat AI à l’intégration de capacités d’IA dans l’ensemble de notre gamme de produits, en passant par le partage de nos propres innovations et découvertes de processus que nous utilisons pour améliorer la qualité et la sécurité.

Il s’agit d’un processus collaboratif, et nous l’abordons avec transparence. Nous nous attaquons à des problèmes de longue date dans l’Open Source qui dépassent le cadre de Red Hat. Nous vous invitons à vous joindre à nous dans cette aventure, alors que nous collaborons avec les communautés en amont pour créer les outils, définir les normes et façonner ensemble l’avenir du développement de logiciels.

Ressource

L'entreprise adaptable : quand s'adapter à l'IA signifie s'adapter aux changements

Ce livre numérique de Michael Ferris, directeur de l'exploitation et de la stratégie chez Red Hat, aborde le rythme des changements et des bouleversements technologiques liés à l'IA auxquels sont confrontés les responsables informatiques.

À propos des auteurs

Chris Wright is senior vice president and chief technology officer (CTO) at Red Hat. Wright leads the Office of the CTO, which is responsible for incubating emerging technologies and developing forward-looking perspectives on innovations such as artificial intelligence, cloud computing, distributed storage, software defined networking and network functions virtualization, containers, automation and continuous delivery, and distributed ledger.

During his more than 20 years as a software engineer, Wright has worked in the telecommunications industry on high availability and distributed systems, and in the Linux industry on security, virtualization, and networking. He has been a Linux developer for more than 15 years, most of that time spent working deep in the Linux kernel. He is passionate about open source software serving as the foundation for next generation IT systems.

UI_Icon-Red_Hat-Close-A-Black-RGB

Parcourir par canal

automation icon

Automatisation

Les dernières nouveautés en matière d'automatisation informatique pour les technologies, les équipes et les environnements

AI icon

Intelligence artificielle

Actualité sur les plateformes qui permettent aux clients d'exécuter des charges de travail d'IA sur tout type d'environnement

open hybrid cloud icon

Cloud hybride ouvert

Découvrez comment créer un avenir flexible grâce au cloud hybride

security icon

Sécurité

Les dernières actualités sur la façon dont nous réduisons les risques dans tous les environnements et technologies

edge icon

Edge computing

Actualité sur les plateformes qui simplifient les opérations en périphérie

Infrastructure icon

Infrastructure

Les dernières nouveautés sur la plateforme Linux d'entreprise leader au monde

application development icon

Applications

À l’intérieur de nos solutions aux défis d’application les plus difficiles

Virtualization icon

Virtualisation

L'avenir de la virtualisation d'entreprise pour vos charges de travail sur site ou sur le cloud