Pour contribuer à la discussion, je vous partage ce site ressource sur les licences contributives qui a déja creusé pas mal le sujet et les questions explorées plus haut, vous n’y trouverez pas de réponses toutes faites, mais de bonnes pistes de réflexion.
Je relance le sujet (s’il y en a un autre mieux adapté, désolé, je peux déplacer mon post), non pas sur les clauses éthiques, qui peuvent être effectivement complexes à interpréter (et difficile aussi d’assurer la compatibilité entre deux licences éthiques, ce qui est une force du logiciel libre aussi c’est de pouvoir un peu mixer certaines licences compatibles), mais sur les clauses anti-IA.
L’idée est d’adopter une licence existante, et d’y adjoindre une simple clause comme celle-ci :
In addition to the software license, the following restrictions apply
The Software and any modifications made to it may not be used for the purpose of training or improving machine learning algorithms, including but not limited to artificial intelligence, natural language processing, or data mining. This condition applies to any derivatives, modifications, or updates based on the Software code. Any usage of the Software in an AI-training dataset is considered a breach of this License.
The Software may not be included in any dataset used for training or improving machine learning algorithms, including but not limited to artificial intelligence, natural language processing, or data mining.
Any person or organization found to be in violation of these restrictions will be subject to legal action and may be held liable for any damages resulting from such use.
(recopié de je sais plus où, désolé pour l’auteur⋅e)
C’est une restriction assez simple et claire qui empêche uniquement l’apprentissage et la lecture du code par des IA/LLLM/data mining. Data mining ça peut d’ailleurs être compris comme étant juste l’utilisation d’un compteur de lignes de code exemple, donc peut-être que ce critère est à virer car un peu trop large.
Je pose la question car je songe à changer la licence publique de Paheko (j’ai proposé le sujet en discussion en interne).
Mon inquiétude pourrait être que ça froisse certains CHATONS pour qui les valeurs du libre sont importantes (et je suis d’accord).
Mais on pourrait aussi proposer Paheko sous double licence : libre pour les CHATONS/copaines, et avec cette clause pour le grand public. Après tout il y a beaucoup de logiciels qui sont dispo en double licence : libre commerciale (payante) / restreinte pour les autres. Ça ne serait pas très différent au fond…
Data mining ça va loin effectivement, et ça comprend un paquet de trucs hors IA / LLMs. J’ai l’impression que poussé à l’extrême ça empêche tout lecture / traitement par des machines - et ça c’est chaud. En plus, les data sets ils peuvent aussi servent à des trucs bien (e.g. la gentille recherche en génie logiciel), et ça pourrait concerner des gens cool comme Software Heritage [1], je sais pas si tu veux expressément les interdire.
De manière générale j’ai peur que ça ne soit pas défendable (surtout la partie data mining) parce que trop vaste – les trucs qui sont défendables en justice (sauf à avoir une armée d’avocats, justice à deux vitesses tout ça, …) sont les trucs qui sont clairement bornés.
Si tu enlèves data mining, ça me semble (humblement, hein, IANAL encore) plus jouable, plus compréhensible, tout en respectant la première partie de la phrase (i.e. en enlevant data mining tu interdis encore l’IA, même en dérivé, càd même s’ils s’appuient a posteriori sur le dataset autorisé).
[1] Software Heritage ils ont des clauses super exigentes pour l’utilisation de leur archive par les IA, c’est hyper bien bordé, donc 1. le risque d’utilisation par IA est faible chez eux, et tu peux opt-out (je me demande même si c’est pas du opt-in), 2. ça vaudrait le coup de jeter un oeil à leurs positionnement sur l’IA, puisqu’ils ont bien bossé dessus et il y a probablement des éléments intéressants, et 3. c’est quand même bien d’avoir ton code libre archivé par eux je pense, pour plein de raisons (mais c’est une opinion perso, à toi de voir).
Pour la partie double licence, je ne vois pas trop comment tu ferais pour dissocier les deux usages entre licence libre chatons et licence pas libre IA, et surtout comment tu pourrais l’établir / le prouver. Pour une licence duale commerciale / libre, il faut prouver que la boîte a utilisé ton code, c’est déjà pas simple, mais c’est jouable. Dans le cas d’un LLM à ma connaissance on n’a aucune manière de savoir si ton code a été lu lors de l’entraînement, et donc tu ne pourrais jamais démontrer qu’ils ont enfreint la licence.
A noter aussi que les scrappers et autres BS IA n’en ont absolument rien à faire de la licence (rien de nouveau), mais surtout que même des organisations ultra-puissantes de « protection du droit d’auteur », ici et outre-atlantique, n’ont pas réussi à changer la done. Et ça, vu leur puissance de frappe et de lobbying, c’est un marqueur…