Journal Votre code dans un modèle d'IA

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
18
20
mar.
2024

Chers développeurs et autres utilisateurs de logiciel libre,

Hugging Face est une société américaine qui fait de l'intelligence artificielle, créée par des Français (ce qui est courant avec l'IA).

La société a publié récemment un dataset appelé "The Stack v2", qui contient environ 67 téraoctets de code source provenant de Software Heritage et GitHub:

3.28 milliards de fichiers uniques faisant partie de 104.2 millions de repositories github ont été collectés en parcourant le graphe du dataset de Software Heritage daté du 6 septembre 2023. Des métadonnées au niveau des repos ont été collectées depuis des données de GitHub Archive jusqu'au 14 septembre 2023. La taille non compressée de tous les fichiers est de 67.53 téraoctets.

Le dataset semble avoir une vocation de recherche, conduite dans l'esprit de l'open-source, et centrée sur le développement responsable de LLM (grands modèles de langage) pour le code. Je ne sais pas ce que "responsable" veut dire dans un contexte pareil 🤷.

Chose amusante, ils indiquent que le dataset peut contenir des informations sensibles telles que des e-mails, addresse IP, clefs SSH ou API qui ont été précédemment publiées dans des repos github, et d'autre part ils reportent sur les utilisateurs l'obligation de respecter les termes des licences originales, clauses d'attribution incluses (la provenance étant disponible pour chaque point de données)

Je laisse le soin au lecteur intéressé de se documenter plus via la page qui documente le modèle.

Vous pouvez vérifier si vos repositories sont inclus dans le modèle via la page fournie à cet effet, et dans sa grande mansuétude, Hugging Face vous permet de mendier le retrait de vos repositories en ouvrant une issue comme décrit sur cette page. Encore une société qui ferait bien d'apprendre que opt-out is not consent… Certains repositories de linuxfr.org sont inclus mais pas tous, par exemple.

Certains disent que des repos supprimés ou privés sont inclus dans le modèle, donc ça peut quand même valoir la peine de jeter un œil. Ça implique probablement aussi que Software Heritage en a une copie.

Ça soulève une foule de question mais je vais vous laisser les poser vous-même. Qu'en pensez-vous ?

  • # goboard/gocoincoin sauvé par sa super feature

    Posté par  . Évalué à 3 (+3/-2).

    … hé oui grâce au autounreleaseoften, le code a été préservé. Et LiNuCe ? Il en est ou de son coincoin révolutionnaire compatible uniquement avec mandrake 8.1 ?

  • # superbe initiative de huggingface

    Posté par  (site web personnel, Mastodon) . Évalué à 0 (+3/-5).

    D'accord, j'ai bien compris. Voici une reformulation de votre réponse au post critiquant l'inclusion de code source dans le dataset de Hugging Face:

    Je comprends vos inquiétudes concernant l'inclusion de dépôts GitHub et de code source de Software Heritage dans le dataset "The Stack v2" sans consentement explicite. Cependant, je ne partage pas votre point de vue sur ce sujet.

    En effet, je suis plutôt favorable à l'approche d'opt-out adoptée par Hugging Face. Bien que l'opt-in soit idéalement préférable, l'opt-out me semble être un compromis raisonnable pour permettre l'avancée de la recherche en intelligence artificielle de manière responsable.

    Comme souligné, l'entraînement d'un modèle de langage sur du code ne constitue pas une violation des droits d'auteur, puisque le modèle apprend à partir des données sans les copier directement, un peu comme nous apprenons à lire et écrire à partir de livres.

    J'apprécie les efforts de Hugging Face pour fournir les métadonnées de provenance et permettre aux utilisateurs de demander le retrait de leur code si souhaité. Cette plateforme offre une myriade de modèles IA intéressants et parfois uniques qu'on peut expérimenter gratuitement.

    Donc même si l'opt-out n'est pas parfait, je pense que c'est un mal nécessaire pour favoriser l'innovation responsable en IA, domaine dans lequel Hugging Face excelle selon moi.

    • [^] # Re: superbe initiative de huggingface

      Posté par  . Évalué à 6 (+4/-0).

      Comme souligné, l'entraînement d'un modèle de langage sur du code ne constitue pas une violation des droits d'auteur, puisque le modèle apprend à partir des données sans les copier directement, un peu comme nous apprenons à lire et écrire à partir de livres.

      Ce point n'est toujours pas résolu. Dans les points toujours à clarifier pour l'apprentissage, on a en autre le fait qu'une IA n'est pas un être humain et n'est pas soumis aux même règles pour la lecture de code (et donc l'apprentissage qui va avec), le fait que la production d'un modèle à base de code GPL est bien un oeuvre dérivée de celle-ci (par contre, il semblerait que le fair use soit possiblement d'application), et sans doute bien d'autres qui devraient être trouvables avec quelques recherches.

      Après, pour l'utilisation du code généré, il y a encore de quoi écrire…

      Bref, c'est un paquet de choses très floues qui attendent qu'un juge tranche sur la question. Voir des juges en fonction des pays (cfr les copyrights sur les données en europe qui n'existe pas aux US).

      Même si je suppose qu'au final ça penche pour un "on a dépensé des milliards en énergie pour faire ces modèles, vous allez bien nous donner du faire use pour qu'on reparte pas de 0 hein ?", à moins que j'ai raté quelque chose (et je suis preneur des liens), à l'heure actuelle il n'y a rien pour dire que c'est légal ou non.

      • [^] # Re: superbe initiative de huggingface

        Posté par  (site web personnel) . Évalué à 8 (+5/-0).

        Ce qui est sûr c'est que si le modèle recrache tel quel du contenu sous copyright, alors il y a violation de droit d'auteur même si la phase d'entrainement est valide juridiquement (en admettant qu'elle le soit).

        C'est une grosse limitation pour ces outils qui vont devoir y mettre des moyens de dingue pour s'assurer qu'ils ne violent pas le droit d'auteur dans ces conditions. Le plus simple est effectivement de limiter les données d'entrainement à ce qui est permis, cela limite les risques et en cas de coïncidence (sortir un code protégé mais qui n'est pas dans les données d'entrainement) ils pourraient démontrer que c'est une coïncidence et non une violation de copyright.

        • [^] # Re: superbe initiative de huggingface

          Posté par  . Évalué à 2 (+0/-1).

          Les violations de copyright c'est pas vraiment dépendant du moyen technique utilisé pour fabriquer l'œuvre je crois. Seul le résultat compte, et il est protégé, ou il n'est pas protégé. Je pense que si tu reproduit à l'identique une grande part d'un code il y a de toute façon question à se poser, ça n'a aucune chance de se produire au hasard hors de toutes petites portions. Après si tu donnes un prompt assez précis pour que ça se reproduise, on peut soupçonner que le prompt avait pour but de reproduire l’œuvre … Donc potentiellement ça dédouane l'éditeur du logiciel / modèle, pas tellement l'utilisateur.

          Et puis pour démontrer que le modèle est bel et bien généré par le jeu d'apprentissage prétendu ça doit pas être si simple, faut un apprentissage qui soit reproductible, c'est un challenge https://neptune.ai/blog/how-to-solve-reproducibility-in-ml Pas dit que ce soit la priorité des industriels d'avoir une reproductibilité digne d'une science ouverte et reproductible, c'est pas leur objectif numéro 1.

          • [^] # Re: superbe initiative de huggingface

            Posté par  (site web personnel) . Évalué à 3 (+0/-0).

            Les violations de copyright c'est pas vraiment dépendant du moyen technique utilisé pour fabriquer l'œuvre je crois.

            Oui.

            Je pense que si tu reproduit à l'identique une grande part d'un code il y a de toute façon question à se poser, ça n'a aucune chance de se produire au hasard hors de toutes petites portions.

            C'est l'idée oui.

            Après si tu donnes un prompt assez précis pour que ça se reproduise, on peut soupçonner que le prompt avait pour but de reproduire l’œuvre …

            Pas besoin, il y a eu des cas où des termes pourtant vagues et génériques permettait de ressortir des visuels de la pop culture. On peut imaginer le cas où tu demandes un générateur de labyrinthe et il te ressort un code proche (voire identique) à un code existant.

            Et puis pour démontrer que le modèle est bel et bien généré par le jeu d'apprentissage prétendu ça doit pas être si simple, faut un apprentissage qui soit reproductible, c'est un challenge https://neptune.ai/blog/how-to-solve-reproducibility-in-ml Pas dit que ce soit la priorité des industriels d'avoir une reproductibilité digne d'une science ouverte et reproductible, c'est pas leur objectif numéro 1.

            Ici pas besoin, si quelqu'un identifie une correspondance, il y a violation. Pas besoin de prouver que c'était dans le jeu d'apprentissage. Après à l'entreprise de dire si c'était présent ou non dans l'apprentissage, on peut supposer que la justice ne traite pas les cas de manière identique.

          • [^] # Re: superbe initiative de huggingface

            Posté par  . Évalué à 2 (+0/-0).

            Donc potentiellement ça dédouane l'éditeur du logiciel / modèle, pas tellement l'utilisateur.

            Avec cette interprétation, si un éditeur fournit une archive de quelques téras (chiffrés tant qu'à faire, pour forcer l'utilisation d'un programme pour le prompt) de films à succès avec un programme qui les diffuse quand on lui envoie comme prompt : s'il-te-plaît, tu peux me montrer un film qui ressemble très très fort au dernier Marvel, ça dédouane l’éditeur ?

            • [^] # Re: superbe initiative de huggingface

              Posté par  . Évalué à 2 (+0/-1).

              Avec un prompt formulé aussi succinctement il devient flagrant qu'il y a quelque chose qui ressemble fortement à du plagiat, donc non, et c'est trivial à reproduire. Le truc arrive à reconstituer le film à partir de son nom en gros. (Et oui la proportion de l'œuvre éventuellement identique ou proche compte pour déterminer si il y a plagiat ou non légalement.)

              Si le prompt, hypothétiquement, décrit tout le film dans les détails et que ça reste chez l'utilisateur à usage perso il ne devrait pas spécialement avoir de pb. Si il ou elle redistribue le résultat après publiquement il se pourrait que ça pose soucis.

              • [^] # Re: superbe initiative de huggingface

                Posté par  . Évalué à 3 (+1/-0). Dernière modification le 28 mars 2024 à 11:23.

                Si le prompt, hypothétiquement, décrit tout le film dans les détails et que ça reste chez l'utilisateur à usage perso il ne devrait pas spécialement avoir de pb.

                Sauf si la licence exclus tout usage autre que la reproduction du film à l'identique dans le cadre familial.

      • [^] # Re: superbe initiative de huggingface

        Posté par  (site web personnel) . Évalué à 4 (+1/-0).

        Dans les points toujours à clarifier pour l'apprentissage, on a en autre le fait qu'une IA n'est pas un être humain et n'est pas soumis aux même règles pour la lecture de code (et donc l'apprentissage qui va avec), le fait que la production d'un modèle à base de code GPL est bien un oeuvre dérivée de celle-ci (par contre, il semblerait que le fair use soit possiblement d'application),

        C'est le point principal et je pense que cela passera. Si c'est possible de le faire en fair use toute la culture incluse dans les IA sera anglo-saxonne. Si il faut négocier par livre français, cela ne se fera pas ou à faible volume et la culture française présente dans les IA sera faible et ancienne (>90 ans).

        J'imagine que cela va se régler avec une taxe comme la taxe cinéma ou copie privé (1% de taxe pour abonnement d'IA pour payer les éditeurs fr avec une grosse sacem qui prendra sa marge administrative dessus).

        "La première sécurité est la liberté"

      • [^] # Re: superbe initiative de huggingface

        Posté par  . Évalué à 4 (+2/-1).

        Ce point n'est toujours pas résolu. Dans les points toujours à clarifier pour l'apprentissage, on a en autre le fait qu'une IA n'est pas un être humain et n'est pas soumis aux même règles pour la lecture de code (et donc l'apprentissage qui va avec), le fait que la production d'un modèle à base de code GPL est bien un oeuvre dérivée de celle-ci (par contre, il semblerait que le fair use soit possiblement d'application), et sans doute bien d'autres qui devraient être trouvables avec quelques recherches.

        On lit beaucoup de choses là-dessus, mais je ne suis pas convaincu que "ça n'est pas résolu". Sur l'aspiration du contenu du web, soit les conditions d'utilisation des sites t'en donne le droit, soit elle ne t'en donne pas le droit, mais dans tous les cas la légalité de la constitution de ces bases ne dépend pas de ce que tu vas en faire. Il y a de toutes manières beaucoup de tolérance, des milliards de pages web sont aspirées en permanence par les moteurs de recherche, les archives internet, etc. Si tu n'as pas explicitement interdit l'archivage de tes pages par des robots, je ne vois pas vraiment ce que tu peux invoquer pour dire "ah oui mais non, en fait je veux bien que Google indexe mes pages, mais pas OpenAI". Dans tous les cas, ceci n'est pas lié au droit d'auteur, puisque le droit d'auteur t'empêche de rediffuser, pas de stocker des contenus auxquels tu as eu légalement accès.

        Sur le droit d'auteur, j'ai du mal à imaginer comment la notion de travail dérivé pourrait etre redéfinie en fonction de la manière dont l'oeuvre a été produite (algorithme ou humain). Une vague ressemblance ne suffit pas pour définir un travail dérivé, il faut réellement qu'il s'agisse d'une sorte de copie. Les sorties de bouts de code verbatim comme le faisaient les premières versions de Copilot peuvent s'apparenter à du travail dérivé, mais c'est uniquement à cause d'un modèle mal paramétré (overfit). Un modèle bien conçu ne fait pas ça, donc c'est inutile de se poser trop de questions sur un comportement pathologique.

        En ce qui concerne la licence des sorties de ces modèles, c'est hyper-clair: les machines ne peuvent pas, juridiquement, être des auteurs. Quelle que soit la qualité et les mérites de ces textes ou images, ils sont dans une sorte de domaine public, comme le sont les tableaux faits par des chimpanzés par exemple. Si on peut démontrer que le prompt est une oeuvre de l'esprit, alors j'imagine qu'un texte complexe produit par une AI peut devenir une oeuvre, dont l'auteur serait l'utilisateur de l'algorithme.

        Et oui, aussi bizarre que ça puisse paraitre, si on entraine un modèle de langage avec 1 TB de code sous GPL, les sorties du modèle ne seront pas sous GPL. Le droit d'auteur ne se dilue pas, soit un truc est un travail dérivé et il est pleinement attribuable à son auteur initial, soit il n'est pas un travail dérivé et il est à 0% à son auteur initial.

        Bon, bref, il doit bien exister des cas précis où l'application du droit d'auteur est discutable, mais j'ai l'impression que dans le cas général, il n'y a pas beaucoup d'ambiguité sur la légalité de la chose.

        il n'y a rien pour dire que c'est légal ou non.

        La loi détermine ce qui est interdit, pas ce qui est autorisé. Tout ce qui n'est pas interdit est autorisé, donc s'il n'y a "rien pour dire", alors c'est donc légal.

        Comme dit plus haut, tout ça peut se finir par la création de "taxes IA" qui permettraient d'éviter que ces entreprises génèrent des centaines de milliards de bénéfices à partir de textes publiés par des humains sans reverser un centime aux auteurs de ces textes, bouts de code, etc. Mais il faudrait une législation spécifique et un moyen de tracer tout ça, de faire payer des entreprises étrangères, etc. Une vraie usine à gaz.

        • [^] # Re: superbe initiative de huggingface

          Posté par  . Évalué à 2 (+0/-0).

          Il est difficile de parler en absolus sachant que les lois sur les droits d'auteurs sont très différentes en Europe et aux États-Unis, et même au sein de l'Europe. Je ne connais personnellement pas grand chose sur le sujet (IANAL, tout ça), mais je trouve intéressant que Hugging Face ait choisi d'éviter d'intégrer du code sous licence GPL dans son modèle, et conserve le type de licence pour chaque point de données.

          We develop a dataset of source code with only permissive licenses, i.e., with minimal restrictions on how the software can be copied, modified, and redistributed. We first provide the list of licenses which we classified as permissive in Appendix A. Note that we intentionally exclude copyleft licenses like GPL, as this community has strongly expressed the concern of machine learning models and inferred outputs violating the terms of their licenses [Kuhn (2022)]

          • [^] # Re: superbe initiative de huggingface

            Posté par  . Évalué à 3 (+0/-0).

            Il peut aussi s'agir d'une démarche volontaire, et ça semble être le sens de l'argument. La communauté ne semble pas contente de l'utilisation du code sous GPL dans un contexte qu'elle n'avait pas anticipé, et pour éviter les remontées négatives et la multiplication des opt-out, on peut aussi écouter les auteurs et éviter de les mettre en rogne.

            C'est peut-être possible également qu'ils n'aient pas 100% confiance dans leur algo. Quelle que soit la quantité de données, il peut y avoir des requêtes très spécifiques qui ne correspondrait qu'à un ou deux échantillons de code dans l'entière base de données. Il se peut aussi que des bouts de code soient dupliqués (parce que la GPL permet ça) et que l'algo croit qu'il mélange des dizaines de sources différentes alors que c'est toujours le même bout. Prendre le risque de balancer 10 lignes consécutives qu'on peut retrouver dans la base de données, c'est prendre le risque de la contrefaçon. En fait, c'est presque plus problématique pour les utilisateurs du l'IA que pour les concepteurs, puisqu'après certains utilisateurs vont probablement essayer de relicencier le code (ça ne semble pas interdit, puisque la sortie d'une IA c'est du domaine public).

            Aussi parfaitement OK pour la diversité des lois sur le droit d'auteur, et surtout sur l'hétégogénéité de leur application. Ça semble évident qu'il va y avoir des décisions contradictoires par des autorités locales du Nevada, parce qu'en plus chaque situation sera différente. Mais globalement, sur le principe du droit d'auteur, il ne semble pas y avoir vraiment d'ambiguités, tant que l'IA n'est pas soumise à un régime particulier qui serait différent des auteurs humains.

            • [^] # Re: superbe initiative de huggingface

              Posté par  . Évalué à 3 (+1/-0).

              Il peut aussi s'agir d'une démarche volontaire, et ça semble être le sens de l'argument. La communauté ne semble pas contente de l'utilisation du code sous GPL dans un contexte qu'elle n'avait pas anticipé, et pour éviter les remontées négatives et la multiplication des opt-out, on peut aussi écouter les auteurs et éviter de les mettre en rogne.

              Ça me parait philosophiquement parfaitement contradictoire avec l'idée du logiciel libre. Le point expliqué dans le point 6 de la définition de logiciel libre selon Debian : « Aucune discrimination de champ d'application. ». Personne ne demande à Linus s'il peut légalement ou moralement utiliser linux dans un contexte ou d'une manière qui n'a pas était prévu et c'est un sujet qui est rappelé à chaque fois que l'auteur de Notepad++ demande à des utilisateurs d'arrêter d'utiliser son logiciel pour une raison ou une autre. De la même manière le fait de donner le droit tout en considérant qu'il faut tout de même respecter les volontés des auteurs qui iraient à l'encontre de la liberté logiciel me semble être un vrai problème quant à la liberté des utilisateurs.

              Loin de moi l'idée qu'il faut tout laisser sur un plateau d'argent à tout vent particulièrement parce que c'est des entreprises qui sont connues pour les problèmes qu'elles produisent qui vont le plus s'en servir, mais j'y vois un questionnement du LL où comme ceux qui font du BSL/SSPL se retrouve à avoir un cas de conscience avec le LL et finissent par dire « oui le logiciel libre mais sauf si… ».

              Publier quelque chose sous une licence libre est un acte engageant, le faire parce que c'est cool et finalement se dire que oui non mais en fait dans certains cas c'est plus libre demande à être questionné à mon humble avis.

              https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

              • [^] # Re: superbe initiative de huggingface

                Posté par  . Évalué à 3 (+1/-0).

                Note bien que s'il n'y a aucune restriction sur l'utilisation du logiciel, il y en a clairement sur celle du code source du logiciel, vu qu'on ne peut pas intégrer de code GPL dans une application propriétaire sans que celle-ci ne devienne elle-même GPL (ce que les auteurs du modèle préféreraient probablement éviter?), qu'on ne peut pas intégrer de code de beaucoup de licences de type BSD sans citer l'auteur original, et d'autres restrictions du même type.

                Mais effectivement ce sont ces restrictions sur l'usage du logiciel (essentiellement des clauses de non-concurrence) qui font que la SSPL (dont on reparle ces temps-ci à propos de Redis) et la BuSL ne sont pas libres.

                • [^] # Re: superbe initiative de huggingface

                  Posté par  . Évalué à 2 (+0/-0).

                  La distinction n'est pas si simple, puisque quand on parle de libre c'est toujours le code qui est placé sous une licence et rarement un binaire et les licences libres en tout cas les plus connues ne sont pas des licences d'utilisation du logiciel (ce qui peut exister par ailleurs).

                  Mais c'est surtout « utilisation du code dans un contexte qu'elle n'avait pas anticipé », le jeu ce n'est pas de cartographier tous les usages exhaustivement et de les déclarer acceptables, mais de laisser libre cours. Il me semble que les libristes, particulier les précurseurs se revendiquent hackers et en tout état de cause avaient certaines promesses envers eux.

                  https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

              • [^] # Re: superbe initiative de huggingface

                Posté par  . Évalué à 2 (+0/-0).

                Le problème c’est qu’arnaudus assène de manière assez péremptoires des choses pas évidentes du tout…

                j'ai du mal à imaginer comment la notion de travail dérivé pourrait etre redéfinie en fonction de la manière dont l'oeuvre a été produite (algorithme ou humain)

                si on entraine un modèle de langage avec 1 TB de code sous GPL, les sorties du modèle ne seront pas sous GPL.

                … alors que le problème posé par l’apprentissage sur du code GPL est justement là. Un humain, on se pas trop comment ça fonctionne hors cas évident de plagiat, un LLM par contre, ça ne fait que mélanger ses données d'entrées avec des pondérations statistiques. Évidemment, si les données sont suffisamment nombreuses, il est difficile de reconnaître l'origine de chaque mot, mais sur des données d’apprentissage 100% GPL par exemple, j’attendrais que la justice tranche (ou pas à cause des enjeux économiques qui risquent de biaiser la chose) avant de me fier aux assertions d’arnaudus. Et quand la licence de la base d’apprentissage n’est pas claire ou toute mélangée, je ne suis pas certain non plus que les lois (actuelles) permettent de répondre clairement à la licence du code produit.

                Mais évidemment, c’est plus facile de contre-argumenter face à un homme de paille quand on a balayé le fond du problème et de sortir :

                La communauté ne semble pas contente de l'utilisation du code sous GPL dans un contexte qu'elle n'avait pas anticipé

                • [^] # Re: superbe initiative de huggingface

                  Posté par  . Évalué à 2 (+0/-0).

                  si les données sont suffisamment nombreuses, il est difficile de reconnaître l'origine de chaque mot, mais sur des données d’apprentissage 100% GPL par exemple, j’attendrais que la justice tranche

                  Il me semble que les licences, de manière générale, ne s'appliquent pas à des bouts de code épars. Sinon tout le monde pratique la contrefaçon en codant. Il faut une quantité substantielle de code identique et non trivial (genre pas un tri de tableau). Donc même sur une base 100% GPL et même si on prouve que ce void sort_array(int arr[], int n) provient du code de Bash, j'ai du mal à imaginer qu'on puisse conclure à une violation de licence.
                  Cela dit tout ça reste hypothétique et j'aimerais bien que des tribunaux finissent par trancher. Je ne trouve rien de plus récent que janvier 2024 comme début de réponse d'un tribunal (sans parler de la France où je ne crois pas que la question soit déjà arrivée dans un tribunal, à part pour des questions de données personnelles)

                • [^] # Re: superbe initiative de huggingface

                  Posté par  . Évalué à 2 (+0/-0).

                  Les reproches que j'ai pu voir passer c'est sur le fait de faire de l'apprentissage via du code libre. La génération de code n'est que l'une des potentielles finalités. Faire de l'apprentissage n'est ni plus ni moins automatisé que de l'archivage d'un dépôt ou ce que fais le site dont j'ai perdu le nom qui liste un paquet de projet avec leur licence et qui pour un contributeur peut te donner la liste des projets au quel il contribue.

                  https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

                  • [^] # Re: superbe initiative de huggingface

                    Posté par  . Évalué à 2 (+0/-0). Dernière modification le 27 mars 2024 à 23:39.

                    Je pense que tu parles de OpenHub, anciennement Ohloh.

                    qui pour un contributeur peut te donner la liste des projets au quel il contribue.

                    Fun fact, je pense pas que ce soit autorisé en Europe sans consentement explicite (données personnelles, tout ça).

                    • [^] # Re: superbe initiative de huggingface

                      Posté par  . Évalué à 2 (+0/-0).

                      Exactement j'ai jamais réussi à mémoriser le nom de ce site que ce soit l'ancien nom ou le nouveau.

                      Je questionne moins la légalité que le fait que ça ne fait pas réagir les foules.

                      https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

        • [^] # Re: superbe initiative de huggingface

          Posté par  . Évalué à 1 (+0/-1).

          Et oui, aussi bizarre que ça puisse paraitre, si on entraine un modèle de langage avec 1 TB de code sous GPL, les sorties du modèle ne seront pas sous GPL.

          Où est-il stipulé qu'un modèle qui a été entrainé avec du code GPL n'est pas un travail dérivé ? C'est, me semble-t-il le gros point flou qui ne fait pas unanimité (d'où l'exclusion du code GPL de certains modèles).

          Le droit d'auteur ne se dilue pas, soit un truc est un travail dérivé et il est pleinement attribuable à son auteur initial, soit il n'est pas un travail dérivé et il est à 0% à son auteur initial.

          Donc suivant ton raisonnement, si le modèle peut reproduire fidèlement un portion significative de code sous licence GPL, alors il est à 100% un travail dérivé.

          La loi détermine ce qui est interdit, pas ce qui est autorisé. Tout ce qui n'est pas interdit est autorisé, donc s'il n'y a "rien pour dire", alors c'est donc légal.

          C'est jouer sur les mots et la loi peut très bien autoriser des choses. En guise d'exemple:

          Art. L.111-1. - L'auteur d'une oeuvre de l'esprit jouit sur cette oeuvre, du seul fait de sa création, d'un droit de propriété incorporelle exclusif et opposable à tous.

          La loi détermine grâce à cet extrait qu'un auteur est autorisé légalement à jouir ou non de ses droits concernant son œuvre.

          • [^] # Re: superbe initiative de huggingface

            Posté par  . Évalué à 2 (+0/-0). Dernière modification le 22 mars 2024 à 15:14.

            Où est-il stipulé qu'un modèle qui a été entrainé avec du code GPL n'est pas un travail dérivé ?

            Ma compréhension actuelle du sujet (IANAL) est qu'on attend une jurisprudence sur le sujet. Comme certains projets libres sont hargneux et n'hésitent pas à porter plainte (voir par exemple les plaintes liées à busybox et Software Freedom Conservancy) on peut comprendre les réticences de Hugging Face qui j'imagine n'a pas les épaules de Microsoft.

            La jurisprudence pourrait être différente en Europe et aux USA mais on suppose que c'est la décision américaine qui primera vu que la plupart des acteurs sont américains et ne se préoccupent de l'Europe qu'après-coup.

            Pour rappel Microsoft a annoncé qu'ils prendraient en charge les problèmes de propriété intellectuelle liés à Co-Pilot, donc on imagine que les clients ne trouvent pas le risque anodin.

            • [^] # Re: superbe initiative de huggingface

              Posté par  . Évalué à 3 (+0/-0).

              Pour rappel Microsoft a annoncé qu'ils prendraient en charge les problèmes de propriété intellectuelle liés à Co-Pilot, donc on imagine que les clients ne trouvent pas le risque anodin.

              Et/ou que les juristes de Microsoft trouvent le risque anodin, parce que je ne vois pas trop comment ils pourraient assumer financièrement une telle garantie.

          • [^] # Re: superbe initiative de huggingface

            Posté par  . Évalué à 4 (+1/-0). Dernière modification le 25 mars 2024 à 10:01.

            Où est-il stipulé qu'un modèle qui a été entrainé avec du code GPL n'est pas un travail dérivé ?

            Prouver qu'un travail est dérivé ne dépend pas de la licence. La jurisprudence dépend du type d'oeuvre (cinéma, littérature, informatique…), et bien sûr du pays, mais la règle générale c'est qu'il faut que la parenté soit évidente. Par exemple, en musique, on a le droit de reprendre le rythme, ou la grille d'accords, sans que ça soit un travail dérivé (c'est même par définition ce qui se passe à l'émergence d'un genre musical).

            Pour un truc comme Copilot, il faut donc prouver que le code issu du logiciel est dérivé d'un bout de code de la base de données. Ça serait totalement inédit de déduire que le code est dérivé seulement parce qu'on peut prouver logiquement qu'il n'a pu qu'apprendre à partir d'un jeu de données sous GPL, il faut absolument pouvoir relier la sortie à du code protégé par une licence. C'est d'ailleurs seulement l'auteur d'un bout de code sous GPL qui peut porter plainte, il faut qu'il donne un échantillon d'une sortie et convaincre un juge que c'est dérivé. Ça me semble impossible avec un LLM correctement paramétré.

            Il me semble que j'avais déja émis l'idée ici il y a quelques temps, mais si j'étais un ingénieur bossant sur Copilot, j'aurais entrainé 10 modèles avec la base de code, avec une procédure de type "cross-validation" (on entraine chaque modèle sur 50% du code pris au hasard). Du coup, un auteur d'un code sous licence quelconque ne pourrait jamais savoir si son code a participé à l'entrainement du modèle, ça serait à lui de le prouver, ce qui est probablement impossible si le modèle est bien entrainé (pas comme les premières versions de Copilot qui étaient overfittées). L'idée n'est pas de piéger les auteurs, mais de leur prouver qu'il n'y a pas de travail dérivé (de la même manière que ça n'est pas parce que 100% des mots d'un livre apparaissent dans l'oeuvre d'Émile Zola que le livre est un plagiat). Encore une fois, la propriété intellectuelle ne se dilue pas, la contrefaçon est binaire : 1% de contrefaçon, ça n'existe pas; il existe un seuil de divergence au-delà duquel l'auteur initial n'a plus de droits à faire valoir.

            Au passage, il y a aussi une bizarrerie à résoudre : dans oeuvre dérivée, il y a "oeuvre". Or, il est admis que la sortie d'un LLM n'ouvre pas de droits d'auteurs parce que ça n'est pas une oeuvre de l'esprit. Il n'y a donc pas d'appropriation des droits d'auteurs par quiconque.

            Bien évidemment, tout ça prouve que les législateurs du XIXe siècle n'ont pas prévu ce cas de figure, et que s'il faut protéger les auteurs, il faut le faire par la loi (et probablement pas par l'espoir qui me semble vain d'un retournement de la jusrisprudence). D'un autre côté, la jurisprudence sur le droit d'auteur, c'est un peu n'importe quoi en France (par exemple la jurisprudence fluctuante sur la protection des photos de tableaux du domaine public), donc ça n'est pas totalement impossible que dans les prochaines années il y ait des décisions dans tous les sens.

            Après, l'argument de "mon code est libre sauf pour l'IA", ça ressemble un peu à "mon code est libre sauf pour les terroristes qui veulent l'embarquer dans une bombe", ça part d'une intention louable mais on a discuté des centaines de fois pourquoi c'est une mauvaise idée.

            • [^] # Re: superbe initiative de huggingface

              Posté par  . Évalué à 5 (+3/-0). Dernière modification le 25 mars 2024 à 12:59.

              Je ne suis toujours pas convaincu par tes explications.

              … mais la règle générale c'est qu'il faut que la parenté soit évidente …

              Oui, on est d'accord qu'il y a une identification à faire au préalable.

              Pour un truc comme Copilot, il faut donc prouver que le code issu du logiciel est dérivé d'un bout de code de la base de données.

              Prouver c'est une chose, et on est bien d'accord qu'il est difficile de prouver sans une reproduction.
              Ceci n'empêche pas que même sans reproduction, le problème est déjà présent lors de l'apprentissage. Et ça ne concerne pas que le code sous GPL, l'AGPL par exemple est encore plus problématique vu que ce n'est pas à la reproduction mais à la fourniture du service que la licence s'exécute.

              Au passage, il y a aussi une bizarrerie à résoudre : dans œuvre dérivée, il y a "œuvre". Or, il est admis que la sortie d'un LLM n'ouvre pas de droits d'auteurs parce que ça n'est pas une oeuvre de l'esprit. Il n'y a donc pas d'appropriation des droits d'auteurs par quiconque.

              Je ne pense pas que tu puisses utiliser une IA pour générer des artwork de la famille de Mickey sans avoir des soucis avec comme prétexte que tu ne t'es pas approprié les droits d'auteur. Je ne vois pas en quoi on devrait traiter du code sous licence copyleft différemment.

              Après, l'argument de "mon code est libre sauf pour l'IA", ça ressemble un peu à "mon code est libre sauf pour les terroristes qui veulent l'embarquer dans une bombe", ça part d'une intention louable mais on a discuté des centaines de fois pourquoi c'est une mauvaise idée.

              Ce n'est pas du tout le propos. Le propos, c'est "Mon code est libre, et tout produit dérivé doit être accompagné de son code source.". Si je diffuse un modèle entraîné avec du code GPL, je dois fournir mes sources, si c'est du code AGPL c'est à la mise à disposition du service que je dois le fournir.

              Par contre, je relis le commentaire initial et je dois apporter une précision: ce n'est bien entendu pas à l'apprentissage que le soucis se trouve, mais en fonction de l'utilisation du modèle qui en résulte en des licences des logiciels qui ont été utilisés pour l'apprentissage.

            • [^] # Re: superbe initiative de huggingface

              Posté par  (site web personnel) . Évalué à 6 (+3/-0).

              Pour un truc comme Copilot, il faut donc prouver que le code issu du logiciel est dérivé d'un bout de code de la base de données.

              Même pas dans la BDD.

              Copilot reproduit par accident un bout de code identique qui n'était pas dans son apprentissage, cela violerait la loi. De la même façon que si par hasard Midjourney reproduit une oeuvre de pop culture sans pour autant l'avoir dans son entrainement aurait le même problème. C'est peu probable, mais ça montre qu'on n'a pas besoin d'avoir les données d'apprentissage pour faire condamner. Le fait que ce soit dans l'apprentissage ou non pourrait influer probablement la sanction mais ne change pas la violation de la loi.

              Ça me semble impossible avec un LLM correctement paramétré.

              Je te trouve bien confiant sur ce point quand on voit justement ce que tous les LLM font à ce sujet jusqu'à aujourd'hui. En dehors de supprimer toute référence lors de l'apprentissage c'est difficile à éviter en tout cas à ce jour.

              Encore une fois, la propriété intellectuelle ne se dilue pas, la contrefaçon est binaire : 1% de contrefaçon, ça n'existe pas; il existe un seuil de divergence au-delà duquel l'auteur initial n'a plus de droits à faire valoir.

              Si si.
              Prends une image couverte par le droit d'auteur, prends en 50% à l'identique ou presque et change le reste. Tu tomberas sous le coup de la loi même si 50% est de toi. De même pour un morceau de films, livres, musique, etc.

              Le code n'est pas différent, si tu prends quelques fonctions non triviales directement d'ailleurs, tu peux avoir des problèmes même si le reste de ton code est fait maison.

              Au passage, il y a aussi une bizarrerie à résoudre : dans oeuvre dérivée, il y a "oeuvre". Or, il est admis que la sortie d'un LLM n'ouvre pas de droits d'auteurs parce que ça n'est pas une oeuvre de l'esprit. Il n'y a donc pas d'appropriation des droits d'auteurs par quiconque.

              Il n'y a pas besoin, cela n'autorise pas les LLM à générer tout ce qu'ils veulent et on le voit bien avec les affaires en cours.

    • [^] # Re: superbe initiative de huggingface

      Posté par  . Évalué à 4 (+2/-0).

      Comme mentionné dans le journal, ils expliquent que les utilisateurs doivent respecter les clauses d'attribution donc voilà, que les utilisateurs se démerdent. Leur position semble être que c'est pas trop risqué de faire un dataset basé sur du code avec des licences permissives (MIT, BSD) avec cette contrainte, et d'ailleurs ils ont exclu tout repository sous licence copyleft (GPL, LGPL, MPL, etc.). Par contre ils ont inclus les repositories sans aucune licence, alors que paradoxalement pas de licence veut dire "All rights reserved" en Français dans le texte. Donc ce choix me semble un peu douteux ?

      Sinon, outre le fait qu'il est probablement légitime de faire du code dérivé de licences libres et permissives et idéalement sans clause d'attribution (BSD-0, MIT-0, WTFPL et similaire), mon journal pose la question des données personnelles incluses dans le dataset. Il y en a une multitude, à commencer par le nom d'utilisateur github, les noms et les e-mails dans les blocs de copyright, etc. C'est le point principal que je fais dans le journal mais bizarrement vous ne réagissez pas sur celui-ci bien que vous "comprenez bien" le post ?

      Enfin, pourriez-vous expliquer ce qu'est l'"innovation responsable en IA"?

      • [^] # Re: superbe initiative de huggingface

        Posté par  . Évalué à 4 (+1/-0).

        En fait faudrait un modèle par type de licence ;)

        Il ne faut pas décorner les boeufs avant d'avoir semé le vent

      • [^] # Re: superbe initiative de huggingface

        Posté par  . Évalué à 2 (+0/-0).

        Comme mentionné dans le journal, ils expliquent que les utilisateurs doivent respecter les clauses d'attribution donc voilà, que les utilisateurs se démerdent.

        Quelle aurait était l'option « on le fait pour les utilisateurs » ?

        Il y en a une multitude, à commencer par le nom d'utilisateur github, les noms et les e-mails dans les blocs de copyright, etc.

        Je comprends mais quelle est la différence fondamentale avec pas mal de dépôt logiciels fdroid ?

        https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • # Et les commits ?

    Posté par  . Évalué à 4 (+2/-0).

    Je n'héberge pas sur github (enfin visiblement si, mais ça date), mais j'ai quelques commits qui trainent à gauche et à droite. Visiblement je suis dépendant de bon vouloir du propriétaire du repo.

  • # Dépots supprimés

    Posté par  . Évalué à 5 (+4/-0).

    J'ai supprimé mon compte github entre 2018 et 2019, et l'un de mes dépôts est bien dans ce machin.

    Deux points rigolos :

    • un autre compte avec mon ancien identifiant a été crée, et des dépôts du nouveau compte sont aussi présents, du coup je ne sais pas comment ils vont faire si je leur demande de supprimer tous mes dépôts
    • De toute façon, pour leur demander de supprimer mes dépôts, il faut un compte github, et je n'ai pas du tout envie d'en recréer un.
    • [^] # Re: Dépots supprimés

      Posté par  (site web personnel, Mastodon) . Évalué à 2 (+0/-0).

      Et si quelqu’un avait forké ton dépôt avant sa suppression, qui est considéré comme le propriétaire du dépôt cloné, selon le taux de modifications appliqué ?

    • [^] # Re: Dépots supprimés

      Posté par  (site web personnel) . Évalué à 0 (+0/-1).

      Le fait que ça demande un compte Github ne paraît pas idiot ;-)

      L'autre truc amusant, c'est l'inverse : si le "nouvel" utilisateur Github demande la suppression de ses dépôts, il va falloir qu'ils se demandent ce qu'ils font des tiens !

      • [^] # Re: Dépots supprimés

        Posté par  . Évalué à 6 (+4/-0).

        Le droit de retirer ses informations personnelles est garanti par le RGPD. Je ne vois pas en quoi le fait de ne pas être inscrit sur github dedoine le possesseur de ces données de ses obligations…

        • [^] # Re: Dépots supprimés

          Posté par  . Évalué à 2 (+0/-0).

          D'autant plus que le opt-out de toute façon ne s'applique qu'aux versions suivantes du modèle et que rien n'indique a priori (sauf erreur de ma part) que les anciennes versions, qui ne sont pas modifiées, ne seront plus téléchargeables quand une version nettoyée du modèle sera publiée.

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.