6 ms·
We don't need the copyright traps here though as Github openly admits to using the public code for training. They just don't care that they're essentially licen
by tedivm 4y ago
We don't need the copyright traps here though as Github openly admits to using the public code for training. They just don't care that they're essentially license laundering code since they can make money doing it.
That said we used copyright traps at Malwarebytes, which is how we found out that iobit was stealing our database.
- peytoncasper 4y agoWhat happens if GitHub didn't use GPL licensed code, but still generated code that was identical to GPL licensed code?
- layer8 4y agoThey’d have to prove to the court that the former is true despite the latter happening, which I imagine would be difficult to do in practice.
- tedivm 4y agoWe know that isn't the case because we can see code being reproduced even with comments, and Github has been open about the fact that they used everything they had in training. That said, lets say there's a new model that explicitly excluded closed source and copyleft licenses. Well, the MIT, MPL, Apache, BSD- they all say you can't strip their licensing off. Okay, so to get to the spirit of your question, lets say Github managed to program a model that worked using only their own code or code that was explicitly put in the public domain. If Github managed to reproduce code that wasn't in the training set, then it can't be accused of copying it. At that point the argument could be made that it independently created it. At the same time algorithms can't be copyrighted, but implementations of an algorithm can be, so if Github was basically just spitting out an algorithm that just happened to be implemented similarly to how some other code it wasn't trained on implemented it, then I would say there was no copyright violation.
- bryanrasmussen 4y ago>We know that isn't the case because we can see code being reproduced even with comments If the comment is something like //check fromIndex is greater than toIndex then that is not any more individualistic or different than the actual function. Sadly, many people comment like this, on the other hand if it reproduced a comment with typos or something more complicated like /* this hack is because Firefox's implementation of SVG z-indexing does not match how Chrome or Safari does it - please read this article ...url...*/ then yeah, then you would have something
- marginalia_nu 4y agoWell yeah, we've already seen exactly this: https://twitter.com/StefanKarpinski/status/1410971061181681674 https://twitter.com/StefanKarpinski/status/14109710611816816...
- theRealMe 4y agoIn almost any other scenario this would be evidence. But Fast Inverse Square Root isn’t some tightly held secret. That exact code, with those specific comments included, is found in the Wikipedia page for that algo: https://en.m.wikipedia.org/wiki/Fast_inverse_square_root https://en.m.wikipedia.org/wiki/Fast_inverse_square_root
- nextaccountic 4y agoThe usage in Wikipedia is probably fair use, but it's still copyrighted, even without being a secret
- marginalia_nu 4y agoYeah, it's still GPL though.
- theRealMe 4y agoTrue.
- 4y ago
- visarga 4y agoHow about rewording a code snippet so it doesn't exactly replicate the source, but is functionally identical? Could be applied before training. Can we say the LLM only learned the ideas not the expression? Copyright should protect expression and not restrict reusing ideas.
- janoc 4y agoExcept that's not how LLM works. LLM has no idea about "ideas", only probabilities of how certain words string together. So you literally can't make it produce functionally identical but not verbatim identical code. It doesn't understand that the two are equivalent. Also, such "functionally identical but not violating copyright" transformation is not possible to do, both given the complexity of the problem and the sheer volume of the data. And training it on some simplistically obfuscated code wouldn't help - all it would learn would be production of obfuscated code. Not useful for the intended use.
- chii 4y ago> It doesn't understand that the two are equivalent. it doesn't need to understand the way a human might do the understanding. The pattern that the LLM managed to extract could include the structure, rather than the pure text. And in reproducing the structure, the LLM can replace the variable names but keep the structure intact. I am not sure if copilot is able to do this, but chatGPT was somewhat able to (if imperfectly at the moment).
- belorn 4y agoCopying a piece of code and changing the variable names is still a copy. It is similar to how copying a piece of music and changing the pitch/volume/any other attribute would still be a copy of the original music. The thing that the LLM need to do is to convince a judge/jury that it has not created a copy, and that it operate differently from a transformation.
- nextaccountic 4y ago> So you literally can't make it produce functionally identical but not verbatim identical code. It doesn't understand that the two are equivalent. But it does - similar but not identical code are closer in the embedding space
- deleted 4y ago[deleted]
- concordDance 4y agoUsing for training doesn't mean its reproduced. Consider a junior dev who writes a range check function while working for a company (so they own the copyright) then goes to a different company and writes the same range function because that's just how he writes code. Has copyright been infringed?
- Swenrekcah 4y agoThat programmer definitely reproduced the code, so if copilot does the same that’s definitely reproduction. Then the legalities can be argued, but an individual is in any case not remotely comparable to a service like copilot.
- seadan83 4y ago> Then the legalities can be argued, but an individual is in any case not remotely comparable to a service like copilot. Why is this? Copilot in some ways is an automated way to search code & stack overflow. There is a very annoying website that does nothing more than show relevant code samples of various google search terms. If the manual version of something is okay (eg: googling for code, finding it, fitting for a new and specific purpose that is similar), why would an automated version of that be any different?
- okamiueru 4y agoBecause of the license the code is under?
- Swenrekcah 4y agoFor a similar reason that camera surveillance can be forbidden in places where people are still allowed to keep their eyes open. Or sending millions of messages in an automated way can be illegal but millions of people sending a message is not.
- seadan83 4y agoI'm confused by the forbidden surveillance example. Generally surveillance camera's are legal for any place where there is no expectation of privacy. The expectation of privacy is largely only ones home, outside of that you can be video taped all day long by anyone. I'm not sure how this is analgous.. The million messages example is interesting. Though, what examples are there? In what cases is something legal to do it once, but there is some threshold where you cannot do it many times? The "sending millions of messages" is only perhaps illegal because it breaks terms of service. Or, the one message is perhaps also illegal but nobody cares to pursue litigation for one instance of an infraction. The point remains though, if an individual does something once that is legal - it makes that activity legal, period and full stop. No?