L’IA et le plagiat de code : l’affaire Dark Hours révèle les risques insoupçonnés

L'affaire Dark Hours met en lumière les risques de plagiat involontaire par les IA génératives de code. Découvrez comment Terry Godier a copié un projet...

L’avènement des intelligences artificielles génératives de code, à l’instar de Claude Code ou GitHub Copilot, a ouvert de nouvelles perspectives pour les développeurs, promettant une accélération sans précédent des processus de création. Cependant, cette révolution technologique n’est pas sans soulever des questions éthiques et juridiques complexes, notamment en matière de propriété intellectuelle et de plagiat. L’affaire Dark Hours, impliquant deux applications distinctes mais étrangement similaires, illustre de manière frappante les pièges potentiels liés à l’utilisation non critique de ces outils puissants. Ce cas d’étude, qui a contraint un développeur à retirer entièrement son projet du marché, met en lumière la nécessité d’une vigilance accrue et d’une compréhension approfondie des mécanismes sous-jacents aux modèles d’IA pour éviter de reproduire involontairement du code existant. Nous allons décortiquer cette mésaventure pour comprendre comment une IA peut, en toute innocence apparente, conduire à une situation de quasi-plagiat, et quelles leçons en tirer pour l’avenir du développement assisté par intelligence artificielle.

L’étrange convergence des deux applications Dark Hours

L’histoire débute avec Terry Godier, un développeur qui, en s’appuyant sur l’assistance de l’IA Claude, a conçu une application web nommée Dark Hours. Lancée début août, cette application avait pour objectif de guider les utilisateurs vers les meilleurs points d’observation astronomique, leur indiquant ce qu’il était possible de contempler dans le ciel nocturne. Parallèlement, un autre projet, également baptisé Dark Hours et développé par Miguel Beher, existait déjà sous licence MIT, c’est-à-dire en open source. La ressemblance entre les deux initiatives ne se limitait pas à leur dénomination : elles partageaient des fonctionnalités quasi identiques, une interface utilisateur similaire et même une proximité dans leurs noms de domaine, l’une utilisant “.io” et l’autre “.app”.

Cette coïncidence frappante a rapidement attiré l’attention de Miguel Beher, le créateur de la version originale et open source. En examinant de plus près l’application de Godier, Beher a constaté des similitudes troublantes qui allaient bien au-delà d’une simple convergence d’idées. Il a alors contacté Terry Godier pour lui faire part de ses observations. Initialement, Godier a proposé de modifier le nom de son application et d’y intégrer des fonctionnalités distinctives pour éviter toute confusion. Cependant, dans un revirement inattendu survenu à peine une heure plus tard, il a décidé de retirer complètement son projet, d’annuler le développement d’une version iOS en préparation et de publier un mea culpa public, reconnaissant un “usage irresponsable de l’IA” dans son processus de développement.

Le bug commun : le point de rupture de Terry Godier

Ce qui a précipité la décision radicale de Terry Godier de tout abandonner n’était pas seulement la similarité fonctionnelle ou nominale, mais la découverte d’un bug spécifique et identique dans les deux applications. Le problème en question concernait la géolocalisation des points d’observation des étoiles : les deux versions de Dark Hours avaient la fâcheuse tendance à envoyer leurs utilisateurs dans des lieux improbables, comme des champs isolés au Mexique ou des zones au milieu de l’océan Pacifique. Miguel Beher, le développeur de l’application open source, avait lui-même rencontré et résolu ce même bug de son côté. La présence de cette anomalie partagée, jusqu’à ses manifestations les plus précises, a été le déclencheur pour Godier.

Cette étrange résonance dans les défauts de conception a soulevé une question cruciale : comment deux projets développés indépendamment pouvaient-ils reproduire non seulement les mêmes fonctionnalités, mais aussi les mêmes erreurs de code ? Pour Terry Godier, il est devenu évident que l’IA qu’il avait utilisée, Claude Code, avait puisé dans des sources existantes. Il a précisé avoir démarré son projet avec un code d’éphémérides qu’il avait lui-même rédigé en janvier. Or, le projet Dark Hours de Miguel Beher étant open source et donc publiquement accessible, l’agent IA de Godier avait manifestement consulté et intégré des fragments significatifs de ce code, allant jusqu’à reprendre le nom même du projet. Cette révélation a mis en lumière la capacité des IA génératives à assembler des blocs de code préexistants sans toujours en identifier clairement l’origine.

Comment les IA génératives de code puisent dans l’existant

Le cas de Dark Hours est emblématique du fonctionnement des intelligences artificielles génératives de code comme Claude Code ou GitHub Copilot. Ces outils ne créent pas ex nihilo, mais s’appuient sur des modèles massifs entraînés sur d’immenses corpus de données, incluant une quantité phénoménale de code source disponible publiquement sur Internet. Des plateformes comme GitHub, avec ses millions de dépôts open source, constituent une source d’apprentissage inépuisable pour ces IA. Lorsqu’un développeur soumet une requête à une IA générative, celle-ci analyse la demande et, si elle identifie des similarités avec des projets existants dans sa base de connaissances, elle peut les utiliser comme modèles ou même en extraire directement des portions de code.

Ce processus peut se dérouler de plusieurs manières. Premièrement, certaines IA sont connectées au web et peuvent activement “lire” des pages, cloner des dépôts ou fouiller des plateformes comme GitHub en temps réel pour trouver des solutions pertinentes. Si la demande de l’utilisateur correspond à un projet existant, l’agent peut alors consulter ce projet et s’en servir de base. Deuxièmement, même sans connexion directe au réseau au moment de la génération, les modèles ont été pré-entraînés sur un vaste éventail de code public. Ils sont donc capables de restituer des structures de code, des algorithmes ou même des schémas de conception qu’ils ont “vus” des milliers de fois, sans nécessairement aller les rechercher sur Internet à chaque requête. Cette capacité est comparable à celle des modèles de diffusion d’images qui peuvent reproduire le style d’artistes spécifiques après avoir été entraînés sur leurs œuvres. Le défi réside alors dans la distinction entre l’inspiration et la reproduction pure et simple, surtout lorsque l’IA réplique des éléments distinctifs, y compris des bugs, qui trahissent une filiation directe avec une œuvre préexistante.

Bilan et perspectives

L’affaire Dark Hours constitue une illustration édifiante des défis éthiques et pratiques posés par l’intégration croissante des intelligences artificielles génératives dans le processus de développement logiciel. Elle met en lumière la nécessité impérieuse pour les développeurs d’adopter une approche critique et responsable lors de l’utilisation de ces outils. Si les IA peuvent indéniablement accélérer la production de code et faciliter l’accès à des solutions complexes, elles ne dispensent pas d’une vérification rigoureuse de l’originalité et de la provenance du code généré. Le cas de Terry Godier démontre que le “pompage” involontaire de projets open source est une réalité, même sans intention malveillante, simplement par la nature même de l’entraînement des modèles d’IA sur des bases de données publiques massives. Il est donc crucial de considérer l’IA comme un assistant intelligent, et non comme un substitut à la compréhension et à la diligence du développeur. À l’avenir, les cadres juridiques et les meilleures pratiques devront évoluer pour encadrer l’utilisation de ces technologies, afin de protéger la propriété intellectuelle tout en stimulant l’innovation. La vigilance et l’éducation des développeurs sur les implications de ces outils seront des piliers essentiels pour naviguer dans ce nouveau paysage technologique.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *