DeVault: GitHub Copilot and open source laundering
DeVault: GitHub Copilot and open source laundering
Posted Jun 24, 2022 16:36 UTC (Fri) by rgmoore (✭ supporter ✭, #75)In reply to: DeVault: GitHub Copilot and open source laundering by edeloget
Parent article: DeVault: GitHub Copilot and open source laundering
I absolutely agree that any code produced by Copilot that is a verbatim copy of anything from its training corpus would be a copyright violation, unless that piece fell under one of the established limits on copyright, such as purely functional material that has a restricted number of ways it can be expressed or a snippet that's too small to be considered expressive. Material that's suspiciously similar to something in the training corpus would be at least deeply suspect. But that would be true whether it comes from Copilot or from a human programmer. If your code is a copy of someone else's, it's a copyright violation regardless of how it got that way unless it isn't eligible for copyright in the first place.
The problem with trying to restrict Copilot (and similar programs) is threefold:
- Existing copyright law allows authors to be exposed to and influenced by existing works. For example, if I read the source code to the Linux kernel, my brain does not become tainted by the ideas therein, making any program I write a derivative of the Linux kernel. The same thing would seem to apply to teaching a ML model on existing software.
- To the extent using your code as a training corpus would be considered copying, it would likely be considered to be a sufficiently transformative use that it would fall under fair use. Their ML model is a completely different thing from your original program and serves a completely different function. That is pretty much the definition of a transformative use.
- Specifically regarding Free Software under the FSF guidelines, one of the essential freedoms of free software (freedom 1) is the right to "study how the program works". Software that is licensed under a FSF license has accepted this as a fundamental principle, and it seems to me that it absolutely applies to using the program as part of a teaching corpus for a ML model.
Again, this applies only to training the model. The output of the model is a different thing and may be a copyright violation even if the model itself isn't.
