Live data from Hacker News

All public GitHub code was used in training Copilot

twitter.com

81–90 of 734 posts

Re: All public GitHub code was used in training Copilot

#81
post #13

Out of curiosity, how do we define license violation in that case? I, as a human being, have trained by reading code, much of which is covered by licenses that are somehow not compatible with code I'm writing. Am I violating licenses? Asking seriously. It's really unclear to me where law and/or ethics put the boundaries. Also, I'd guess it's probably country dependent.

If you were to write large swaths of copyrighted code from memory then yes you'd be committing a copyright violation. Most humans don't do so unintentionally though.

I’m not so sure Copilot is doing so “unintentionally” either...

Re: All public GitHub code was used in training Copilot

#82
post #12

At least to some first approximation irrelevant because reading code is not subject to any license. What if a human reads some restrictively licensed code and years later uses some idea he noticed in that code, maybe even no longer being aware from where this idea comes? But what if the system memorizes entire functions? What if a human does so? What if you change all the variable names? What if you rearrange the con…

I agree that it's nuanced and it's difficult to draw the line. but where copilot sits is way over on the plagiarizing side of the spectrum. Wherever we agree to draw the line, copilot should definitely fall on the wrong side of it

Copilot will replicate entire functions, including comments, from licensed code

Re: All public GitHub code was used in training Copilot

#83
post #75

ML novice question: is this atypical when training models? Wasn't GPT-3 trained on a lot of copyrighted data? My gut instinct, which is based on very low-information, is that it would be pretty hard to train models if you could only use open-licensed material.

It would be pretty concerning if people used GPT-3 while they were writing a novel, and it assisted them in plagiarizing a Steven King novel. We already have examples of copilot blatantly plagiarizing code

Right, but that sounds like the bigger issue here is that the model might spit out copyrighted material, not just that it scrapes it. The former seems like a technology problem that Microsoft can solve.

Re: All public GitHub code was used in training Copilot

#84
post #70

This is why I relicensed my code [1] yesterday to a license I wrote [2], which is designed to poison the well for machine learning. [1]: https://gavinhoward.com/2021/07/poisoning-github-copilot-and... [2]: https://yzena.com/yzena-network-license/

Since you allow new versions by default, can't someone just release a new version of your license allowing everything they want?

That is a good point, but easily fixed. Will do that now.

Edit: done. They are under the CC-BY-ND license now.

Re: All public GitHub code was used in training Copilot

#85
post #12

At least to some first approximation irrelevant because reading code is not subject to any license. What if a human reads some restrictively licensed code and years later uses some idea he noticed in that code, maybe even no longer being aware from where this idea comes? But what if the system memorizes entire functions? What if a human does so? What if you change all the variable names? What if you rearrange the con…

> What if a human reads some restrictively licensed code and years later uses some idea he noticed in that code, maybe even no longer being aware from where this idea comes?

In general using the idea is fine, whether it is AI or human written. I think the major concern here is when the code is copied verbatim, or near verbatim. (AKA the produced code is not "transformative" upon the original)

> But what if the system memorizes entire functions? What if a human does so?

In both of these cases I believe it would be a copyright concern. It is not strictly defined, and it depends on the complexity of the function. If you memorized (|a| a + 1) I doubt any court would call that copying a creative work. But if you memorized the quake fast inverse square root it is likely protected under copyright, even if you changed the variable names and formatting.

It seems clear to me that GitHub Copilot is capable of producing code that is copyrighted and needs to be used according to the copyright owner's license. Worse still, it doesn't appear of capable of knowing when it is doing that, and what the source is.

Re: All public GitHub code was used in training Copilot

#86
post #7

To the people arguing it's "fair use" to use this for training an ML network. Where do you draw the line? What if you train an "ML network" with one or two inputs... so that they almost always "generate" exact copies of the inputs? Five inputs..? Ten? A thousand? A million?

There obviously is no sharp line (e.g. it is 37. Immediate question: why not 36?), but that does not matter at all.

We already have the same fuzzy line for writing. Am I forbidden from ever reading other author's books because I might accidentally "generate exact copies" of some of the sentences? Clearly not, that is how people learn a language. Does that mean I am allowed to copy the whole book? Also clearly not.

Where do you draw the line? Somewhere.

Re: All public GitHub code was used in training Copilot

#87
Curious what the consensus is on how GH should have approached this to avoid such blowback.

Best case scenario, they explained in advance on the GH blog they're going to be doing some work on ML and coding, and they'd like people to opt into their profile being read via a flag setting/or put a file in the repo that gives permission like robots.txt? Second best case scenario, same as first but opt out vs opt in, and least ideal would be something like not doing the first two, however, when they announced it, explained in detail how the model was trained and what was used, why, and when- kinda thing?

Is that generally about right, or..?

Re: All public GitHub code was used in training Copilot

#88
post #82
post #12

At least to some first approximation irrelevant because reading code is not subject to any license. What if a human reads some restrictively licensed code and years later uses some idea he noticed in that code, maybe even no longer being aware from where this idea comes? But what if the system memorizes entire functions? What if a human does so? What if you change all the variable names? What if you rearrange the con…

I agree that it's nuanced and it's difficult to draw the line. but where copilot sits is way over on the plagiarizing side of the spectrum. Wherever we agree to draw the line, copilot should definitely fall on the wrong side of it Copilot will replicate entire functions, including comments, from licensed code

> but where copilot sits is way over on the plagiarizing side of the spectrum

I think it is important to point out that not all Copilot output is on the plagiarizing side of the spectrum. However it does on occasion produce plagiarized code. And most importantly there is no indication when this occurs.

Re: All public GitHub code was used in training Copilot

#89
post #70

This is why I relicensed my code [1] yesterday to a license I wrote [2], which is designed to poison the well for machine learning. [1]: https://gavinhoward.com/2021/07/poisoning-github-copilot-and... [2]: https://yzena.com/yzena-network-license/

That’s safe but it’s probably not necessary to be protected from what GitHub, OpenAI, and Microsoft are doing. When these licenses were crafted there was no reasonable expectation that companies could use ML applications as a loop hole in existing copyright licenses, so just because there is no explicit clause denying it doesn’t mean they are in the clear for using copyright-protected code that way. Licenses give permission, they don’t revoke it.

Copyright is broad, licenses are minimal. This must be the case otherwise they would not be very effective at protecting the work of creators. There is no explicit allowance for what GitHub is doing in most licenses so they do not have general permission to do so.

Re: All public GitHub code was used in training Copilot

#90
post #70

This is why I relicensed my code [1] yesterday to a license I wrote [2], which is designed to poison the well for machine learning. [1]: https://gavinhoward.com/2021/07/poisoning-github-copilot-and... [2]: https://yzena.com/yzena-network-license/

If it's allowed by fair use, your license is irrelevant. If it's not, your license doesn't matter.
Post reply on HN