• [^] # Re: Clarification bienvenue

    Posté par . En réponse au lien Judge dismisses DMCA copyright claim in GitHub Copilot suit. Évalué à 7.

    Les lois ont été écrites pour les humains, selon ce qu'ils sont capables de faire, alors que les LLM ont la capacité d'ingérer des quantités de données sans commune mesure

    Je ne vois pas le rapport. La loi définit la contrefaçon et les peines encourures pour contrefaçon. Or, la sortie des LLM ne correspond pas à la définition de la contrefaçon (ce n'est pas une copie ou un travail dérivé). Tout ce qui n'est pas interdit par la loi est légal, et les LLM sont donc légaux.

    Bien sûr, il est possible de changer les lois, et ça sera peut-être fait. Mais ça ne change rien au fait que le fonctionnement des LLM qui mangent des bases de code libre en entrée et qui recrachent du code sans auteur et sans copyright semble légal.

    S'il existe déjà un bout code de taille significative qui fait grosso modo ce que le développeur souhaite, je m'attend à ce qu'il soit repompé d'une manière qui ne serait pas autorisé normalement sans LLM.

    Tu t'attends mal. Tu ne sais pas comment fonctionnent les LLMs, ce qui n'est pas très grave en soi, mais tu te trompes sur la manière dont ces algorithmes fonctionnent. Ils ne recopient pas des morceaux de code, ils intègrent la logique des données sur lesquelles ils s'entrainent dans un réseau de neurones. Du coup, les bouts de code que tu lui as donnés ne sont pas stockés par le LLM, il n'en extrait qu'une sorte de logique générale. Il fait ensuite passer les requêtes à travers son modèle, et te revoit la sortie.

    Ce que tu mentionnes existe (le modèle recrache les données d'entrainement verbatim, comme un moteur de recherche), mais c'est un comportement pathologique (non-souhaité et non-souhaitable): le modèle a été sur-paramétré, le réseau n'a pas été entrainé avec assez de données, et il "colle" trop aux données d'entrainement. Tu peux aussi "provoquer" ce comportement avec des requêtes trop spécifiques (par exemple, au lieu de "tri à bulle", tu demandes "tri à bulle en 5 lignes avec des variables qui s'appellent Titeuf et Koko, et avec une erreur de logique à la ligne 3"). Mais ça reste un comportement buggué, auquel justement tu ne devrais pas t'attendre.

    Ouais, ça c'est l'argument pour déréguler la possession une arme à feu en prétendant qu'un outil est innocent et qu'il faut se contenter de condamner une mauvaise utilisation.

    On ne parle pas de déréguler les armes à feu, on parle de savoir si la sortie des LLMs peut être considérée comme de la contrefaçon. La loi n'est pas magique, elle interdit certaines choses, et ce qui n'est pas interdit est autorisé. Les licences copyleft sont explicitement publiées pour autoriser l'étude du code, ce que font les LLMs. Elles n'autorisent la publication de versions modifiées que si la même licence est appliquée. Or, les LLMs ne modifient pas le code, elles l'étudient et intègrent leur logique dans un réseau de neurones, qui peut être par la suite utilisé pour générer du code qui diffère du jeu de données d'entrainement (si c'était le même, ça ne serait qu'un moteur de recherche).

    Mais LLM ne sont rien d'autre qu'un outil de copiage sophistiqué dont on ignore la source.

    Si tu crois qu'un LLM est un moteur de recherche sophistiqué, tu ne peux pas comprendre pourquoi la licence n'est pas conservée en sortie. Mais je ne peux pas l'écrire différemment : un LLM n'est pas un moteur de recherche. C'est un algorithme qui génère quelque chose à partir de patterns qu'il a appris d'un jeu de données. Il ne ressort pas les données, il crée des données nouvelles qui correspondent à une structure qu'il a induite de ses données d'entrainement.

    Même si l'utilisateur souhaite respecter les licences, il ne peut pas le faire.

    Ça tombe bien : il n'y a aucune licence à respecter, puisque la sortie du modèle n'est pas un travail dérivé ou une contrefaçon. J'ai l'impression que ce qui n'est peut-être pas clair, c'est que tu peux mettre du 100% GPL en entrée, et que la sortie n'a pas de licence. Pourtant, c'est comme ça que fonctionne la propriété intellectuelle. Quand tu apprends à lire, tu mets du 100% copyright en entrée, et ce que tu écris t'appartient à 100% (sauf si tu as copié). Quand tu es musicien, tu mets du 100% de copyright en entrée, et ce qui sort t'appartient à 100% (sauf si tu as copié). Le fait de combiner de multiples sources d'influence ne crée pas quelque chose qui appartient à quelques % à ces sources, ça crée quelque chose qui ne leur appartient plus. C'est comme ça que ça marche avec les humains, et c'est comme ça que ça marche avec les LLM, qui fonctionnent selon le même principe.

    Tu peux penser que ça devrait fonctionner autrement, et on pourrait avoir une discussion sur ce sujet. Mais actuellement, à mon avis, la seule interprétation possible de la propriété intellectuelle est que la sortie des LLM n'est ni de la contrefaçon, ni une œuvre originale (puisque pas créé par un humain), et que sa publication ne peut pas être illégale (puisque pas interdite par la loi).

    Je ne supporte pas le fait que du code publié en GPL finisse aussi facilement dans des projets non-GPL. Et je suis d'autant plus mécontent que je maudis les LLM.

    J'ai bien compris ton opinion, mais je pense (c'est mon avis) que c'est ton incompréhension de ce qu'est la propriété intellectuelle, de ce qu'est la GPL, et de la manière dont les LLM fonctionnent qui te porte à croire ça.

    Pour ma part, j'ai du code GPL dans Github et il est donc probable qu'il a été utilisé pour entrainer de nombreux modèles de langage, et ça ne me dérange pas, parce que 1) la possibilité d'étudier et d'apprendre à partir du code est explicitement autorisé et encouragé par la GPL, 2) que la très grande majorité du code que j'ai écrit est trivial et qu'il ne pourrait pas raisonnablement être considéré comme une œuvre de l'esprit devant un tribunal (et donc que la licence que j'ai attribuée au code n'a probablement pas de substance légale), 3) que je n'ai aucun moyen de savoir si une sortie des modèles de langage a été influencée par un bout de réseau pour lequel mon code a affecté les paramètres (en gros, un bout de code qui ressemble au mien a peut-être 9 chances sur 10 de n'avoir aucun lien causal avec mon code, que mon code n'a peut-être pas été inclus dans la base pour une raison ou pour une autre), ce qui prouve bien que ça n'est pas de la contrefaçon (si même moi je ne peux pas savoir, alors comment quelqu'un d'autre le pourrait?).

    je maudis les LLM.

    Je serais intéressé de savoir si c'est parce que tu penses que leurs résultats sont médiocres ou inutiles, ou inversement parce que tu te sens humilié en tant qu'être humain par l'existence d'algorithmes capables de faire mieux que toi ce que tu pensais maitriser. Étrangement, j'ai l'impression que beaucoup de gens sont sur les deux options en même temps, ce qui me semble assez instable comme point de vue.

    L'idée de détester les trucs nouveaux qu'on a du mal à comprendre et qui peuvent modifier l'équilibre de notre vie n'est pas nouvelle, elle est probablement aussi vieille que l'humanité. Mais j'imagine que tu es déja au courant que cette idée n'a jamais gagné; que les nouvelles générations vont s'approprier cet outil et réussir à faire des choses avec, et que tu finiras tes jours malheureux en ronchonnant que c'était mieux avant?

    On voit d'ailleurs que la révolution IA n'a pas encore eu lieu. Les LLM servent beaucoup à générer du bullshit publicitaire, des articles de faux journaux, ils servent aux étudiants à tricher, et à tout un tas de gens incompétents de faire croire qu'ils savent faire des choses dont ils sont incapables (écrire du code, écrire une lettre sans faire de faute, ou dans une langue qu'ils ne connaissent pas, etc). Nul doute qu'il existe une utilité marginale à de tels outils (pour remplacer la doc des logiciels, typiquement), mais à ma connaissance, la productivité du secteur tertiaire n'a pas pris 75% en un an. Aucune raison de paniquer, aucune raison de détester un nouvel outil, aucune raison de croire que le monde va changer.