Live data from Hacker News

GitHub Copi­lot inves­ti­ga­tion

githubcopilotinvestigation.com

251–260 of 1001 posts

Re: GitHub Copi­lot inves­ti­ga­tion

#251
post #163

Earlier quoted context omitted.

> "look I prompted CoPilot for this piece of code that I already knew about and it spit it right out" https://twitter.com/docsparse/status/1581461734665367554 An english description plus three characters of a function name is enough to coax CoPilot into distributing LGPL-licensed code out of context, without a proper license. That's neither "emotional" nor "cherry-picked", it's a clear-cut license violation.

I mean, he clearly knew about that code in advance and used his prior knowledge to coax Copilot into spitting it out, yeah? Three characters can get you pretty far, that's 1 combination out of 125,580 (considering all english letters, upper and lower, along with most of the numbers and symbols on my keyboard), plus the description of a fairly complex algorithm. Also, this code is really just executing a mathematical…

I'm sure you see you've been downvoted. But I want to say I agree with you on the millions / billions bit.

While I understand the rub about licenses, the fact is the vast majority of code is not all that original or unique. Some fringe amount is, and those edge cases are worth discussing.

But the rest? Likely not all in all all that special. Yes, we get paid good money to do it. But is that a function of what it takes to do the work, or the demand for the skill (relative to supply of that skill)?

Frankly, I think some ppl just plain ol' fear Copilot. And either don't want ro admit it, or they have buried that fear. I'm not advocating ignoring the law / licenses. But putting a licence and lipstick on what is an everyday pig doesn't make that pig a unicorn. Does it?

Re: GitHub Copi­lot inves­ti­ga­tion

#252

Earlier quoted context omitted.

I mean, he clearly knew about that code in advance and used his prior knowledge to coax Copilot into spitting it out, yeah? Three characters can get you pretty far, that's 1 combination out of 125,580 (considering all english letters, upper and lower, along with most of the numbers and symbols on my keyboard), plus the description of a fairly complex algorithm. Also, this code is really just executing a mathematical…

Of course it is cherry picked. The idea is that it allows you to INTENTIONALLY void any copyright you want. So let's say I obtain an illegal copy of microsoft windows' source code. Under this precedent, what stops me from just (overfitting) training a neural network to produce the source code verbatim, sans any license notice? But it doesn't end there. What stops me from making a neural network that exactly reproduce…

I don't think there will be a ruling like "anything from a neural net is yours", that'd be a bit ridiculous for very obvious reasons.

I'm no copyright law expert and I'm certainly not a lawyer, but it seems to me that in your examples you're setting out to violate copyright as a goal, which seems like it would be a factor in a court case.

To answer your last question, your examples are pretty clearly distinguishable from Copilot in their final states that you describe. IDK exactly *when* during overfitting that line is crossed, maybe it's crossed the moment you personally decide to knowingly publish copyrighted content and has nothing to do with the neural network itself?

Re: GitHub Copi­lot inves­ti­ga­tion

#253

What do people think the future looks like where publicly available resources on the Internet (art, code, etc) aren't fair use for training ML models? Where you have to opt into models or can opt out (and many wind up doing so)? OpenAI, Microsoft, Google, et al will STILL train such models that can do all the same things, but it will be much harder for non-industry-backed individuals to navigate the legal minefield w…

You should read the article before commenting.

The WAY it was done with copilot is the problem: no attribution, just shoving all legal liability off on the end “programmer” without providing the attribution required TO COMPLY WITH LICENSES as the diligent programmer tries to clear all the code copilot handed it without meta data.

Go read the article before arguing further, please. Otherwise you are wasting all of our time.

Re: GitHub Copi­lot inves­ti­ga­tion

#254
post #163

Earlier quoted context omitted.

> "look I prompted CoPilot for this piece of code that I already knew about and it spit it right out" https://twitter.com/docsparse/status/1581461734665367554 An english description plus three characters of a function name is enough to coax CoPilot into distributing LGPL-licensed code out of context, without a proper license. That's neither "emotional" nor "cherry-picked", it's a clear-cut license violation.

I mean, he clearly knew about that code in advance and used his prior knowledge to coax Copilot into spitting it out, yeah? Three characters can get you pretty far, that's 1 combination out of 125,580 (considering all english letters, upper and lower, along with most of the numbers and symbols on my keyboard), plus the description of a fairly complex algorithm. Also, this code is really just executing a mathematical…

> That sounds cherry-picked. Just because some high profile, highly-retweeted person says something doesn't make it not cherry picked.

It's his code. This "high profile, highly-retweeted" crap is an appeal to emotion. He has a specific and legitimate interest in protecting his own intellectual property. It's not "cherry-picking" to report a crime being committed on your front lawn.

Re: GitHub Copi­lot inves­ti­ga­tion

#255

Earlier quoted context omitted.

Quoted post unavailable.

From your second link: > In a computer program, the lowest level of abstraction, the concrete code of the program, is clearly expression, while the highest level of abstraction, the general function of the program, might be better classified as the idea behind the program. Copilot is alleged to be reproducing blocks of code verbatim, which fall into the expression side of the idea/expression distinction, which by you…

This quote:

> In a computer program, the lowest level of abstraction, the concrete code of the program, is clearly expression, while the highest level of abstraction, the general function of the program, might be better classified as the idea behind the program.

Seems to be trying to force everything associated with programming into a false “expressive/abstract idea” divide. Abstract ideas are distinct from expression and not subject to copyright, but not everything outside of the scope of copyright is abstract rather than detailed: notably, functional elements.

Re: GitHub Copi­lot inves­ti­ga­tion

#256
post #41

This is a bit off-topic, but I wonder if there are people/teams right now creating git repos, doing the source code equivalent of "SEO" on it, and embedding backdoors in stupidly overoptimized for the training process code? I wonder when we'll hear about the first big hack that gets traced back to production code pushed live after CoPilot "suggested" eval(base64decode({webshell}))

The less overt version of that is to figure out what mistakes copilot already makes (either things that are common in tutorials but not good in production, or things that are outdated, like hashing passwords with md5), and then systematically looking for software that includes such copilot suggestions.

Is there a technique to scan for software that includes copilot suggestions? Or is this just theoretical? Sounds impossible given MS/GH's monopoly on access to the model input data.

Re: GitHub Copi­lot inves­ti­ga­tion

#257

Earlier quoted context omitted.

It isn't really learning, if it's just regurgitating whole function bodies. I use Copilot a lot, and definitely see whole functions being spit out, that were presumably written by a person somewhere.

I also use Copilot a lot, and while it does suggest large function bodies, I'm not sure that it's "regurgitating" them (though it could be...I don't know). I suspect that it's seen so many function bodies that are similar that it generates another similar output. Like autocomplete in a word processor has seen so many similar chunks of text that it reproduces them based on past experience. I don't know this as a fact,…

It regenerates the comments from the Quake 2 fast inverse square root function.

Re: GitHub Copi­lot inves­ti­ga­tion

#258
post #246
post #190

Earlier quoted context omitted.

You're not supposed to be able to use dominance in one market (git hosting) to gain dominance in another (AI powered code suggestions).

What do you mean "You're not supposed to"? Is there some law that forbids this? From my (potentially naive) POV this seems to be roughly equivalent to asking physics professors to stay away from mathematics since they are likely to have some relevant cross-domain expertise.

Microsoft has been nailed for this exact kind of thing in the past. This isn't hypothetical.

Re: GitHub Copi­lot inves­ti­ga­tion

#259
post #52

I'd be rather saddened if Copilot was shut down or neutered because of a few vocal few protesting against it. It's been a massive productivity improvement to our senior devs, and I got so used to it that it's an annoyance when Copilot doesn't respond.

And if the code generated by copilot was attached to a license that you had to obey? Suddenly your propriety solution must be released as open source or rewritten, because copilot is effectively laundering open source code?

Life's a lot easier when you can just copy whoever did the hard work without crediting/paying/etc for it.

Re: GitHub Copi­lot inves­ti­ga­tion

#260
post #148

What do people think the future looks like where publicly available resources on the Internet (art, code, etc) aren't fair use for training ML models? Where you have to opt into models or can opt out (and many wind up doing so)? OpenAI, Microsoft, Google, et al will STILL train such models that can do all the same things, but it will be much harder for non-industry-backed individuals to navigate the legal minefield w…

Its not popular to say it, but I agree to some extent here too. We may need a wholesale reimagining of copyright/patents in many places to accept the new reality of both of building the tools (data to train) and in accepting the occasional bad output (copyright/patented function appears in output). I think watching the law evolve with the tech is going to have a lot of ups and downs.

I think you hit the nail on the head. Our laws and rules were created for a cultural context that is quickly becoming outdated. I feel there are many valid criticisms of AI today, but demonizing the technology doesn't allow for fruitful discussions. We need to evolve our thinking and we need to be open minded to do so first.
Post reply on HN