GitHub Copilot de nouveau dans la tourmente après avoir reproduit du code sous copyright
Fortes turbulences pour Copilot — L'IA payante de Microsoft pour les développeurs aurait proposé de larges blocs de code protégés par le droit d'auteur. Une investigation en vue d'une action en justice vient d'être lancée.
Tim Davis, développeur et professeur d'informatique à l'université A&M du Texas, a interpelé GitHub sur Twitter le week-end dernier après avoir découvert que du code de son propre projet sous copyright était proposé par l'assistant Copilot, sans aucune attribution.
Le développeur indique que le simple fait d'avoir saisi en commentaire "transposition de matrice creuse" et d'avoir commencé à saisir le début du nom de sa fonction a entraîné la génération automatique par GitHub Copilot d'un code similaire au sien en de très nombreux points, sans aucune mention de licence.
@github copilot, with "public code" blocked, emits large chunks of my copyrighted code, with no attribution, no LGPL license. For example, the simple prompt "sparse matrix transpose, cs_" produces my cs_transpose in CSparse. My code on left, github on right. Not OK. pic.twitter.com/sqpOThi8nf
— Tim Davis (@DocSparse) October 16, 2022
Alors que le jeu de données sur lequel se base l'intelligence artificielle de Copilot consiste en des centaines de milliers de lignes de code en provenance de projets présents sur la plateforme d'hébergement de code GitHub, l'outil est néanmoins supposé s'appuyer sur des projets open source libres de droits.
Or, c'est important de le rappeler, qui dit open source ne veut pas dire non protégé. Il existe en effet différentes forme de licences open source, qui accordent (ou non) chacune des permissions particulières.
Ainsi, bien que le projet en question soit hébergé chez GitHub et proposé sous licence LGPL 2.1, cette dernière impose par exemple que toute modification du code source devra être également publiée sous licence LGPL.
De même, les sources de Tim Davis comportent une mention "All Rights Reserved" en son nom.
L'une des principales préoccupations de la communauté open source vis-à-vis de l'assistant intelligent de GitHub est que si celui-ci régurgite des morceaux entiers de code sans prendre en considération les licences sur lequelles ceux-ci reposent, la solution porte atteinte à la raison d'être de ces licences (blanchiment de code).
Cela soulève également l'éventualité que l'outil puisse amener des développeurs à combiner des licences incompatibles dans leurs projets sans en avoir conscience, ce qui rend son usage potentiellement dangereux dans un environnement professionnel et/ou commercial.
Alors que le lancement de Copilot avait déjà été accompagné d'une première levée de boucliers au sein de nombreuses communautés open source, son passage en version payante il y a peu de temps avait fortement attisé les braises. La Software Freedom Conservancy avait notamment été jusqu'à appeler au boycott total de la plateforme détenue par Microsoft.
En réponse à ce nouvel incident, un autre développeur américain, Matthew Butterick, qui s'avère être également avocat (et écrivain, et designer, WTF ?!), a rapidement mis en ligne le site GitHub Copilot Investigation, qui se donne pour mission de rassembler et documenter tous les cas d'infraction aux droits d'auteur commises par Copilot à des fins d'action en justice.
Le site met en avant les problèmes relatifs à la manière dont a été entraîné l'assistant, mais aussi le fait que celui-ci peut fournir du code incorrect voire dangereux, et privé des obligations de propriété intellectuelle qui lui sont liées.
Selon Butterick, Copilot présenterait également un risque pour la survie des communautés open source : en passant de la sorte sous silence le fruit de leur travail et de leur collaboration, GitHub créerait progressivement un écosystème fermé, qui empêcherait les développeurs non initiés de découvrir et de rejoindre de telles communautés.
Dans le cadre de son investigation, l'avocat invite toute personne ayant stocké son code open source sur GitHub (de manière publique ou privée) et ayant des raisons de croire que ce même code a été utilisé pour entraîner l'IA de Copilot à le contacter.
Reste à voir jusqu'où cette démarche mènera, mais force est de constater que son caractère est unique sur le plan légal : il n'existe à ce jour aucune documentation ou précédent juridique permettant d'apprécier ce que serait un usage raisonnable pour les entraînements d'intelligences artificielles ni les limites de leur champ d'application.
À lire aussi sur Les Joies du Code :
- ⏱ Linus Torvalds demande aux devs du noyau Linux d'arrêter de livrer au dernier moment "comme des étudiants"
- 🌩 GitHub s’attire les foudres de la communauté open source avec son IA Copilot (juillet 2022)
- 💸 GitHub Copilot : l'IA qui écrit du code est désormais ouverte à tous les développeurs pour 10 dollars par mois (juin 2022)
À propos de l'auteur
Nicolas Lecointre
Chief Happiness Officer des développeurs, ceinture noire de sudo. Pour rire, j'ai créé Les Joies du Code. J'utilise Vim depuis 10 ans parce que je sais pas comment le quitter.
Articles similaires
Avec Copilot, GitHub veut devenir la plateforme propulsée par l’IA pour les développeurs
Chaque mois, GitHub perd un pognon monstre à cause de Copilot
GitHub Copilot dépasse le million d'utilisateurs payants
Avec Copilot, GitHub veut devenir la plateforme propulsée par l’IA pour les développeurs
Ubuntu 23.10 Mantic Minotaur est disponible
Plus de contenu
Quand j'utilise une bibliothèque sans avoir lu la doc
Quand une popup "caca" apparaît pendant ma démo
Quand je découvre les conventions de nommage du client
Quand on me dit que le bug que je pensais avoir enfin corrigé est toujours présent
Quand je cherche à tout prix à retrouver un bout de code dans mon historique Internet
Quand un collègue me demande de jeter un oeil à sa pull request
Quand je dois faire un correctif dans du code historique sans refactoriser
Quand le directeur passe dans les bureaux avec des clients et que je fais semblant de travailler
Quand j'utilise une bibliothèque sans avoir lu la doc
Quand une popup "caca" apparaît pendant ma démo
Quand je découvre les conventions de nommage du client
Quand on me dit que le bug que je pensais avoir enfin corrigé est toujours présent
Quand je cherche à tout prix à retrouver un bout de code dans mon historique Internet

