15 ms·
If the training set contains verbatim (A)GPL code does this mean that Copilot also should be distributed by Microsoft under GPL? Because without it Copilot (as
by keonix 5y ago
If the training set contains verbatim (A)GPL code does this mean that Copilot also should be distributed by Microsoft under GPL? Because without it Copilot (as it is distributed by Microsoft) couldn't be built, wouldn't it make it a derivative work of GPL'd code (and obviously every other license)?
I see a lot of people comparing human learning to machine learning in the comments, but there is a huge difference - we don't distribute copies of humans
- ghoward 5y agoThis is a great argument.
- AaronFriel 5y agoNo, see Authors Guild v. Google. Even without a license or permission, fair use permits the mass scanning of books, the storage of the content of those books, and rendering verbatim snippets of those books. The Google Books site is not a derivative work of the millions of authors they copied from, and if they did copy any coincidentally GPL, AGPL, or creative commons copyleft work, the fair use exception applies before we reach the question of whether Google is obligated to provide anything beyond what it is doing. By comparison, Copilot is even more obviously fair use. I've had this conversation quite a few times lately, and the non-obvious thing for many developers is that fair use is an exception to copyright itself. A license is a grant of permission (with some terms) to use a copyrighted work. This snippet from the Linux kernel doesn't make my comment here or the website Hacker News a GPL derivative work: ret = vmbus_sendpacket(dev->channel, init_pkt, sizeof(struct nvsp_message), (unsigned long)init_pkt, VM_PKT_DATA_INBAND, VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED); This snippet from an AGPL licensed project, Bitwarden, does not compel dang or pg to release the Hacker News source code: await _sendRepository.ReplaceAsync(send); await _pushService.PushSyncSendUpdateAsync(send); return (await _sendFileStorageService.GetSendFileDownloadUrlAsync(send, fileId), false, false); Fair use is an exception to copyright itself. A license cannot remove your right to fair use. The Free Software Foundation agrees (https://www.gnu.org/licenses/gpl-faq.en.html#GPLFairUse https://www.gnu.org/licenses/gpl-faq.en.html#GPLFairUse) > Yes, you do. “Fair use” is use that is allowed without any special permission. Since you don't need the developers' permission for such use, you can do it regardless of what the developers said about it—in the license or elsewhere, whether that license be the GNU GPL or any other free software license. > Note, however, that there is no world-wide principle of fair use; what kinds of use are considered “fair” varies from country to country. (And even this verbatim copying from FSF.org for the purpose of education is... Fair use!)
- shakna 5y ago> No, see Authors Guild v. Google. That case required that the output be transformative, in that "words in books are being used in a way they have not been used before". Copilot only fits the transformative aspect if it is not directly reciting code, that already exists in the form that it is redistributing. So long as it does so, it fails to meet the criteria.
- tedunangst 5y agoIt's not possible to get copilot to output a transformed version of the input?
- shakna 5y agoTransformed output _may_ fall under fair use. However - Copilot directly recites code. That is _very unlikely_ to fall under fair use. Redistributing the exact same code, in the same form, for the same purpose, probably means that Copilot, and thus the people responsible for it, are infringing.
- nonfamous 5y ago> However - Copilot directly recites code. You make that statement as an absolute, but in the interests of clarity, all evidence so far shows that it directly recites code very rarely indeed. Even the Quake example had to be prompted by the specific variable names used in the original code. In practice, the output code is heavily influenced by your own context — the comments you include, the variable names you use, even the name of the file you are editing — and with use it’s obvious that the code is almost certainly not a direct recitation of any existing code.
- shakna 5y ago> all evidence so far shows that it directly recites code very rarely indeed. _Once_ is enough for it to be infringing. The law is not very forgiving when you try and handwave it away.
- jdavis703 5y agoAssuming that copilot is a violation of copyright on GPL works, it would also be a violation of non-GPL copyrighted works, including public but, but fully copyrighted works. Therefor relicensing others source code under GPL would violate even more copyright.
- zelphirkalt 5y agoSo in that case, of course copilot would have to give license info for every. single. snippet. Case solved. Only, that they will probably not do that.
- rapind 5y agoThis is pretty interesting for AI in general. Should you be able to train with material you don't own? Can your training benefit from material that has specific usage licenses attached to it? What about stuff like GameGAN?
- zoomablemind 5y ago> ...Should you be able to train with material you don't own? If relating this to how humans learn, books and other sources are used to inform understanding and human knowledge. One can purchase or borrow a book without actually owning the copyright to it. Indeed, a given passage may be later quoted verbatim, provided it is accompanied with a reference to its source. Otherwise, a verbatim use without attribution in authored context is considered plagiarism. So, sure one can use a multitude of material for the training. Yet, once it gets to the use of the acquired "knowledge" - proper attribution is due for any "authentic enough" pieces. What is authentic enough in this case is not easy to define, however.
- rapind 5y ago"If relating this to how humans learn" seems like a big IF though right? Are we going to treat computer neural nets as human from a legal standpoint? At some point Neural Nets like GameGAM might be good enough to duplicate (and optimize) a commercial game. Can you then release your version of the game? Do you just need to make a few tweaks? Are we going to get a double standard because commercial interests are opposed depending on the use case? It would be pretty funny if Microsoft as a game publisher lobbies to prevent their IP being used w/ something like GameGAN, but then takes the opposing stand point for something like their CoPilot! Although I'm sure it'll be spun as "These things are completely different!".
- paulryanrogers 5y agoThis is the key question. In school I was taught to be careful to always cite even paraphrased works. If Copilot regurgitates copyrighted fragments without citation or informing acceptors of licenses involved then it's facilitating infringement.
- hedora 5y agoMore interestingly, if we can trick it into regurgitating a leaked copy of the windows source code, Microsoft apparently says that’s fair use.
- jrochkind1 5y agoIf Github hosts AGPL code, does that mean that github's own code must be AGPL? Obviously not. What's the difference? There's no point to copilot without training data, some but not all of the training data was (A)GPL. There's no point to github without hosting code, some but not all of the code it hosts is A(GPL). The code in either cases is data or content, it has not actually been incorporated into the copilot or github product.
- b3morales 5y ago> If Github hosts AGPL code, does that mean that github's own code must be AGPL? Obviously not. What's the difference? GitHub's TOS include granting them a separate license (i.e., not the GPL) to reproduce the GPL code in limited ways that are necessary for providing the hosting service. This means commonsense things like displaying the source text on a webpage, copying the data between servers, and so on.
- mhh__ 5y agoCode isn't to GitHub what training data is to this model, or at least even if you could argue that it is within a current framework it shouldn't be.
- andy_ppp 5y agoProbably they get away with it, but it definitely seems against the spirit of the GPL just as closed source GitHub existing because of open source software seems quite hypocritical.
- fny 5y agoI think the bigger issue is that use of Copilot puts the end user at risk of using copyrighted code without knowing it. Sure one could argue that Copilot learned in the way a human does. There is nothing that prevents one from learning from copyrighted work, but snippets delivered verbatim from such works are surely a copyright violation.
- coding123 5y agocopilot isn't distributing copies of itself either.
- hnbad 5y agoIANAL but as I understand it, ruling in the US is that machines can not produce "derived works" of copyrighted works. If it replicates (A)GPL code verbatim, it's up to the user to comply with its license. Of course the interesting part is that the user not only has no idea what that license is but also where the code came from and if it is in fact copied verbatim. It's unlikely a court would agree that putting licensed code through a machine strips the licensing requirements of the code, of course, but that doesn't seem to be Microsoft's problem. I think Microsoft's use of public code hosted on GitHub is covered by the terms of service but if this use includes granting a license more permissive than the license indicated on the code itself, this would probably put every GitHub user who ever committed less permissively licensed code to GitHub that they didn't control in violation of those licenses. There's really only three ways this can go: 1) Machine learning does legally become a license-stripping black box, which would allow creating a machine generated commons by feeding arbitrary copyrighted works into sloppy AIs that mostly just replicate their input without changes. 2) Copyright law is extended to consider the output of machine learning as derived works from its inputs, massively extending the reach of copyright and creating massive headaches for everyone (e.g. depending on the exact ruling this would effectively make it impossible to reproduce a digital artwork as merely rendering it on a screen would create a derived work). 3) The original licenses are upheld and remain in effect, rendering the output of Copilot useless by creating a massive legal headache for anyone trying not to violate copyright. I think outcome 2 is unlikely but 1 and 3 aren't mutually exclusive.
- themeiguoren 5y ago> we don’t distribute copies of humans A bit of a tangent and it’s fictional, but I really have to recommend the tale of MMAcevedo. https://qntm.org/mmacevedo https://qntm.org/mmacevedo