17

I am aware that the licenses of e.g. code on Github are currently not observed when training AIs and that there are licenses such as AGPL that require the code to be disclosed. But is there already a license that explicitly prevents use (for training) by an AI, and if not, should one strive for something like that? Would that make sense?

3
  • 1
    I do not think that there is an OSS license that specifically touches the topic of training AI. Does this answer your question? opensource.stackexchange.com/a/13878/24836 Apr 20 at 9:02
  • 2
    A license is only as good as your ability to enforce it. Which means, no.
    – SnakeDoc
    Apr 21 at 16:00
  • My question is what purpose such a restriction would serve? If your code is freely available anyway, then the AI is simply deconstructing it for use in examples, whereas a human programmer is more likely to simply copy and paste it. The AI using fragments of your code actually makes it more widely available and usable in more diverse applications, which is a good thing for software development in general.
    – oldtechaa
    Apr 23 at 4:01

5 Answers 5

34

The question here remains "is the AI model a derivative work of the training inputs?"

If it is, then all the AI companies are already in violation of copyright and you don't need a specific license for this.

If it's not - i.e. it is fair use - then a license saying "you may not use this to train an AI model" is irrelevant.

As of April 2023, the answer to the question is very much unknown; it will need to be decided on by courts, who may make different decisions in different jurisdictions.

1
4

If the output of an AI is a derivative work of its training input, then compliance with most existing licenses is likely to be difficult or impractical, because of the need for attribution, but this only affects distribution of the output and/or the model (it's currently unclear whether a problem with the output would also affect the model itself). It does not prevent you from creating a model for your own private use. Furthermore, a future AI might be "smart" enough to be able to attribute things correctly, and such an AI would be fully compliant with the relevant licenses. If a license wants to prohibit the use of private models and/or fully compliant models, then it would have to prohibit the training process itself (see next paragraph).

If the output of an AI is not a derivative work of its training input, then such a limitation would require the license to prohibit training, which is not compatible with our usual understanding of Free and Open Source Software. It violates freedom #1 of the Free Software Foundation's four freedoms ("The freedom to study how the program works, and change it so it does your computing as you wish") and OSD/DFSG requirement #3 ("The license must allow modifications and derived works..."), and possibly also OSD #10 ("No provision of the license may be predicated on any individual technology or style of interface"). This is not because the AI is "learning" anything, but rather because the AI could serve as a tool for a human to modify the code. By prohibiting AI, you are prohibiting that human from modifying that code with that tool, which is simply Not Done in FOSS licensing (imagine, for example, a license prohibiting the use of a particular IDE, compiler, or version control system).

We currently do not know whether the output of an AI is a derivative work of its input, so we don't know which of those two paragraphs applies.

1
3

There is this repo, which modifies popular open-source licenses to explicitly forbid the use of the source code in AI-training datasets:

https://github.com/non-ai-licenses/non-ai-licenses

1

Distribution of the model is a legal question on its own. It's not obviously computer code, or a work of literature, or any of the other things that can be copyrighted. It might be similar to perfumes, something that by omission simply is not covered by Intellectual Property laws. And if the model is not a work in the sense of copyright law, then the output cannot be a derivative work either.

3
  • 3
    I won't agree with the last sentence. You can have a trivial non copyrightable program, that outputs copyrighted work. Just think of cat copyrighted_work.txt with a trivial implementation of cat (I am aware that something like GNU cat is nontrivial). Then the program that just outputs the file contents is too trivial to be copyrighted, but its output may contain copyrighted works.
    – allo
    Apr 21 at 14:36
  • 1
    @allo: In the case of cat, the output is an automated transformation of the input. It's that input which is copyrighted, and which remains copyrighted through the automated, trivial transformation. But cat is not a neural network. Look for instance at a neural network that plays chess or go. Its output is a "transformation" of the input moves, but the complexity here is in the model and not the inputs.
    – MSalters
    Apr 24 at 7:43
  • 1
    That's another question. My comment was about if a non-copyrightable program may have a copyrightable output. Your last sentence was about the case when the model would not be a copyrightable work and my comment was only about that sentence. You comment seems more to be about if a program that stores a part of its code in a model (i.e. a part with a lot of magic numbers for its algorithm) has complexity or not and is also interesting but not what I commented.
    – allo
    Apr 25 at 8:31
-1

You might try Copy Far "AI" (full disclosure: I'm the current maintainer).

New contributor
rhatto is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.
1
  • That's not a free licence, because it restricts usage.
    – MadHatter
    2 days ago

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.