GitHub Copilot : danger sur l'open source ?
Désormais en phase commerciale, GitHub Copilot est source de questionnements éthiques et juridiques dans la communauté open source.
GitHub Copilot, une machine à violer la propriété intellectuelle ? C’est l’une des craintes que le service a suscitées dans le monde du logiciel libre. En tête de pont, des développeurs qui craignent de voir leur code réutilisé au mépris des licences.
Face à l’agitation, la Free Software Foundation avait fait, l’an dernier, un appel à contributions. Sur cet aspect juridique, ainsi que sur la question éthique. Il en a résulté cinq livres blancs en anglais, publiés en février 2022. Copilot était alors encore en bêta. Certains constats établis dans ces documents sont donc susceptibles de ne plus s’appliquer. La « photographie d’ensemble » donne néanmoins à voir des enjeux de long terme, d’autant plus prégnants désormais que le service est en phase commerciale.
Copilot manque-t-il de bon sens ?
Sur le volet éthique, il y a l’article « Interpréter les docstrings sans bon sens ». Son postulat : les faiblesses observées en la matière découlent de fragilités structurelles. Et cela commence avec une « boîte noire ». Nommément, GPT-3, le « métamodèle » d’OpenAI dont découle Codex, modèle spécialisé sur lequel se fonde Copilot.
L’article évoque des déficiences traditionnellement constatées dans les modèles de traitement du langage naturel. Parmi elles, donc, le manque de bon sens, d’autant plus marqué que ce dernier, de par sa nature, est rarement explicite dans les corpus d’entraînement.
Il y a aussi les difficultés à généraliser… et à appliquer le principe de la compositionnalité. À commencer par sa logique combinatoire, comme avec le concept de commutativité, en vertu duquel, par exemple, « 3 + 5 » = « 5 +3 ».
Sur la partie « bon sens », l’article fait référence à une étude qui a consisté à jouer sur la plausibilité d’événements à travers des modificateurs adjectivaux. Le jugement des modèles d’apprentissage automatique mis à l’épreuve est… perfectible.
On a documenté des situations du même acabit chez Copilot. Il s’est, par exemple, révélé incapable d’interpréter un docstring établissant la compression d’un fichier comme optionnelle : à chaque exécution, il compressait automatiquement.
La question du fair use…
Sur l’aspect juridique, il y a l’article « Si le logiciel est mon copilote, qui a programmé mon logiciel ? ».
GitHub n’a pas publié la liste des dépôts utilisés pour entraîner Copilot. Il affirme toutefois qu’il s’agissait de « code public ». Non sans cacher être tombé, pendant le processus, sur des licences de type copyleft (copie autorisée sous conditions).
Lire aussi : PC Copilot+, eldorado de l' IA locale ?
Nat Friedman, encore CEO de GitHub à l’annonce de Copilot, avait publiquement déclaré qu’entraîner des modèles d’apprentissage automatique sur des données publiques relevait du fair use (« usage raisonnable »). Plus globalement, l’entreprise et sa maison mère Microsoft estimaient ne pas avoir d’obligations en matière de propriété intellectuelle.
Sur la question du fair use, l’article mentionne une affaire judiciaire. À son origine, un groupement d’éditeurs. Leur cible : Google. La multinationale avait numérisé dans leur entièreté des livres sous copyright. Et y avait greffé une fonction de recherche contextualisée (les résultats apparaissaient au sein de passages). En appel, la justice a considéré que le service apportait une vraie valeur ajoutée par rapport aux livres, sans concurrencer ce marché. La Cour suprême ayant refusé le certiorari, la décision ne fait pas jurisprudence.
… et de la valeur ajoutée
Autre ton pour l’article « Implications, en matière de copyright, de l’usage de dépôts de code pour entraîner un modèle d’apprentissage automatique ». Le parti pris : se faire « l’avocat du diable ». En tout cas, mettre l’accent sur les conditions d’utilisation de GitHub.
À travers elle, la plate-forme se réserve le droit de stocker, d’archiver, d’analyser et d’afficher le contenu de ses utilisateurs. Et d’en faire les copies nécessaires pour fournir le « Service » (terme qui doit s’entendre comme « l’ensemble des produits GitHub »). Ou encore de copier du code dans sa base de données et de faire des sauvegardes.
Un tribunal pourrait considérer que ces dispositions ne sauraient s’appliquer aux suggestions de Copilot, au motif qu’il s’agit d’un cas d’usage nouveau, distinct. Dans la négative, il pourrait juger qu’on se trouve dans un cas de dérivation. Et qu’il appartiendrait à GitHub de justifier du fair use. Comme dans l’affaire Google Books… ou comme iParadigms. Cette société éditrice d’un service en ligne de lutte contre le plagiat conservait dans sa base les documents qui lui étaient soumis pour vérification. La justice a légitimé cette pratique, estimant qu’elle contribuait à la valeur ajoutée du service.
Avec Copilot, l’argument de la valeur ajoutée pourrait aussi valoir. Tout en laissant peu de chance de conflit entre le code d’origine (utilisé pour l’entraînement) et le code de sortie. Concernant la quantité de code copié, la justification semble toute trouvée : en copier moins réduirait les performances de Copilot.
En réaction à l’un des articles, l’avocat Matthew Butterick se demande si Microsoft (GitHub) lui-même sait vraiment comment fonctionne Copilot, à plus forte raison puisqu’il s’agit d’un modèle non déterministe. Connaître ce fonctionnement pourrait permettre de préciser, à côté des fragments de code suggérés, les licences associées. Et, pourquoi pas, monter un système de filtrage grâce auquel on pourrait par exemple demander de générer une fonction uniquement avec du code sous licence MIT, GPL, etc.
Sur le même thème
Voir tous les articles Open source