5 ms·
I read most of the complaint. The only examples of supposed copyright infringement are isEven and isPrime functions. Here's what Copilot gives me in a Typescrip
by williamcotton 4y ago
I read most of the complaint. The only examples of supposed copyright infringement are isEven and isPrime functions. Here's what Copilot gives me in a Typescript file:
function isPrime(n: number): boolean {
for (let i = 2; i < n; i++) {
if (n % i === 0) {
return false;
}
}
return n > 1;
}
function isEven(n: number): boolean {
return n % 2 === 0;
}
These are clearly not covered by copyright in the first place. This case is really quite pathetic.
- echelon 4y agoMoreover, if this case wins, it threatens to disrupt one of the biggest technological progressions of all time. AI/ML will change every field just as the Internet and smartphones did. It doesn't show any indication of peaking, either. If the US chooses the wrong path here, we'll only tie our hands behind our backs. Other countries won't be so foolish. We should be able to train on any media a child could see, hear, or read.
- still_grokking 4y agoEspecially the copyright / IP obsessed USA won't go this path. Otherwise they would create the ultimate "copyright laundry machine".[1] I'm very sure at least Hollywood and the big music labels would not like that… ;-) [1] https://news.ycombinator.com/item?id=33459967 https://news.ycombinator.com/item?id=33459967
- ranguna 4y ago> it threatens to disrupt one of the biggest technological progressions of all time. Chill dude, all they have to do is include the licenses on their generated code. If anything, this is going to generate even more progress. The copilot team would have to create some kind of feature that would connect the generated output the the relevant training data. That'd be pretty incredible to see in the field of AI/ML in general.
- WithinReason 4y agoThey already have that feature and you can turn it on
- ranguna 4y agoAh great, then it should be on and with no way to disable it. Of course, end user could just strip the license/attribution off their generated output, but that's a different story.
- bobbruno 4y agoIf they can actually link output to specific input, the lawsuit has merit and more, GPT-3 is a lie. A neural network is supposed to learn how things work, not memorize a large number of examples and spit them out verbatim - or keep connections to specific inputs. Copilot losing the lawsuit is evidence it’s a case of overfitting, not true ML.
- ranguna 4y agoMind you, not all outputs are the result of over fitting.
- visarga 4y agoNot just AI is threatened, but also the use of sites like StackOverflow because some of those snippets might infringe a license. So we have to write everything from our heads, de novo. No more googling for solutions. I think we should just relax copyright, it's dying anyway. Language models allow people to borrow skills learned from other people, and solve tasks. That's huge. Like Matrix, loading up a new skill at the press of a button. Can we give up such a huge advantage in order to protect copyright? I think the notion of copyright has been under attack already for 2 decades by the internet, search engine and social networks. They all work against it, and AI does it even more. It just encapsulates the whole culture in a box, mixing everything up, all copyrights melting away, everything one prompt away. This could be a new medium of propagation for ideas. No longer limited to human brains and books, they can now propagate through language models more efficiently.
- TAForObvReasons 4y agoYou didn't read the relevant part of the complaint. It starts on document page 14 (PDF page 17). There's a clear footnote: > Due to the nature of Codex, Copilot, and AI in general, Plaintiffs cannot be certain these examples would produce the same results if attempted following additional trainings of Codex and/or Copilot. The offending solution from the AI included extra lines that are reasonably understood to come straight from Eloquent JavaScript: console.log(isEven(50)); // → true console.log(isEven(75)); // → false console.log(isEven(‐1)); // → ??
- williamcotton 4y agoSure, those comments might be considered infringement, but that's from an earlier version of Codex. Copilot does not return that code. The complaint even says so.
- TAForObvReasons 4y agoThere are many public examples of that same effect happening (for example https://twitter.com/mitsuhiko/status/1410886329924194309 https://twitter.com/mitsuhiko/status/1410886329924194309 ), and the legal team has been soliciting for more examples. Those examples are likely to come out if it does go to trial.
- williamcotton 4y agoIf this legal team was interested in this going to trial you think they would have put together a stronger case instead of risking that it won’t be heard. There’s not even a single mention of any established legal doctrines around copyright and software, such as abstract-filter-compare, idea-expression dichotomy, etc.
- deleted 4y ago[deleted]
- freejazz 4y ago
- gus_massa 4y agoThat isPrime function does not even cut at sqrt(n). Asking for the state of the art isPrime function is too much, but the sqrt trick is the very first step and it's free. (IIRC, the faster version uses i*i<n)
- deleted 4y ago[deleted]
- nequo 4y agoI have only skimmed. But lines 23 and 24 on page 23 also reference Copilot's autocompletion of Quake III's `Q_rsqrt`[1] and mention that it is under GPL2. [1] https://news.ycombinator.com/item?id=27710287 https://news.ycombinator.com/item?id=27710287
- williamcotton 4y agoI doubt that anything other than Carmack's comments are covered. See the "Filtration" section: https://en.wikipedia.org/wiki/Abstraction-Filtration-Comparison_test https://en.wikipedia.org/wiki/Abstraction-Filtration-Compari... "In computer programs, concerns for efficiency may limit the possible ways to achieve a particular function, making a particular expression necessary to achieving the idea. In this case, the expression is not protected by copyright." "Finally, material that exists in the public domain can not be copyrighted and is also removed from the analysis." That code is specifically optimized for efficiency and there were similar approaches floating (get it?) around in the 1980s.
- rrobukef 4y agoThe magic-constant is not optimal there exist better alternatives. It is not necessary to implement this function and should be copyrightable. It is also not a trivial part. On the other hand, Microsoft may only need to show "Hey, we got this code from FooBar under this license and this license and ..."
- rat9988 4y agoWhy should it be copyrightable. It's just a way to calculte inverse square root. This falls under the public, in my non lawyer opinion. Such small snippets do not qualify, usually, for copyright.
- rrobukef 4y agoIt's not just the constant but it was easiest to identify for me in the last post. And due to it's popularity the size of the snippet doesn't matter, it stands on its own as a significant work. The essence of the algorithm takes 4 lines: function declaration, declaration of 'y', one line for calculating the exponent in log-space, one line for returning the root finding. The rest is fluff. Every line of the snippet has creative input with the chosen names ('threehalfs' for 1.5F), the order of declarations and instructions, the redundancy. There have been internet-wars around indentations and newlines, these are style choices. ((And it is public -- GPL more specifically, which is a restrictive license that should be respected. I think this snippets makes a perfect example of the dangers of copilot. But not one to litigate details with.)) (((Thinking back, I'm not sure anymore how the license laundering argument works if they got the code from a fair-use MIT-licensed hobby project. Can one person claim fair-use and include it under an MIT-license and have somebody else say 'oh this free code I'm going to use it commercially'?)))
- eslaught 4y agoCorrect me if I'm wrong. I don't think this document needs to be a comprehensive record of every piece of copyrighted material that Copilot or Codex produce. That's something that will be produced during/for the trial process itself. Right now, this is just establishing the basic premise, and the claims for the type of behavior that is going on. I think they intentionally picked (literal) textbook examples because they're short and easy for non-experts to grasp and have some understanding of. But I don't think we've seen any of the code from the respective J. Doe's yet, and I would assume we would in the trial (possibly in addition to more cases).
- deleted 4y ago[deleted]
- elikoga 4y agoWhen searching for "console.log(isEven(50));" "// → true", which is one of the parts that the complaints is about, since this is also reproduced inside a Programming learning book: We get with cs.github.com " Showing 1 - 20 of 66 files found (in 76 milliseconds)" So, if this lawsuit succeeds in some way shape or form, does the author have a case against the 66 people that reproduced these lines in their own repository?
- ranguna 4y agoThey can already sue those people if they don't follow the original license, they just need to file a complaint individually to each author, I think. Standard OSS license stuff, or else, why would people even use licenses?
- HeavyStorm 4y agoAnd who enforces that?
- ranguna 4y agoThe owners of the original work
- WithinReason 4y agoYou could argue that if the author pursued enforcing their licence over those 66 people their code wouldn't have ended up in the training set in the first place. IANAL but I recall that you can't invoke copyright law to selectively enforce it, copyright is only protected if the holder pursues every violation of it. Maybe it works the same for enforcing a licence.
- teddyh 4y ago> I recall that you can't invoke copyright law to selectively enforce it, copyright is only protected if the holder pursues every violation of it IIRC, that is wrong. What you are describing is trademarks, not copyright.
- ksaj 4y agoI tested co-pilot initially with Hello World in different languages. In Lisp, it gave me verbatim code from a particular tutorial, which was made obvious because their code had "Hello <tutorialname>" where <tutorialname> was the name of a YouTube tutorial, instead of the word "World." It was surely slurped into the model via someone who had done the tutorial and uploaded their efforts to Github. Mind you, it's pretty much the way everyone would code it, but the inclusion of <tutorialname> is definitely an issue. So it isn't too hard to prove the case.
- jpollock 4y agoThose are quite copyrightable, in the same way that rangeCheck() is copyrighted.