5 ms·
This should mean that all code written with the use of an LLM that was fed AGPL code must be released under the AGPL.
by pseudocomposer 3y ago
This should mean that all code written with the use of an LLM that was fed AGPL code must be released under the AGPL.
- hatenberg 3y agoTechnically you can’t copyright it. Proving that is the issue
- jppittma 3y agoThat makes sense to me. If you use GPL code to train your model, then everything that model produces is a derivative work of that GPL code.
- josephg 3y agoThis would be a fascinating argument to make in court.
- lo_zamoyski 3y agoBut what is derivative? When does being derivative w.r.t. the GPL mean? Can I copy a function from a GPL’ed project? What if I rename the variables? What if I re-order some of the lines in an inconsequential way? This starts looking like the software patent problem, or the ship of Theseus.
- anon291 3y ago> Can I copy a function from a GPL’ed project? What if I rename the variables? What if I re-order some of the lines in an inconsequential way? All of these are GPL violations if it can be shown you looked at a GPL function while copying this. On the other hand, if you came up with it on your own and it happened to look similar, then it's fine.
- lo_zamoyski 3y agoSo, if I looked at a function, understood it, then reproduced the function from my grasp (not necessarily verbatim, but by understanding the logical flow), would that be subject to the GPL? What if it varied? How much does it need to vary not to be considered derivative? If there is a threshold, then it is possible to rewrite the original code in ways that do not resemble the original code verbatim, but are effectively the same.
- jppittma 3y agoIf you come up with a model that works like that, then I think that would be worth discussing after you collect your Turing award.
- anon291 3y ago> So, if I looked at a function, understood it, then reproduced the function from my grasp (not necessarily verbatim, but by understanding the logical flow), would that be subject to the GPL? What if it varied? How much does it need to vary not to be considered derivative? That's an interesting question. In general, the answer is no, but could change depending on if you had the function open at the time of writing the new function. But a lot of us have knowledge of basic data structures, etc, from reading GPL-licensed code (or perhaps even proprietary code in textbooks). So, in general, coming up with your own understanding is fine.
- jpgvm 3y agoThe output isn't derivative, the model weights are.
- numpad0 3y agoThe entire model weight file is a "compiled GPL binary" and its partial outputs would be too. If we would follow GPL precedents, everything that the model generates would be.
- JonChesterfield 3y agoIf course you can copy a function from a GPL project. That's part of making a derived work. What with you deriving the function from the GPL project. The violation is where you subsequently pass it off as a novel creation.
- lo_zamoyski 3y agoBut can we get around the GPL by transforming a function, in trivial ways, to produce an equivalent function to avoid having it fall under "derived work"?
- 8organicbits 3y agoIf there's also MPL 1.1 licensed code in the training set then you end up in an impossible situation where you can't comply with both GPL and MPL 1.1 at the same time. https://en.m.wikipedia.org/wiki/License_compatibility https://en.m.wikipedia.org/wiki/License_compatibility
- JonChesterfield 3y agoIt is difficult to see an argument that the output of a language model is not derived from the language model, other than people would prefer it wasn't.
- amalcon 3y agoThis is tricky, though, because that LLM was likely also fed code with a license incompatible with the AGPL. So in theory, that code (whether source or compiled) may not be distributed under any license at all. Being hard to solve doesn't make a problem go away, though. This is a place where I'm somewhat curious where it ends up. Frankly I think the outcome is more interesting for artistic works (e.g. poetry or images) than practical ones like code, since current generations of AI seem so much better at the former. Still interesting either way.
- crest 3y agoThe other thing is that a bunch of stuff it auto-completes is way below any reasonable threshold for a copyrightable work even it bit for bit reproduces code from a piece of AGPL software. There are also only a finite sane number of ways to implement basic data structures like single- and double-linked lists in common per language. If I lay claim to the copyright for all of them should that prohibit anyone else from implementing the data structure (without unreasonable contortions)?