10 ms·
Software licenses have barely been tested in court, let alone how they apply to code injected and combined with other code via machine learning. You're extremel
by xxpor 5y ago
Software licenses have barely been tested in court, let alone how they apply to code injected and combined with other code via machine learning. You're extremely overconfident about how this will actually play out.
For one, just because your code is covered by the GPL, it doesn't mean every single line in isolation is copyrightable. It has to demonstrate creativity. That's why you don't have to worry about writing for (int i = 0; i < idx; i++) {.
- bluGill 5y agoWhile they are not tested, anything other than accepting the idea kills the idea of software completely. There is lots of room to change details, but somehow copyright and the fact that the code is copied into computer memory needs to be reconciled.
- xxpor 5y agoI don't see how. It might kill specific ideological licensing of software code, but the idea it'd kill software as a whole is pretty unbelievable. Software is too valuable to society. As we're seeing, there's VERY little software where the specific algorithms or ideas in the software are what's valuable. The value comes from the ability to sell a service based on the software and operate it at scale. Like you said, how much SaaS is mostly open source stuff packaged up? Android is (sort of) open source, companies pay lots of people a lot of money to contribute to the Linux kernel where they give away the code they developed with that money, etc etc.
- api 5y agoWhat about non-traditional-FOSS licenses? There is a lot of source-available not-OSI-compliant licensed software on GitHub like MongoDB, CockroachDB, etc., and that's clearly proprietary. If this thing is trained on that and generates what amount to snippets of that code then it's clearly violating those licenses. Then there's private repositories. If they included those in the training data set that's even more actionable. Personally I think this is software piracy at an absolutely unprecedented scale. Machine learning is just information transfer from the training data into weights in a model, a close relative of lossy data compression. Microsoft is now reselling all its GitHub users' code for profit.
- Wowfunhappy 5y agoPrivate repositories weren't included in the training data per-github, only public repos. This really doesn't give me much comfort though. Making a repo public doesn't imply anything, it could be "All rights reserved".
- alpaca128 5y ago> it doesn't mean every single line in isolation is copyrightable Microsoft did not just copy individual lines. They fed whole repositories into their model, ignoring the license (if it exists) even though they knew from the start that information generated by the model will be publicly available. Available usually out of context, but nonetheless - the scope of the input and intent are very clearly "everything" and "redistribution". Just adding a filter/ML model to the output shouldn't matter. I dare you to build a Copilot clone trained from leaked internal Microsoft code and then trying to argue the output is a bit mixed up. That is a clear violation imho.
- google234123 5y agoCopilot was trained on leaked internal Microsoft code that's on github at the moment. Anyway, everyone seems perfectly ok with training langauge models on copyright text.
- leereeves 5y agoIf a trained language model exactly reproduces copyrighted text, is there any question about whether copyright still applies?
- TchoBeer 5y agoThis is a useless hypothetical, no language models do that
- heavyset_go 5y agoAnd yet there are plenty of examples of Copilot reproducing copyrighted code verbatim, like is does in this example[1] that was posted on HN. [1] https://twitter.com/mitsuhiko/status/1410886329924194309 https://twitter.com/mitsuhiko/status/1410886329924194309
- jen20 5y agoThis is precisely what Copilot does, regularly.
- ghoward 5y agoYou're right that code has to demonstrate creativity for copyright. But that also means that an algorithm, even a transformative algorithm, cannot change copyright because an algorithm is not creative, by definition. This means that the output of any algorithm on copyrighted code is still under the original copyright. I mean, we still apply the copyright of the original to the output of compilers, even though compilers can be transformative with inlining and link-time optimization, to the point that it mixes disparate code in the same way Copilot does. In fact, I wrote some software licenses [1] that codify the fact that algorithms cannot change copyright. [1]: https://yzena.com/licenses/ https://yzena.com/licenses/
- gradys 5y agoYou sound very confident about this, whereas copyright lawyers I've read discuss this issue seem much less confident overall, but lean toward thinking this would be fair use. What makes you so confident that this would not be ruled fair use? (And for people not familiar - if ruled fair use, it doesn't matter what the license is because fair use is an exception to copyright itself.)
- ghoward 5y agoI have a feeling you did not read the FAQ of the licenses. I don't blame you, but they explain my position. Here's the relevant quote: > GitHub is arguing that using FOSS code in Copilot is fair use because using data for training a machine learning algorithm has been labelled as fair use. [1] > However, even though the training is supposedly fair use, that doesn’t mean that the distribution of the output of such algorithms is fair use. My licenses say, basically, "Sure, training is fair use, but distributing the output is not." The licenses specifically say that the copyright applies to any output of any algorithm that uses the source code code as all or part of its input. Now, I have not gotten a lawyer to look at my licenses yet (it's in the works), so don't use them yourself. But because everyone keeps saying that training is fair use, I'm fairly confident that only training is fair use. Of course, it might not be, but that would take more court cases and more precedent. I wanted to poison the well now [2] to make companies nervous about using a model that was partially trained with code licensed under my licenses. [1]: https://valohai.com/blog/copyright-laws-and-machine-learning/#fairusedoctrineintheus https://valohai.com/blog/copyright-laws-and-machine-learning... [2]: https://gavinhoward.com/2021/07/poisoning-github-copilot-and-machine-learning/ https://gavinhoward.com/2021/07/poisoning-github-copilot-and...
- sangnoir 5y ago> You're extremely overconfident about how this will actually play out. I'd argue Microsoft too, was/is overconfident about how this would play out. I would have expected a little more caution on selecting the training data.
- hodgesrm 5y ago> Software licenses have barely been tested in court... OSS licenses have been litigated and upheld. Can't supply details of my own experience for confidentiality reasons but plenty of plaintiffs have prevailed in suits about violations of OSS license terms. My guess is the numbers are higher than you might think because a lot of the cases end in non-public settlements.
- sjy 5y agoA confidential settlement does not mean that a licence has been “tested in court” or “litigated and upheld.” It means the parties thought the risk of losing was high enough to justify a settlement. The state of the law remains uncertain because cases are getting settled rather than litigated.
- hodgesrm 5y agoTechnically you are right, but the fact that defendants knew they were at high risk of losing means such licenses have teeth.
- austincheney 5y agoA software license, like any license, is a permission to operate. > it doesn't mean every single line in isolation is copyrightable It is if you can prove reproduction apart from your own original work (fair use). Unlike patents copyright doesn’t protect uniqueness. It is only a shield from reproduction, and if reproduction is demonstrable to a court you are likely at risk. https://cws.auburn.edu/OVPR/pm/tt/copyrightvplagiarism https://cws.auburn.edu/OVPR/pm/tt/copyrightvplagiarism
- josefx 5y ago> it doesn't mean every single line in isolation is copyrightable. copilot is known to reproduce entire blocks of text including non functional parts like comments.