This is a hell of a Pandora’s box that’s being cracked open here.
Interesting times ahead. For example, if you believe these kinds of tools will become a huge competitive advantage, and that the inclusion of GPL code is a meaningful force multiplier, it kind of implies the fusion of AI code generation and the GPL will eat the world.
Only if people understand that the result is under GPL; if they don't, then this is a mechanism to slowly "launder" the work people put into GPL code to funnel into non-GPL codebases.
Why is human understanding going to prevent this? Doesn't it seem like this is precisely the de facto function of Copilot: a license laundering machine?
If humans understand this then presumably lawyers would start hunting for code replication caused by Copilot--using automated mechanisms similar to those used by professors at Universities to catch people cheating--and do the moral equivalent of ambulance chasing: offering to file all the paperwork on spec for a cut of an assured payout. But if people in general believe this to be fair use somehow, then GPL is essentially dead (I have been a big advocate for it over the years, and if people are doing this--and everyone thinks it is OK--then it loses the entire point as far as I am concerned).
It depends on which "people" you're referring to. I suspect the degree to which the programmer knows this is of little relevance to the question of how the legal + risk management implications will play out.
I mean general people people, not only developers: people includes managers and lawyers and politicians and everyone who might cause you to have GPL Copilot separate from MIT Copilot... the same people who right now cause licenses to matter, despite many developers not understanding anything about copyright law and just thinking "I'll steal that other developer's work as it makes my life easier".
If anything, I think the real test of this tech is going to be audio, as it has the right overlap of "big copyright is going to get pissed", "there already exist tools that attempt to automatically detect even small bits of infringement", "people actually litigate even small bits of infringement", and "it feels feasible in the near future": you whistle a tune, and the result is a fully produced backing track that sometimes happens to exactly sound like the band backing Taylor Swift on a recognizable song and generates Taylor Swift's voice, almost verbatim, singing some of her lyrics to go along with it.
It's kind of interesting how quickly sentiment turned negative. The original feature showcase/announcement post was full of excitement by HN (which is kind of strange, if you think about how skeptical the HN crowd is towards AI/ML and automation of programming) but it hasn't been a week and people are already talking about the questionable ethics and potentially disastrous consequences of using the feature.
I can't speak for anyone else, but when I first saw it, it seemed kind of okay, but I also didn't really look too deeply in to it. As I've looked at it a bit more closely and thought about it for a few days, my original feelings have soured quite a bit.
I never considered the copyright and related ethical implications of ML at all, or thought about the impact it may or may not have on programmers. Your first thoughts on something can be wrong (and actually, often are) and it takes a bit to really think things though – or at least, it does for me.
While I understand the sentiment wasn’t Copilot trained on code not only hosted on GitHub, but found all over the Internet? Which means hosting your code yourself would not prevent GitHub from using it to train Copilot. That raises an interesting question though - how do you opt out? Is there even a way to do it?
This kind of learning needs to be opt-in, not opt-out.
I would also be extremely surprised if most open source copyright holders didn't already expect their licensing terms to protect against this kind of code/authorship laundering. Speaking individually, I know that it certainly surprised me to hear that GitHub thinks that it's probably okay to regurgitate entire fragments of the training set without preserving the license.
Bad news for you. Japanese copyright law, article 47-7 explicitly allow using copyrightable works for data analysis by means of a computer(including recording a derivative work created by adaptation)
It should be considered as fair-use of USA except we don't use Common Law system so we explicitly state what exempt from the copyright protection.
robots.txt is a convention for those who want to be good 'web citizens' rather than legally binding. It does absolutely nothing to stop someone who ignores your wishes. For example, there are tons of bots that ignore robots.txt entirely or even go straight for the thing (i.e. 'hey, thanks for telling us where to look!') you're telling them to avoid in robots.txt. While copyright is a mechanism that can be used if you can make the case, and have the means, it will only work for entities that have something to lose and are within a jurisdiction where it matters.
Researchers in our lab created a huge dataset of facial expressions from images on the web, annotated it and published the URLs to the images and the annotations for research but made sure to search only for images with proper licenses. I don't think that you are allowed to just go download any old image and train on it. I understand the many many people do it, but it's not legal (as far as I know, please correct me if I'm wrong).
> I don't think that you are allowed to just go download any old image and train on it.
My understanding as a two-year student of ML is that you are allowed in the US to go download any old image, train on it, and then release the model as long as the outputs are "sufficiently transformative."
To be clear: "transformative" not meaning merely "altered" but really meaning "repurposed"; if the new work is something people could feasibly use instead of the old work (harming the author's original market), it isn't "transformative".
Yes. For example, arfa ran into this question when launching https://thisfursonadoesnotexist.com/. Lots of furry artists had exactly the same concerns with his work there, but that work is decisively transformative.
Copilot seems ... well, less transformative. I'm still not sure how to feel.
I would like to know this too. I understand that GitHub is a private company and you have to accept their T&C, but surely they aren't allowed to use source code found elsewhere on the internet to train their ML models without asking for permission first unless it's a B2B cooperation such as with Stackoverflow.
According to the discussion at this link, you do not need permission to use copyrighted data to train AI models. Copyright prevents you from copying data, it doesn't prevent you from learning from it.
To train your model, yeah, probably ok. But I don't think anybody will see people using the duplicated code that AI insert on your codebase the same way.
Oh man I can’t imagine the consequences for certain languages and frameworks if it uses SO answers though. Imagine if it trained in all the dumb and ancient answers like “how do I get the length of a string in javascript” and took the first accepted answer of “use jquery”
This raises an issue of trolling. What prevents developers to generate "inappropriate" code to feed it to this algorithm the same way they did with the Microsoft Chat bot for example? That will surely reflect on the quality of code generated by this AI system and therefore the stability and security of applications built.
I’m sure this will happen, and there will definitely be instances of the bot giving users bad code, but it would be incredibly difficult to make it solely give out bad code.
I guess it goes back to closed source / trade secrets territory. If you have something you really don't want stolen, it is safer to never expose it and never trust that the law will fairly protect you.
The irony is that copilot won't suggest its own source code, just everyone else's. It is open source without the benefits.
> how do you opt out? Is there even a way to do it?
Yeah, don't post your code in the public for everyone to read. If I am musician, and I play my song publicly, people will hum it if they like it. I can't do anything to stop that, except not play the song to anyone.
It’s a different thing when random people start humming or even singing your song in private, and an entirely different thing when a big corporation uses your work to train a system that will at some points generate parts of your works and will make them millions of dollars of your and everyone else’s code without attributing anyone in any way.
Plus, to be honest I’m not even sure whether I’m for or against that, I am just wondering if one was against it but still wants to do open source work do they have any recourse?
>Some unknown person is trying to get some hype on “cancel github” cry.
>I don't give a shit about the Copilot, but I care even less about Rian Hunter and his statements.
This is untrue because you had a choice of not saying anything at all and carrying on (clearly not giving a shit) or take the time to leave such a comment (giving enough of a shit to inform everyone you don't give a shit.) So far this and Lloyd's is the only crying going on in this topic.
Is it not obvious that you can care about a post on HN without caring about the page it links to?
Back away from this specific situation for a second: If you would ignore something entirely if it wasn't being shoved in your face, complaining about it being shoved in your face and saying it's stupid wouldn't mean you suddenly "care" about the underlying item.
(And no, I'm not saying that an HN post is shoved in your face. It's a more extreme example to make the point more clear.)
Why is this noteworthy? Who is this person? Am I missing something?
I agree that there needs to be talk about licensing and copyright but with so "less/no content" there can be no meaningful discussion other than aimless banter.
This isn't interesting though. It doesn't even provide any value. It's a random guy that doesn't like GitHub, it could have just as well been a HN comment from yesterday.
It's just posted(not by the guy that made the page, mind you) to farm karma, exploit the news cycle and carve out some more space for discussion of this tired topic.
Right, but you either need a solid argument or some authority, and this guy has neither. He's effectively a nobody and he has just jumped to the conclusion that CoPilot is illegal.
If he had a good argument for that, fine. But without that he really needs to be someone whose opinion I care about.
This is somehow inverse logic. Does rape victim needs authority to voice raping in order to validate it?
What is there that is not solid, CoPilot is using community code that is under GPL licence therefore Microsoft should not be able to charge for CoPilot but give it for free, or not create another revenue stream.
No, a rape victim needs a solid argument, i.e. evidence.
> What is there that is not solid, CoPilot is using community code that is under GPL licence therefore Microsoft should not be able to charge for CoPilot but give it for free, or not create another revenue stream.
You're doing the same thing as OP by assuming that this is illegal. That had yet to be determined. It could easily be the case that this falls under some fair use law or isn't even covered by copyright. It isn't for humans!
How about just leaning back and reading the discussions which evolve out of this post? Some may have something to say about it which will either help you solidify your point of view or add a new perspective to it which you might have missed.
The topic is a current one [1], which makes it even more valuable.
Who can? Sure, Disney shouldn’t be able to copyright public domain works or Mickey Mouse until the end of time. But they also shouldn’t be able to swoop in, use your songs/artwork/software in their latest movie, without permission or appropriate compensation.
Don’t be too eager! Weakened copyright doesn’t necessarily translate to an overall benefit, at least for software.
Weakening copyright also weakens copyleft - for example, it seems reasonable to me that the producer of an open-source work should be entitled to require reciprocal openness from people who build upon it. If I can legitimately launder some GPL source code (say, a Linux kernel driver) through an ML model without being obliged to release the resulting code, I think everyone loses.
Copyright doesn't just benefit huge corporations. For instance, without it, independent artists who rely on copying for distribution (authors, musicians, etc.) would find it much more difficult to make money off their work, mostly (IMO) because large corporate entities with large investments made in publication and distribution systems could simply take content and sell it themselves with zero obligation to the original creator(s). This process could be highly automated at scale, giving creators essentially zero chance to compete in the market.
It's a bad idea.
The thing about copyright law that needs reform is its bias toward the benefit of large corporate entities. Platforms' implementations of DMCA compliance allow "rights holders" to spam perjurious takedown requests en masse, garnishing the earnings of creators and legitimate rights holders in what can only be called (in addition to perjury) outright fraud. Companies like Github scrape the web for content, most of it copyrighted, and use it to construct new products for their own profit. Rare recitation events aside, I think their use case is legitimate fair use in the eyes of the law (and if you look at my comment history you'll see me vehemently arguing to that effect), but should it be? We don't seem to be asking that question, which is really disappointing--we're either complaining loudly and without substance, or blithely accepting the might-makes-right ethic as the central pillar of our IP law.
>Copyright doesn't just benefit huge corporations. For instance, without it, independent artists who rely on copying for distribution (authors, musicians, etc.) would find it much more difficult to make money off their work,
That doesn't look like it's the point to me.
""[the United States Congress shall have power] To promote the Progress of Science and useful Arts, by securing for limited Times to Authors and Inventors the exclusive Right , to their respective Writings and Discoveries." "
As I read that, copyright is there to 'promote progress', not to maximize gains.
No doubt there is a million linear feet of case law that got us where we are.
Honestly, I rather like this whole question of copilot. I solidly appreciate the brilliance of github as a honeypot.
> To promote the Progress of Science and useful Arts, by securing for limited Times to Authors and Inventors the exclusive Right , to their respective Writings and Discoveries.
What better way to promote said Progress than by making sure said Authors and Inventors can make enough money off their work to keep doing it? As written, it's a roundabout way to get at the instrumentality of capital, but if that's not what they had in mind then I'm not sure what they were getting at. Without copyright, a creator's rights to their own work aren't diminished; it's just that everyone else's are expanded to the same level.
(I'd love to know if I'm way off base about this. I'm not a lawyer, and I'm sure it's been discussed to death.)
> Honestly, I rather like this whole question of copilot. I solidly appreciate the brilliance of github as a honeypot.
I think it's really cool, and I'd probably use it myself. As much as my favorite kinds of programming (e.g. writing experimental text editors) might not benefit from it, in my day job I sure would love to spend less time filling in boilerplate and looking up mundane API details.
I don't mean to single Github out in my mention of big corporations benefiting from copyright law. Scraping vast quantities of copyrighted data to build new products is a common business model at this point, and--like other new IP-related paradigms enabled by modern information technology--I think it deserves a fresh look, being mindful of just what it is we're trying to accomplish with copyright law. As you say, it's not always obvious, even in written law.
There are a lot of better ways. Having more information being public and free, and usable by tools like this sounds like an excellent way of promoting progress.
Well, this is the current status quo. Automated scraping of copyrighted material for (arguably) transformative applications like Copilot is generally allowed under fair use, while non-transformative copying is considered infringement.
If you want to strip creators of (default) exclusive rights to their work, that's a different conversation than the one around whether Copilot and similar applications fall under fair use. Both have been touched on in this subthread, but your comment seems to be conflating them in a way that doesn't follow directly from the discussion above it.
> Automated scraping of copyrighted material for (arguably) transformative applications like Copilot is generally allowed under fair use,
Ok great. So then new tools like this are good, even though they weaken copyright, and the concerns that people have about it (that it allows easier copying of code), are actually a benefit.
And the fact that it might hurt people's ability to profit from their code, is overruled by the benefit that this stuff provides.
> doesn't follow directly from the discussion above it.
You suggested protecting profits as if it is the only or best way of promoting progress.
When, in reality, stuff like these tools are actually a much better way of doing so. And it does so in a way that undermines copyright law, in a beneficial way.
> Ok great. So then new tools like this are good, even though they weaken copyright,
Does it weaken copyright? Like I mentioned, it seems like it's probably allowed under existing law.
> it might hurt people's ability to profit from their code
I don't really buy this. The outputs of Copilot seem transformative enough that they won't by themselves meaningfully compete with the applications built from the sources in the training set.
It seems to me that people are objecting to it more as "theft" on ethical grounds alone. I don't really have a strong opinion either way on that front, but if I did it would be based on principle and not some theoretical material harm, because I think the latter is marginal at best.
> You suggested protecting profits as if it is the only or best way of promoting progress.
In fields where creators make money by selling access to copies of their work, what is a better way of promoting progress? People need places to live, and things to eat, and other things, and all of that costs money. If working in these creative fields becomes even less lucrative than it already is, fewer people will be able to do it, and for less time, because they will have to spend more of their time making money in other ways.
In tech, many of us are privileged to have a fair amount of spare money and time. Don't forget that not everybody enjoys that privilege, and please try not to attach a negative-valued concept of "profit" to the necessities of survival.
> When, in reality, stuff like these tools are actually a much better way of doing so. And it does so in a way that undermines copyright law, in a beneficial way.
Again, this is a very tech-centric view. I can't imagine (for instance) the average novelist being particularly happy to have the exclusivity of their rights to their own work curtailed to enable the creation of some tool, using their work as an input, for generating prose. And such objections would be absolutely correct, if anybody was actually talking about doing that.
Fortunately, nobody is talking about doing so--not for code with Copilot, not for fiction prose with the new GPT-3 tools that are popping up, and not for any other medium I'm aware of. These applications are covered under existing fair use law, and their existence does not depend on weakening the exclusivity of creators' rights to their work.
If you were to tell me that such rights should be curtailed to enable tools like Copilot to exist, I would strongly disagree with you. But--again--such curtailment is not necessary. The only reason I'm talking about it here is that there are people who think copyright should be abolished or strongly weakened. Almost universally, I've found, they're people who don't make money off distributing authorized copies of their work. So, if you ask me, they really have no clue what they're talking about, and shouldn't be running their mouths before seriously listening to (at least) the independent creators who would be impacted by such a change.
> Does it weaken copyright? Like I mentioned, it seems like it's probably allowed under existing law.
Yes it does. It is legally allowed, but in the past it was much more difficult to code launder, or copy things, in the way that an AI would do it.
Something becoming easier to do, has an effect, even if it was legal in the past.
> what is a better way of promoting progress
More technologies like this, that allow better sharing of code and information. It reduces the barrier to entry to creating content, thus causing more of it to be made.
> If you were to tell me that such rights should be curtailed
You have it reversed. Rights do not need to be curtailed, to enable these tools. Instead I am advocated for the production of these tools to be done for the purpose of curtailing these rights. The causation is reversed.
The rights should be "curtailed" through the process of tools that allow people to easily get around the law, and to make the law unenforceable. Changing laws is much harder than making the law irrelevant.
We don't need to change any laws, if we just make it impossible for laws to be enforced.
It is kind of like how bittorrent undermined copyright laws. No laws needed to be changed, for piracy to become rampant and unpunishable. (And don't even try to challenge me on this point, that piracy is effectively unenforceable these days. If you do, I'll just go watch the lastest episode of some marvel show, for free, right now, lul)
> More technologies like this, that allow better sharing of code and information. It reduces the barrier to entry to creating content, thus causing more of it to be made.
Like I said, this seems like a highly tech-centric viewpoint. Keep in mind that source code is far from the only thing covered under copyright law. Personally, if I was stranded on a desert island, I'd rather have a single original novel written by a human than a hundred novels' worth of GPT-3 output.
Beyond that, your perspective is pretty interesting--I guess you support the existence of tools like this because you see it as an opportunity to erode existing copyright law. Personally, I may not support the full extent and implementation of copyright law in America, but I do support the fundamental principle that a creator should have exclusive rights to their work. So we disagree pretty strongly on that, and I doubt we'll find common ground.
I guess I would just urge you, if you value art at all, to consider how independent artists like writers and musicians would be affected by the elimination of copyright. I don't really give a shit about the IP rights of programmers (even though I'm one myself, with public FOSS contributions), but you seem willing to throw out the baby with the bathwater.
The status quo for artists is pretty dismal. Across industries you have a few ultra-successful artists, a small group who can make a decent living and then a long tail of people who can't pay the rent.
Gaming things out, I don't think copyright is really helping any of those artists or society as a whole. If it didn't exist, you'd still have breakout artists who make money through endorsements, live shows, and selling original copies of their work.
I think it's kind of crazy to handwave away a whole class of creators who do make real money off selling their work (rather than being performers), even if it isn't big money or even enough to live on without supplemental income. And I categorically disagree that copyright isn't helping "any" of them. One counterexample is self-published authors on Amazon and similar services, many of whom do make a lot more money than a layperson might expect, and all of whom would obviously be cut off at the knees by squeaky-clean first-world aggregator-reader services the second the copyright protections of their works were revoked.
Lots of people arguing this guy isn't anybody, but the name seemed sort of familiar to me and my quick googling and looking at his site makes me think he probably has done something that some people use? For example dbxfs seems to have quite a history.
on edit: just saw there was a description of who he is https://news.ycombinator.com/item?id=27724247 as noted I don't know but not sure if it's enough to imply a bad motive of him wanting to get some sort of attention for opposing copilot.
on second edit: huh, seems to be one of those occasions when I have mysteriously offended some people on HN without swearing, joking or being rude.
I'm glad that Copilot is bringing the grey areas of copyright into discussion. If I write a book and it is copyright, what's the smallest unit which is covered by that copyright? Each word is obviously not. Some sentences will be fairly generic and I will not be the first person to write them. But some sentences will be characteristic of the work or my own style. Clearly how we apply copyright to subdivisions of an original work is an open question.
'Some sentences' makes me think of the link tax introduced to prevent aggregating news sources based on only headlines, so even generic sentences fall under copyright in certain cases.
I think an interesting analogy is if you rewrote a book in your own words but with each paragraphs meaning intact. So you rewrote Harry Potter but with slightly different sentence structures, but meaning was otherwise near identical. It’s that copyright infringement? I think it would certainly be plagiarism.
The other similar analogy is of translation: a translated work is still copied by ‘derived from’ copyright laws.
Is this just what copilot is doing in some ways but for smaller components?
This. You realize it doesn’t make any sense. All ideas are shared creations, by definition. If you’ve created something that has meaning for other people, the meaning comes from the ideas you are incorporating into your own tree.
There is no defending copyright. It is indefensible from first principles. It makes no logical sense.
> Above a certain level of creativity people do produce novel or exceptional things that are worthy of protection.
Name your very best example that will prove me wrong. It should be so simple. One example, that's all it takes. Take your time, make sure you've got a good one. I'll tell you that not once, not a single time in over 17 years, have I ever seen a single example of this argument hold up under scrutiny.
Oh wait, you already did:
> Because naked men are a shared concept Michelangelo's David is not protect-worthy?
Ah yes, Michelangelo's David. A work free of copyright built under commission! Thank you for again pointing out the futility of the defense of copyright.
Okay, Harry Potter and the Sorcerer’s Stone. I’m legitimately trying to understand. Do you think after that book was published it should have no copyright protection? That it should be totally legal for me to print and sell my own copies?
Yes. Our government should not be in the business of regulating the distribution of a sequence of words about imaginary wizards.
JK is a talented and hard working writer, and though I'm not a fan personally of those books I respect that they likely are great pieces of work, but I believe we are getting the scraps of what we could get in the Intellectually Oppressed world compared to an Intellectually free world. I'd rather have a world without cancer, a world with 100x more people able to provide medical care, a world with less pollution, than a world of artificial scarcity where a few who go along with a system of oppression get to be billionaires.
> Our government should not be in the business of regulating the distribution of a sequence of words about imaginary wizards.
So not imaginary wizards then.
What should be regulated? Is it nothing? Does your statement become "Our government should not be in the business of regulating the distribution of a sequence of words"?
> Does your statement become "Our government should not be in the business of regulating the distribution of a sequence of words"?
Yes. Your lungs is a tree that needs healthy air. Your brain is a tree that needs healthy ideas. When people are not free to clean the ideawaves, they fill with pollution, and that is where we find ourselves.
Sure why not? Do you think JK Rowling needs more money?
Maybe the state could grant protection for 10 years after publishing to give the author a chance to recoup their investment. I don't know why the protection extends to the author's grandchildren.
I recognise your comments from several different threads, and I'm wondering if you might not be working against your own ideals. The GPL license is intended to persuade other sources to share their contributions when building on top, which I assume is what you would like to see happen. If everything is GPL then everything is open source, everyone can use anything, including training AI methods, etc.
The problem posed with copilot is in fact the opposite. By taking it to its logical conclusion, this might make it possible to disregard this effort and use GPL code on your private project.
If we abolish copyright then there is no need for GPL. I am so forever grateful for GPL, as Stallman and the like weaponized copyright against itself, and then gave us crystal clear data that open source software is strictly superior in the long run.
But even if only 1% of ideas were copyrighted, that is still a tax on the use of all ideas. In a world without copyright, I can download any dataset at will and analyze and remix it to my heart's content, and share my findings. But in a world with copyright, if there was one "copyrighted" land mine in there I open myself up to financial ruin. So one must tread carefully when working with any external ideas.
The GPL isn't about sharing contributions back to the project, but ensuring the end-users have the source code and permission to use, modify and share it.
Did you mean to say that "GPL isn't just about sharing ..."? It most certainly is part of the intention behind GPL. Changes to GPL software must be disclosed and made open source.
If you as an end user want to modify the source code for your own use, then that is fine. If you want to distribute it, you must state the changes, and you must also do so for any code it is linked with. The original maintainers are then also free to incorporate said changes should they chose.
Nothing in the GPL requires making changes public or sharing them with the developers of the project. You only have to give your changes to people you give your modified binaries to. You never have to give your changes back to the upstream project. So AFAICT the GPL is about user freedom rather than sharing and any sharing that happens is a side effect of user freedom. There are organisations who make changes and share them with their customers but not with the wider community. There might be situations where sharing publicly could lead to detrimental effects, Debian's "Desert Island", "Dissident" and "Tentacles of Evil" tests are some examples of that.
> There is no defending copyright. It is indefensible from first principles. It makes no logical sense.
What does that even mean? The intent from the beginning of copyright was to allow people to live off of intellectual works by claiming legal rights over the work.
There are no “first principles” from which basically any societal agreements like these are derived.
Even something as simple as “murder is illegal” isn’t actually derived from any first principles because the government is allowed to murder people, citizens are during self defense, etc.
We know that there was a written intent that it was "To promote the progress of science and useful arts". However, who knows whether or not that was the true intent of all those who signed off on it. We see that lots of written intent, (Exhibit A: Purdue's "Partners Against Pain" Oxycontin promotion), may not match the mathematical reality on the ground. Also, we know that there was plenty of places in the Constitution that were good to amend (the three fifths clause, for instance).
This site (http://www.copyrighthistory.org/cam/index.php) has lots of fascinating old docs where you can come up with your own impressions about the early days of copyright. My general impression was that while it didn't ever actually promote the progress of science and useful arts, it absolutely did in the early days serve as a super smart free hack for the new federal government to build a central intelligence and library of all the latest and greatest inventions from throughout the land.
> What does that even mean?
It means that if you analyze it using logic and put all assumptions on the table (start high up on the tree), you deduce that this is a system of intellectual slavery, not of intellectual "property". You deduce that if there is such a thing as stealing ideas, then all ideas with any value are majority stolen and but a fraction novel.
If there is no copyright, what incentive is there to ever create anything digital? Adobe would never invest in Photoshop if any random person was legally able to sell copies for $1 each. A production company will never publish a book or create a TV show if anyone can just undercut them by taking what they have produced and resell it. Doesn't seem like a con to me, it sounds pretty critical for any kind of functional digital market.
Most of people who contribute to open source software are not motivated by copyright. I think without copyright we would still have our software, just would have way bigger share of open source software in the world, as well as nastier copy-protection mechanisms. And more services that are online only.
> Most of people who contribute to open source software are not motivated by copyright.
I disagree. License choice is deliberate, and many open source licenses are chosen for the strict stipulations they put on users and developers, like mandatory attribution and terms of distribution or reproduction.
I release some software under the GPL and AGPL. I don't want anyone to use my software that doesn't intend to abide by the terms it was released under.
If I wanted to release software with less stipulations, then I would, and I have.
Both licenses have mandatory attribution clauses, which is one of the stipulations I mentioned, along with mandatory inclusion of copyright notice and license. BSD in particular has specifics about advertising and distributing other files, as well.
Anyone publishing anything on the Internet should expect this type of use case. If it is removed from github and republished via another site, there is absolutely nothing preventing another service/company from doing the exact same thing (or 'worse'... i.e. imagine a learning system that can actually understand the code) when scraping the alternative location. It's not unusual for bots to be among the most frequent visitors to low traffic pages these days and they aren't all just populating search engines.
A bigger concern for many is that if you USE copilot, you’ll unintentionally copy code with licences that your company really, REALLY does not want to copy. For example, here’s copilot copying some very famous GPL code: https://twitter.com/mitsuhiko/status/1410886329924194309?s=2...
And basically every software company avoids GPL like the plague, due to its strong copyleft conditions.
Sure, but that's a different end of the issue than I was referring to. I was pointing out that just taking code off of github wouldn't avoid the use case. Any published code from any public source is likely to eventually be used this way by someone.
Yeah, I agree with your point that “if you publish content to the internet, expect it to be used in ways you don’t intend, or even permit.” Just pointing out that a lot of the concerns are not “GitHub is stealing my code for use in Copilot,” but “using GitHub Copilot in my proprietary software is a massive risk/liability.”
I am not a lawyer, but I am capable of summarizing the thoughts of lawyers, so my take is that in general, fair use allows AI to be trained on copyrighted material, and humans who use this AI are not responsible for minor copyright infringement that happens accidentally as a result. However, this has not been tested in court in detail, so the consensus could change, and if you were extremely risk-averse you might want to avoid Copilot.
A key quote from the second link:
Copyright has concluded that reading by robots doesn’t count. Infringement is for humans only; when computers do it, it’s fair use.
Personally, I think law should allow Copilot. As a human, I am allowed to read copyrighted code and learn from it. An AI should be allowed to do the same thing. And nobody cares if my ten-line "how to invert a binary tree" snippet is the same as someone else's. Nobody is really being hurt when a new tool makes it easier to copy little bits of code from the internet.
This is a stupid argument that the Twitter author made. Saving music digitally is reading by robot, so recording music that wasn't digital into a digital format is fair use.
Perhaps the final judgment would say "AI cannot infringe on copyright provided that only other AIs consume the result of the first AIs work".
And suddenly there is a world of robots composing, writing and painting for other robots. With us humans left out.
There should be a /s at the end, but legal world sometimes produces such convolutions. See, for example, the interpretation of the Commerce Clause in Gonzales v. Reich.
As far as IP protections go, they're similar, but the incentives are so different that you get songwriters going to court over bits of melodies that might be worth millions. Outside of quantitative trading, it's hard to find an example of 10 lines of code that are worth millions and couldn't easily be replaced with another implementation.
> Nobody is really being hurt when a new tool makes it easier to copy little bits of code from the internet.
Quite the opposite. We all get a tiny bit better with good information like this. This is what the internet should be for, evolving, learning from past mistakes, information availability.
If the discussion was “I clicked this button and got someone’s entire chat platform” that would be different. Words and sentences aren’t copy written, books are, so when exactly are a collection of words a book?
There is nuance, and the linked page has none. But that’s fine, that guy is free to pull his content off GitHub. This seems like a useful feature for other people who want to make things first and foremost.
> Words and sentences aren’t copy written, books are, so when exactly are a collection of words a book?
If that were true, then 20 people could each steal a single chapter from a book, and one of the people could combine those 20 chapters into a new copyright-free book. That's clearly false.
> As a human, I am allowed to read copyrighted code and learn from it.
Of course not. Reading some copyrighted code can have you entirely excluded from some jobs - you can't become a wine contributor if it can be shown you ever read Windows source code and most likely conversely.
Likewise, you can't ever write GPL VST 2 audio plug-ins if you ever had access to the official Steinberg VST2 SDK. Etc etc...
Did people forget why black box reverse engineering of software ever came to be ?
It's dependent on jurisdiction. Black box reverse engineering is only required in certain countries. If I remember correctly, most of Europe doesn't require it.
In general, you're absolutely allowed to learn programming techniques from anywhere. You can contribute software almost anywhere even if you've read Windows source code. Re-using everything you've learned, in your own creative creation, is part of fair use.
Your example is the very specific scenario where you're attempting to replicate an entire program, API, etc., to identical specifications. That's obviously not fair use. You're not dealing with little bits and pieces, you're dealing with an entire finished product.
This model doesn't learn and abstract: it just pattern matches and replicates; that's why it was shown exactly replicating regions of code--long enough to not be "de minimis" and recognizable enough to include the comments--that happen to be popular... which would be fine, as long as the license on said code were also being replicated. It just isn't reasonable to try to pretend Copilot--or GPT-3 in general--is some kind of general purpose AI worthy of being compared with the fair use rights of a human learning techniques: this is a machine learning model that likes to copy/paste not just tiny bits of code but entire functions out of other peoples' projects, and most of what makes it fancy is that it is good at adapting what it copies to the surrounding conditions.
This is called prompt engineering. If you find a popular, frequently repeated code snippet and then fashion a prompt that is tailored to that snippet then yes the NN will recite it verbatim like a poem.
But that doesn't mean it's the only thing it does or even that it does it frequently. It's like calling a human a parrot because he completed a line from a famous poem when the previous speaker left it unfinished.
The same argument was brought up with GPT too and has been long debunked. The authors (and others) checked samples against the training corpus and it only rarely copies unless you prod it to.
I don't know if I agree with your argument about GPT-3, but I think our disagreement seems to be besides the point: if your human parrot did that, they would--not just in theory but in actual fact! see all the cases of this in the music industry--get sued for it, even if they claim they didn't mean to and it was merely a really entrenched memory.
The point is that many of the examples you see are intentional, through prompt engineering. The pilot asked the copilot to violate copyright, the copilot complied. Don't blame the copilot.
There also are cases where this happens unintentionally, but those are not the norm.
Have you used Copilot? I have not, but I have trained a GPT2 model on open source projects (https://doesnotexist.codes/). It does not just pattern match and replicate. It can be cajoled into reproducing some memorized snippets, but this is not the norm; in my experience the vast majority of what it generates is novel. The exceptions are extremely popular snippets that are repeated many many times in the training data, like license boilerplate.
Perhaps Copilot behaves very differently from my own model, but I strongly suspect that the examples that have been going around twitter are outliers. Github's study agrees: https://docs.github.com/en/github/copilot/research-recitatio... (though of course this should be replicated independently).
So, to verify, your claim is that GPT-3, when trained on a corpus of human text, isn't merely managing to string together a bunch of high-probability sequences of symbol constructs--which is how every article I have ever read on how it functions describes the technology--but is instead managing to build a model of the human world and the mechanism of narration required to describe it, with which it uses to write new prose... a claim you must make in order to then argue that GPT-3 works like a human engineer learning a model of computers, libraries, and engineering principals from which it can then write code, instead of merely using pattern recognition as I stated? As someone who spent years studying graduate linguistics and cognitive science (though admittedly 15-20 years ago, so I certainly haven't studied this model: I have only read about it occasionally in passing) I frankly think you are just trying to conflate levels of understanding, in order to make GPT-3 sound more magical than it is :/.
What? I don't think I made any claim of the sort. I'm claiming that it does more than mere regurgitation and has done some amount of abstraction, not that it has human-level understanding. As an example, GPT-3 learned some arithmetic and can solve basic math problems not in its training set. This is beyond pattern matching and replication, IMO.
I'm not really sure why we should consider Copilot legally different from a fancy pen – if you use it to write infringing code then that's infringement by the user, not the pen. This leaves the practical question of how often it will do so, and my impression is that it's not often.
The argument I was responding to--made by the user crazygringo--was that GPT-3 trained on a model of the Windows source code is fine to use nigh unto indiscriminately, as supposedly Copilot is abstracting knowledge like a human engineer. I argued that it doesn't do that: that GPT-3 is a pattern recognize that not only theoretically just likes to memorize and regurgitate things, it has been shown to in practice. You then responded to my argument claiming that GPT-3 in fact... what? Are you actually defending crazygringo's argument or not? Note carefully that crazygringo explicitly even stated that copying little bits and pieces of a project is supposedly fair use, continuing the--as far as I understand, incorrect--assertion by lacker (the person who started this thread) that if you copied someone's binary tree implementation that would be fair use, as the two of them seem to believe that you have to copy essentially an entire combined work (whatever that means to them) for something to be infringing. Honestly, it now just seems like you decided to skip into the middle of a complex argument in an attempt to made some pedantic point: either you agree that GPT-3 is a human that is allowed to, as crazygringo insists, read and learn from anything and the use that knowledge in any way they see fit, or you agree with me that GPT-3 is a fancy pattern recognizer and it can and will just generate copyright infringements if used to solve certain problems. Given your new statements about Copilot being a "fancy pen" that can in fact be used incorrectly--something crazygringo seems to claim isn't possible--you frankly sound like you agree with my arguments!!
I think a crucial distinction to be made here, and with most 'AI' technologies (and I suspect this isn't news to many people here) is that – yes – they are building abstractions. They are not simply regurgitating. But – no – those abstractions are not identical (and very often not remotely similar) to human abstractions.
That's the very reason why AI technologies can be useful in augmenting human intelligence; they see problems in a different light, can find alternate solutions, and generally just don't think like we do. There are many paths to a correct result and they needn't be isomorphic. Think of how a mathematical theorem may be proved in multiple ways, but the core logical implication of the proof within the larger context is still the same.
Statistical modelling doesn't imply that GPT-3 is merely regurgitating. There are regularities among different examples, i.e. abstractions, that can be learned to improve its ability to predict novel inputs. There is certainly a question of how much Copilot is just reproducing input it has seen, but simply noting that its a statistical model doesn't prove the case that all it can do is regurgitate.
It's not really comparable to a pen. Because a pen by itself doesn't copy someone else's code/written words. It's more like copying code from Github or if you wrote a script that did that automatically. You have to be actively cautious that the material that you are copying is not violating any copyrights. The problem is Copilot has enough sophistication to for example change variable names and make it very hard to do content matching. What I can guarantee it won't be able to do is to be able to generate novel code from scratch that does a particular function (source: I have a PhD in ML). This brute-force way of modeling computer programs (using a language model) is just not sophisticated enough to be able to reason and generate high level concepts at least today.
One way to look at these models is to say that they take raw input, convert it into a feature space, manipulate it, then output back as raw text. A nice example of this is neural style transfer, where the learnt features can distinguish content from style, so that the content can be remixed with a different style in feature space. I could certainly imagine evaluating the quality of those features on a scale spanning from rote-copying all the way up to human understanding, depending on the quality of the model.
Imagine for a second a model of the human brain that consists of three parts. 1) a vector of trillion inputs, 2) a black box, and 3) a vector of trillion outputs. At this level of abstraction, the human brain "pattern matches and replicates" just the same, except it is better at it.
Human brains are at least minimally recurrent, and are trained on data sets that are much wider and more complex than what we are handing GPT-3. I have done all of these standard though experiments and even developed and trained my own neural networks back before there were libraries that have allowed people to "dabble" in machine learning: if you consider the implications of humans being able to execute turing complete thoughts it should be come obvious that the human brain isn't merely doing pattern-anything... it sometimes does, but you can't just conflate them and then call it a day.
The human brain isn't Turing-complete as that would require infinite memory. I'm not saying that GPT-3 is even close, but it is in the same category. I tried playing chess against it. According to chess.com, move 10 was its first mistake, move 16 was its first blunder, and past move 20 it tried to make illegal moves. Try playing chess without a chessboard and not making an illegal move. It is difficult. Clearly it does understand chess enough not to make illegal moves as long as its working memory allows it to remember the game state.
Hmm... but a finite state machine with an infinite tape is Turing complete too. If you're allowed to write symbols out and read them back in, you've invalidated the "proof" that humans aren't just doing pattern matching.
How so? The page you link offers three definitions[1], and all of them require an infinite tape.
You could argue that a stack is missing in my simplified model of the human brain, which would be correct. I used the simple model in allusion to the Chinese room thought experiment which doesn't require anything more than a dictionary.
Turing completeness applies to models of computation, not hardware. Otherwise, nothing would be Turing-complete because infinite memory doesn't exist in the real world. Just read the first sentence of what you linked to:
In computability theory, several closely related terms are used to describe the computational power of a computational system (such as an abstract machine or programming language)
Human thought isn't anything like GPT thought - humans can spend a variable amount of time thinking about what to learn from "training data" and can use explicit logic to reason about it. GPT is more like a form of lossy compression than that.
Transformers do learn and abstract. Not as well as humans, but for whatever definitive of innovation or creativity you wanna run with, these gpt models have it. It's not magic, it's math, but these programs are approximating the human function of media synthesis across narrowly limited domains.
These aren't your crazy uncle's Markov chain chatbots. They're sophisticated bayesian models trained to approximate the functions that produced the content used in training.
The model and attention mechanism produces Bayesian properties, but transformers as a whole contain non-Bayesian aspects, depending on how rigorous you want to be in defining Bayesian.
This is true, but there's also a murkier middle option. I used to work for a company that made a lot of money from its software patents but I was in a division that worked heavily in open-source code. We were forbidden to contribute to the high-value patented code because it was impossible to know whether we were "tainted" by knowledge of GPL code.
No you are not, guaranteed (I think, not a lawyer).
At least from a copyright point of few.
TL;DR: Having right, and having a easy defense in a law suite are not the same.
BUT separating it makes defending any law-suite against them because of copyright and patent law much easier. It also prevents any employee from "copying GPL(or similar) code verbatim from memory"(1) (or even worse the clipboard) sure the employee "should" not do it but by separating them you can be more sure they don't, and in turn makes it easier to defent in curt especially wrt. "independent creation".
There is also patent law shenanigans.
(1): Which is what GitHub Copilot is sometimes doing IMHO.
Same here. I worked at a NAS storage (NFS) vendor and this was a common practice. Could not look at server implementation in Linux kernel and open source NFS client team could not look at proprietary server code.
> Your example is the very specific scenario where you're attempting to replicate an entire program, API, etc., to identical specifications. That's obviously not fair use. You're not dealing with little bits and pieces, you're dealing with an entire finished product.
No - google's 9 lines of sorting algorithm (iirc) copied from Oracle's implementation were not considered fair use in the Google / Oracle debacle.
Likewise SCO claimed that 80 copied lines (in the entirety of the Linux source code) were a copyright violation, even if we never had a legal answer to this.
That Supreme Court ruling doesn't appear to address the claims of actual copied code (the rangeCheck function), only the more nebulous API copyright claims.
nope, those lines were specifically excluded from the prior judgment - and SC did not cast another judgment on them:
> With respect to Oracle’s claim for relief for copyright infringement, judgment is entered in favor of Google and against Oracle except as follows: the rangeCheck code in TimSort.java and ComparableTimSort.java, and the eight decompiled files (seven “Impl.java” files and one“ACL” file), as to which judgment for Oracle and against Google is entered in the amount of zero dollars (as per the parties’ stipulation).
The fair use was about Googled API reimplementation.
It becomes a whole different case with a 1:1 copy of code.
And don't forget fair use works in the US, not necessarily in the rest of the world.
But I'm happy about all the new GPL programs created by Copilot
> > As a human, I am allowed to read copyrighted code and learn from it.
> Of course not. Reading some copyrighted code can make you entirely excluded from some jobs - you can't become a wine contributor if it can be shown you ever read Windows source code and most likely conversely.
You can of course read the code. The consequences are thus increased limitations, like you say.
What you mention is not an absolute restriction from reading copyrighted material. You perhaps have to cease other activities as a result.
> Of course not. Reading some copyrighted code can have you entirely excluded from some jobs
That's not a law. That's a cautionary decision made by those companies or projects to make it more difficult for competitors to argue that code was copied.
Those projects could hire people familiar with competitor code and assign them to competing projects if they wanted. The contributors could, in theory, write new code without using proprietary knowledge from their other companies. In practice, that's actually really difficult to do and even more difficult to prove in court, so companies choose the safe option and avoid hiring anyone with that knowledge altogether.
Now the question is whether or not GitHub's AI can be argued to have proprietary knowledge contained within. If your goal is to avoid any possibility that any court could argue that GitHub copilot funneled proprietary code (accessible to GitHub copilot) into your project, then you'd want to forbid contributors from using CoPilot.
In this case though we have machine learning model that is trained with some code and is not merely learning abstract concepts to be applied generally in different domains, but instead can use that knowledge to produce code that looks pretty much the same as the learning material, given the context that fits the learning material.
If humans did that, it would be hard to argue they didn't outright copy the source.
When a machine does it, does it matter if the machine literally copied it from sources, or first transformed it into an isomorphic model in its "head" before regurgitating it back?
If yes, why doesn't parsing the source into an AST and then rendering it back also insulate you from abiding a copyright?
>When a machine does it, does it matter if the machine literally copied it from sources, or first transformed it into an isomorphic model in its "head" before regurgitating it back?
You've hit the nail on the head here. If this is okay, then neural nets are simply machines for laundering IP. We don't worry about people memorizing proprietary source code and "accidentally" using it because it's virtually impossible for a human to do that without realizing it. But it's trivial for a neural net to do it, so comparisons to humans applying their knowledge are flawed.
This is not such a big problem in reality because the output of Copilot can be filtered to exclude snippets too similar to the training data, or any corpus of code you want to avoid. It's much easier to guarantee clean code than train the model in the first place.
That's a really good observation. Perhaps it highlights an essential difference between two modes of thought - a fuzzy, intuitive, statistical mode based on previously seen examples, and a reasoned, analytical calculating mode which depends on a precise model of the system. Plausibly, the landscape of valid musical compositions is more continuous than the landscape of valid source code, and therefore more amenable to fuzzy, example-based generation; it's entirely possible to blend two songs and make a third song. Such an activity is nonsensical with source code, and so humans don't even try. We probably do apply that sort of learning to short snippets (idioms), but source code diverges too rapidly for it to be useful beyond that horizon.
> then you'd want to forbid contributors from using CoPilot
I mean, if you used CoPilot on one computer, stared at it intensely for 1 hour, closed that computer, and then typed out code in the other computer that you were contributing from, you technically didn't use it for the contribution, you just used CoPilot for your education only.
Intellectual property is itself a flawed concept in many ways. It's like asking someone to do physics research but forbidding them from using anything that Einstein wrote.
Intellectual property itself is silly. How can a thought be the property of someone ?
Secrecy is the solution if you don't want others to learn from you (like Coca-Cola does).
It's not silly, it's an evolved and pragmatic solution to the question of how society can incentivize creative work. More or less every society has developed some notion of IP and there's little appetite in wider society to debate it - the idea of abolishing IP laws is deeply fringe and only really surfaces in forums like this one.
Does it have flaws and can it be improved upon? Sure. I think society underweights what improvements to the patent system in particular could do. But such ideas are so niche they are hardly even written down, let alone debated at large. Society has bigger issues on its mind.
Like any evolved system IP law encounters new challenges over time and will be expected to evolve again, which it will surely do. A simple fix for Copilot is surely to just exclude all non-Apache2/BSD/MIT licensed code. Although there might technically still be advertising clause related issues, in practice hardly anyone cares enough to go to court over that.
It's not a natural right, we supposedly do it too stimulate innovation by offering a reward and in order to get things into the public domain -- obviously Disney (and the politicians that kowtowed to them) ruined that for the World.
Patents should have reduced with product lifecycles, copyright should be a similar period; maybe 10-14 years.
If you read the video with a view to reproducing it then you created a derivative work, ie copyright infringement.
If you just used it for inspiration, that's fine; if the way it was coded is a result of technical constraints, that's fine too; if the code is generic it's not distinctive enough to acquire copyright in the first place.
>That's not a law. That's a cautionary decision made by those companies or projects to make it more difficult for competitors to argue that code was copied.
Okay, so it's not law, it's just a policy compelled by preceding legal judgements. Case law, perhaps.
>That's not a law. That's a cautionary decision made by those companies or projects to make it more difficult for competitors to argue that code was copied.
and they made those decisions based on the need to be able to argue in court that code was not copied.
>then you'd want to forbid contributors from using CoPilot
Right, the whole thing about arguing if copilot spits out a ten line function verbatim is not really what will be the problem, the problem is a human programmer still needs to run copilot and they will be the ones shown in the codebase as the author of the code (they could of course put a comment 'I got this bit from copilot' but might be cumbersome and anyway would hardly work as proof), although I suppose it would be not just proprietary code but code with an incompatible license.
> >That's not a law. That's a cautionary decision made by those companies or projects to make it more difficult for competitors to argue that code was copied.
> and they made those decisions based on the need to be able to argue in court that code was not copied.
Yeah, but only to make it easier for them to argue it; the letter of the law doesn't require it. You could argue that "Sure, I read Windows source code once -- but that was years ago and I can't remember shit of it, so anything I wrote now is my own invention." That might be harder to get the court to accept as a fact, but it's not a prima facie legal impossibility.
Yeah... but they didn't say it was the law that got you excluded from working on some projects from reading copyright code. It's corporate policy that does that - it's not a law but they do it based on who owns the copyright. Not everything that impacts you is a law.
They said
> Reading some copyrighted code can have you entirely excluded from some jobs
And they're right. It's because of corporate policies. They never said it was because of a law - you imagined that out of nothing.
No that’s not true. I did not edit my posts after reading their reply, and the false accusation was that I changed my comment after it was replied to.
I didn’t challenge whether the question was in good faith, but I’ll just note that the relevant discussion of copyright got dropped in favor of an ad-hominem attack.
My question of which “it” was being referred to is a legitimate question that I believe clarified the intent of my comment, and I added it to make clear I was talking about what @lacker said, not what @jcelerier wrote.
> Edit - I’m adding another point as an edit to show another way to communicate. Would any of your points been lost had you done something similar?
This doesn’t answer my question of why an edit should not be made before I see any replies, nor of why any edit is “poor form” and according to whom. I made my edit immediately. I’m well aware of the practice of calling out edits with a note, I’ve done it many times. I don’t feel the need to call out every typo or clarification with an explicit note, especially when edited very soon after the original comment.
Thanks? Edits exist before you finish replying too, right? Maybe point that out to @chrisseaton, whose incorrect assumption was that I edited in response to what he wrote.
> Reading some copyrighted code can have you entirely excluded from some jobs - you can't become a wine contributor if it can be shown you ever read Windows source code and most likely conversely.
If that's the case, it should be easy to kill a project like wine - just send every core contributor an email containing some Windows code.
Nobody could grant if that thing is really windows code or a fake. Not without the sender self-identifying as a well known top MS employee having access to it. In that case the sender would be doing something illegal and against MS interests.
The result would be WINE having an advantage to redo the snippet of code in a totally new and different way and MS being forced to show part of its private code, that would expose them also to patent trolls.
Would be a win-win situation for Wine and a lose-lose situation for MS.
In my experience open source has now become so prevalent that I think some young developers could be completely caught out if the pendulum swings the other way.
Semi-related, the GNU/Linux copypasta is now more familiar to some than the GNU project in general - this is a shame to me as I view the copypasta to be mocking people who worked very hard to achieve what GNU has achieved asking for some credit.
It's very clearly visible on the Wine wiki that people who have ever seen Microsoft Windows source code cannot contribute to Wine due to copyright restrictions:
I've you've ever read a book or interacted with any product, you've learned from copyrighted material.
You've extrapolated "some organizations don't allow you to contribute if you've learned from the code of their direct competitor" to "You're not allowed to learn from copyrighted code", which is absurd.
Just when I thought tweetstorms couldn't get any worse, here's one where every tweet is a quote-tweet of the author. I don't even understand how I'm supposed to read this.
> Copyright has concluded that reading by robots doesn’t count. Infringement is for humans only; when computers do it, it’s fair use.
Surely there's a limit to this. If I use a machine to produce something that just happens to exactly match a copyrighted work, now it's not infringement because of the method I used to produce it? That seems nonsensical, but maybe there's precedent for this too? (I have no idea what I'm talking about.)
That quote is basically entirely nonsensical. 'copyright' hasn't decided anything (nor has any legislative body nor the courts). All that's happened is that OpenAI has put forward an argument that using large quantities of media scraped from the internet as training data is fair use. This argument for the most part does not rely on the human vs machine distinction (in fact it leans on the idea that the process is not so different from a human learning). The main place this comes up is the final test of damage to the original in terms of lost market share where it's argued that because it's a machine consuming the content there's no loss of audience to the creator (which is probably better phrased as the people training the neural net weren't going to pay for it anyway). A lot does ride on the idea that the neural net, if 'well designed', does not generally regurgitate its training data verbatim, which is in fairly hot dispute at the moment. OpenAI somewhat punts on this situation and basically says the output may infringe copyright in this case, but the copyright holder should sue whoever's generating and using the output from the net, not the person who trained and distributed the net.
Surely it could be argued that there is a loss of audience to the author. At the moment some people will read the author's code directly in order to find out how to solve a problem. In the future at least some of those people will just ask copilot to solve the problem for them.
> Nobody is really being hurt when a new tool makes it easier to copy little bits of code from the internet.
That's the first time I've heard copilot get described as copying little bits of code from the Internet. Copilot aggregates all github source code, removes licences from the code, and regurgitates the code without licenses.
Furthermore, both github and the programmers using copilot know this. Look at any one of these threads written by programmers about copilot. Using copilot is knowingly stealing the source code of others without attribution. Using copilot is literally humans stealing source code from others. Copilot was written for the purpose of taking other's code.
It's not "literally" stealing, because it doesn't deprive anyone of the use the source code. Those two points were somehow extremely obvious to everyone here as long as it was music and movies we were talking about.
And Github themselves have stated that only 0.1% of the Copilot output contains chunks taken verbatim from the learning set. Of those, the vast majority are likely to be boilerplate so generic it's silly to claim ownership, and maybe sometimes impossible to avoid.
It is actually true, in the UK at least the legal definition of theft includes the deprivation of the owner of the property in question.
The copyright lobby hedge the term as "copyright theft" (i.e. not actual theft) in order to shift the societal understanding. Whish appears to have worked.
This is not a value judgement on copyright infringement. Just that technically it doesn't meet the legal definition of theft.
cf. The rather amusing satire of the "you wouldn't steal a handbag" campaign in the UK, which ran "you wouldn't download a bear!"
Oh, then today I learned! I didn't realise they were different. Just looked it up in a "plain English dictionary of law" and the distinction seems subtle but important. Rather than "with the intention of depriving the owner", the US one says "with the intention of converting it to their use", which seems broad enough to cover exploiting a copy, rather than the original (or only, in the physical realm...)
The US definition seems more robust, as otherwise, I could somehow steal something you built (e.g. a farm) and then generously allow you to continue using it, perhaps for a fee. You would therefore not be deprived of it but I would still be the new owner or user.
It seems unlikely this distinction would ever matter in a real court though.
Oh Idunno, it "depends on what the meaning of 'is' is"...
> Rather than "with the intention of depriving the owner", the US one says "with the intention of converting it to their use", which seems broad enough to cover exploiting a copy
...or rather, on the meaning of "converting". I've always theought of that as "changing", i.e. "it used to be one thing, and now it's something else". But copying IP only adds a use of it, it doesn't fundamentally change it in this sense: it is still available for the original proprietor's use. Is that really "converted"?
At least for the ordinary-English uuage of the word, I think it could be argued that it isn't. But then maybe this isn't just English; maybe the word "converting" also has some term-of-trade definition in that dictionary?
Actually it's not theft in the US, it's intellectual property rights infringement. The way you're defining it memes are theft. There is also a thing called fair use when you don't use a significant portion of a copyrighted work, which is why memes and using small bits of code aren't infringement when you use them in different context.
In germany, there is no fair use exception to copyright. Also, there is no IP most software principles: e.g. writing a specific loop, that even an (weak) AI could suggest, would probably be too simple to be protected.
What could be valid is a right to not mimic collections, but that would mean you cannot clone the Copilot, as input is mapped to a non-trivial collection of outputs.
The issue isn't an AI reading copyrighted code, the issue is an AI regurgitating the lines of copyrighted code verbatim. To be clear, humans aren't allowed to do this either.
And sure, nobody cares about your stupid binary tree, but do they care about GNU and the Linux kernel? Imagine someone trained an AI to specifically output Linux code, and used it to reproduce a working OS. Is that fair?
Copilot is lifting entire functions from GPL code. Legal technicality aside , I know I'd be upset if I gpl'ed some code and someone stole large parts of it.
Why would you GPL the code in the first place if you didn't want other people using it? It's perfectly within the license for someone to do basically whatever they want with GPL code as long as they're not redistributing it. That includes using it for the internal operations of a Fortune 500 company, using it to run a dictatorship, or building a SaaS business on top of it. If you don't want people to "steal" your code, the GPL isn't the right license.
> Copyright has concluded that reading by robots doesn’t count. Infringement is for humans only; when computers do it, it’s fair use.
So wait, if I write my own AI, lets call it cp, and train it on gnu-gcc.tar.gz with the goal of creating a commercial-compiler.tar.gz then I can license the result any way I want? After all most of the work was done by the computer.
I don't think it should be infringement. You can't copyright an algorithm, and Carmack's function is like six lines of code. If you just read Carmack's source code, then rewrote the same algorithm with different variable names, it would clearly not be infringement. Is it really so bad if you keep his precise variable names, comments, and indentation? How does it hurt Carmack to reproduce this tiny snippet of code exactly, rather than with a small rewrite?
That function appears in hundreds, if not thousands of GitHub repos. It's plausible that it's the most famous block of code ever. Are all those repos guilty of copyright infringement?
The only ways this argument could be less alarming to me is if people were bothered that it was writing the same Hello World as somebody else, or that it was naming variables "foo" and "bar".
Let's wait until we have a bulletproof, egregious, and inexcusable case of it lifting code until we panic.
So what happens when someone makes a transformer network that can read fanfics and animate them live trained from the whole collection of MPAA movies? I mean its inevitable. Given the history of the MPAA, I don't think they're gonna lie down and just take it. I feel like we're in a slippery slope to provoke the "IP lords" into brutally draconian measures that will make the Disney copyright extensions look like a tax deferral.
> Infringement is for humans only; when computers do it, it’s fair use.
But ultimately the human is OK-ing the code and committing it, basically as his own work most of the time. I'm reasonably sure that this may matter to courts.
Sorry but it is not a robot publishing the "lifted" code but a human. So the copyright will very much apply. That's an argument like saying CTRL+C/CTRL+V is OK because it is a "computer doing it".
Plus it is not "minor infringement" but code is being lifted verbatim - e.g. as has been demonstrated by the Quake square root code.
Fair use for training and "independent creation" are one think a AI "remembering and mostly verbatim copying code over" an another.
Many of the current Machine Learning application try to teach AI to understand the concepts behind their training data and use that to do whatever they are trained to do.
But most (all?) fail to properly reach the goal in any more complicated cases, at least the kinds of models which are used for things like Copilot (GPT-3?).
Instead what this models learn can be described as a combination of some abstract understanding and verbatim snippets of input data of varying size.
As such while they sometimes generate "new" things based on "understanding" they also sometimes just copy things they have seen before!! (Like in the Quake code example where it even copied over some of the not-so "proper" comments expressing programmers frustration).
It's like a human not understanding programming or english or Latin letters but has a photographic memory and tries to somehow create something which seems to make sense by recombining existing verbatim snippets, sometimes while tweaking them.
I.e. if the snippets are small enough and tweaked enough it's covered by fair use and similar, BUT the person doing it doesn't know about this, so if a large remembered snippet matches verbatim it will put it in effectively copying code of a size which likely doesn't fall under fair use.
Also this is a well known problem, at least it was when I covered topics including ML ~5 years ago. I.e. good examples included extracting whole sequences of paragraphs of a book out of such a network or (more brilliantly) extracting thinks like peoples contact data based on their names or credit card information (in case of systems trained on mails).
So that Copilot is basically guaranteed to sometimes copy non super smalls snippets of code and potential comments in a way not-really appropriate wrt. copyright should have been a well know fact for the ML specialist in charge of this project.
> Copyright has concluded that reading by robots doesn’t count. Infringement is for humans only; when computers do it, it’s fair use.
Reading by a robot doesn't count. But injecting a robot between copyright material and a product doesn't magically strip the copyright from whatever it produces.
> Copyright has concluded that reading by robots doesn’t count. Infringement is for humans only; when computers do it, it’s fair use.
This is silly. Co pilot is not reading by itself, someone pushed buttons telling it to read and write. If I clone the entire github without the licenses I am telling a robot to do it, doesn't make it right.
It all comes down to this: this has not been tested in the court. The above opinion, or for that matter any opinion from any lawyer or not-a-lawyer, is just that, an opinion.
As a business it is your responsibility to determine if this code-copying is worth a risk to your business.
Based on my experience, I'm pretty sure all corporate lawyers will disallow such code copying, till it has been tested in the court. It's just a matter of who will be the guinea pig.
It should be obvious that if the robot is simply scraping web sites and reproducing their text verbatim (without permission and without giving credit) that would be an infringement.
There are a lot of shades of gray between that and the other extreme, which is where it is scraping millions of sites, learning from them, and producing something that isn't all that similar to any of them. Both ends of the spectrum, and everywhere in between, are things that humans can do, but as machines get more capable this is getting trickier and trickier to sort out.
In this case, it sounds like it might be closer to the first example, since significant parts of the code will be verbatim.
Ultimately, I am hoping that such things cause us to completely rethink copyright law. The blurriness of it all is becoming too much to make laws around. We just need better mechanisms to reward people for creating valuable IP that they allow people to freely use as they please.
Hit the nail on the head, at least as far as my concerns go.
Security is a constant issue with humans writing code. Do we really want an "AI" that understands neither code nor security spitting out snippets of code to pasted into network services?
If Copilot ever becomes truly popular it's going to be an absolute security nightmare both from the code it suggests (just bad code, GIGO as you say), but also because adversaries will be gaming it by posting bad code for it to pick up and "learn" from.
There's a lot of sibling commenters disagreeing with this take but I think they miss that ultimately this comes down to how legal experts interpret tech, rather than what tech experts think law should apply.
This is, imo, unfortunate, as often the legal interpretation is based on a gross misunderstanding of how the tech works, but this is the way.
I don't think copilot should be legal according to my own interpretation but in this (rare) case I feel the "IANAL" tag applies not because I lack (legal) knowledge, but rather because I have (tech) knowledge that is likely absent from actual decision making on legal outcomes (therefore leading to different legal outcomes than how I would see things working).
> nobody cares if my ten-line "how to invert a binary tree" snippet is the same as someone else's.
Maybe nobody cares about that, but the problem is that Github's automated tool is not telling you what code it shows you is actually an exact copy of existing code, or how much of that existing code is being copied, or whether the existing code is licensed, or, if it is licensed, whether your copying is in accordance with the license or not. And without that information you can't possibly know whether what you are doing is legal or ethical. Sure, you could try to guess, but that sort of thing is not supposed to rely on guessing.
An AI isnt learning from it. Its effectively copying prior work when it solves a problem. There is no novel out of bounds data generation by modern ai approaches
> As a human, I am allowed to read copyrighted code and learn from it. An AI should be allowed to do the same thing.
This is a very false equivalency. AI and humans are different. First, AI is at best a slave, and likely a slave of a capital. Second - scale makes difference.
Well, maybe the interpretation will change if the right people are pissed off.
At this point, how hard would it be to produce a structurally similar "content-aware continuation/fill" for audio producers, film makers, etc, which suggests audio snippets or film snippets, trained from copyrighted source material?
If prompted by a black screen with some white dots, the video tool could suggest a sequence of frames beginning with text streaming into the distance "A long time ago in a galaxy far far away ..." and continue from there.
Normally we don't try to train models to regurgitate their inputs, but if we actually tried, I'm sure one could be made to reproduce the White Album or Thriller or whatever else.
Autonomous programming will be explored. Potentially, Copilot is a proof of concept, an early step in that direction. If it is, the corrections made by Copilot users will be applied to the development of the future of unattended programming. Whether it is or not, it's close enough that any legal outcomes experienced by Copilot users will contribute to the definition of liability boundaries relevant to the future of autonomous programming. Copilot users are numerous enough that the incidence of risk is low of ending up under the foot of a copyright owner with the means and will to crush a user, but no one should take such a risk to use a novelty like Copilot in production code.
> Nobody is really being hurt when a new tool makes it easier to copy little bits of code from the internet.
Of course people are hurt, namely the original creators who spent years of work and whose work is potentially laundered, depending on how good this IP grabbing AI will get.
If it gets really good, some smug and well connected loser (e.g. the type who posts pictures of himself with a microphone on GitHub) will click a button, steal other people's hard work and start a "new" project that supersedes the old one.
There might be a slippery slope here: suppose there's a GPL version of product X in the training set. I'm building a proprietary competitor. Then let's say copilot makes it a little bit easier and cheaper for me to build my product.
Now suppose it's 10 years from now and it's trivial to build a proprietary competitor.
You sure about that? You aren't allowed to read it outside of the license attached to it. Downloading pirated source code, reading it, and then typing it out from memory doesn't magically give you a right to use it in any way. I would argue the licenses attached to most copyrighted code are being violated the moment the code is scraped and replicated without permission.
> As a human, I am allowed to read copyrighted code and learn from it. An AI should be allowed to do the same thing.
This is a non-sequitur. Why should it?
> And nobody cares if my ten-line "how to invert a binary tree" snippet is the same as someone else's.
Are you going to make up a rule for every length and type of code? What about twenty line? If ten lines are fine then surely twenty would be? How about pictures? If some code is then surely a picture or two wouldn't hurt? Let's just tweak the AI slightly so it regurgitates more code verbatim -- or do courts have to examine any change made to the AI and okay them?
> Nobody is really being hurt when a new tool makes it easier to copy little bits of code from the internet.
The Windows source code can be found on the internet. As a human you're allowed to read that if you have it. Try making an AI that copies bits of that into your code and release that on the internet.
> I am capable of summarizing the thoughts of lawyers
Then, I'm sorry, but you seem to have done a pretty bad job of summarizing that paper ?
My own take on summarizing it's conclusion would be :
"If the program can pass the Turing Test, then it should be legally liable, just like a human would."
(Yes, emphasis on the should here, but the way that you're presenting that quote might make readers think that that paper's conclusion is the opposite one !)
----
> Nobody is really being hurt when a new tool makes it easier to copy little bits of code from the internet.
Some of the examples from that paper are A&M Records, Inc. v. Napster (no comment) and White Smith Music Publ’g Co. v. Apollo Co. (piano rolls), and in that latter case we pretty much (?) got the whole Copyright Act of 1909 the very next year, where these “mechanical reproductions” were subjected to a statutory compulsory license.
So at the very least there should be concern about how Copilot might be eventually considered by the courts to facilitate copyright infringement and at the very least have to provide the source of its "insights" ?
(Attribution being the bare minimum that most of the software licenses require.)
> Copyright has concluded that reading by robots doesn’t count. Infringement is for humans only; when computers do it, it’s fair use.
This is a ridiculous conclusion. The ultimate destination of the robot actions' product is its user, i.e. a human. It is a clear corollary of the transitive law. Therefore, all human-focused legal concepts, including infringement, are applicable in such cases.
The absurdness of the conclusion cited above can be easily illustrated, as follows. Suppose that a person owns or rents an advanced robot (say, like Boston Dynamics' Spot, but better). He/she then programs it to break into someone's house and steal something valuable. All goes by the plan, the robot delivers the stolen goods to the rendezvous point and, if rented, gets returned. Now, according to the conclusion's logic, since a robot has done the actual "work", "it's fair use". Nonsense, right?
Just to clarify: I like the concept of GitHub Copilot (even though I have not yet tried this particular product). It offers various benefits, from pedagogical to adopting software engineering best practices to improving engineering productivity. However, I think that IP and legal aspects of this approach and specific product should be carefully studied and resolved in a consistent manner (e.g., prevent the model or system to output exact source code snippets).
> As a human, I am allowed to read copyrighted code and learn from it.
Plenty of examples show that it didn't learn that much and copy literal parts of code. At my school that would have been ground for plagiarism which weren't treated lightly.
> As a human, I am allowed to read copyrighted code and learn from it. An AI should be allowed to do the same thing.
You're taking the "learning" metaphor too literally. Machine learning models do not learn. They can and do encode their training material into their weights and biases, too. That's what Copilot was doing, regurgitating parts of its training data line for line.
To me, that is not much different from transforming a copyrighted piece of work with, say, compression, a lossy codec or cropping. There are plenty of people who can learn to play Metallica songs really well, but if they copied specifics aspects of their work it would be copyright infringement, as well.
A human being can literally learn. We can understand abstract principles from one copyrighted work and apply them to another without actually infringing its copyright. A ML model does not understand, it is a statistical model. It is inherently a derivative work, and it often encodes the copyrighted work into was trained on into the model itself.
>Copyright has concluded that reading by robots doesn’t count. Infringement is for humans only; when computers do it, it’s fair use.
Glad to hear this. My warez group from here on out will only release binaries written collaboratively with a neural net trained on the best proprietary software available
I have a question. How to define the AI? In an extreme case, could I say copy-paste is the AI if I implement it in hundreds of thousands of NN layers and it output piece of the origin work (e.g. 30s of music from 3mins with small modification).
People really sign up without reading Terms of Conditions and then complain when GitHub decides to do something with the data that you've given them permission to use under the ToS
A tiny percentage (less than 1%) [0]of people read terms and conditions- they are long, repetitive and often in legal language. If you expect to read every terms and conditions and privacy policy (and every change there of), you would waste over 240 hours over the year.[1]
[0] Bakos, Y., Marotta-Wurgler, F. and Trossen, D. R. (2014) ‘Does Anyone Read the Fine Print? Consumer Attention to Standard-Form Contracts’, The Journal of Legal Studies, 43(1), pp. 1–35. doi: 10.1086/674424.
[1] McDonald, A. M. and Cranor, L. F. (2008) ‘The Cost of Reading Privacy Policies’, A Journal of Law and Policy for the Information Society, 4(3), pp. 543–568.
I abandoned github when they put code that was not licensed (is: copyright retained) and reproduced it and saved it in their Arctic Vault without the authors consent (mine)
How is the Arctic Vault different from any other offsite backup?
I suppose one issue is that you (presumably) can't request deletion from it (which may even be a GDPR violation).
Edit: I looked up the relevant GDPR stuff, apparently there's an exemption for when "erasing your data would prejudice scientific or historical research, or archiving that is in the public interest.", which it arguably includes the Arctic Vault.
What's wrong with the Arctic Code Vault [1]? Is the only problem that they didn't seek your consent? How is it different to deploying a new availability zone and having your public repos accessible on another server? Your code is preserved verbatim, and it's not possible for GitHub to provide their service without the right to make verbatim copies of your code, which presumably you agreed to as part of their ToS.
But LTO is fine? I was going to ask if it was because it's not intended as a backup, but that's not even true, this is intended as a backup on a long time scale.
> is basically reprinting it without my permission.
What if I were to tell you, that in order to publish any code, on the internet, that code has to be "reprinted" to many different computers and places?
In fact, whenever you yourself need to even access that code, that code is copied over to many different computers along to way, as is necessary to send it to you.
Github does not own the Arctic Vault, there is an independent company behind it [1]. Given its purpose as a long-term archival, it is likely that exemptions to the copyright for (library) archival can apply here. [EDIT: This is probably not true, see the reply for the reason.]
> Github does not own the Arctic Vault, there is an independent company behind it
Github are the ones doing all the archiving. So, in essence, they do own that. Piql are just the ones providing the storage: it's a commercial for-profit entity employed for backup by another commercial for-profit entity.
It is technically true, but the Arctic World Archive specifically "accepts deposits that are globally significant for the benefit of future generations, as well as information that is significant to your organisation or to you individually" [1]. So it doesn't accept any data (at least as far as I see) and the Github archive should also have met this criteria.
By the way, my initial statement that it may qualify for copyright exemptions turned out to be false for a different reason. They only apply when the library and/or archive in question is open to the public, and the Github Arctic Vault isn't. Thus I think it's actually a Github's generic usage grant in the ToS [2] that allows for the Vault. The Copilot is, of course, very different to anything described in the ToS.
...provides prime-rate marketing bullshit in its marketing materials
> Thus I think it's actually a Github's generic usage grant in the ToS
If you refer to Section D.4, then:
- Arctic Vault is not "for future generations", but for GitHub only, since that section doesn't permit GitHum to just make copies willy-nilly for anything other than "as necessary to provide the Service, including improving the Service over time" and "make backups"
- This specifically makes GitHub "the owner" of that data, and not "some third-party" as you originally suggested
If you insist the term "owner" for copyright grants, you have a faulty understanding of copyright. The terms of service, much like software license, only allows for the licensee to do some specific things (in this case, including backups) under certain circumstances agreed upon in advance. Copyright assignment, which is akin to the ownership transfer, is much harder.
> This specifically makes GitHub "the owner" of that data, and not "some third-party" as you originally suggested
This one is my fault though, I've used the "Arctic Vault" as an archival site, but as I later realized it is a Github's archive stored in the Arctic World Archive. So yeah, it's (only) Github that can retrieve the data.
This is a commercial for-profit company, GitHub, taking some code and storing it in cold storage of some other commercial for-profit company, with no one, except these two parties have access to this code. And it doesn't look like GitHub even has the right to do it because it stores it for some purpose other than whatever is stated in their ToS.
I wonder if the whole kerfuffle around Copilot will end up spilling some light on this, too.
I haven't read this interpretation of the Arctic Vault project - presumably most users of GitHub are okay with their code being reproduced/backed up across many production servers for fault tolerance. Making an 'extra special' long-term backup in the Arctic Vault doesn't seem like a meaningfully different action to me - i.e. using a cloud-based host is essentially opting in to this kind of 'license violation'.
If they had taken one of their existing DB/disk backups and called it a vault, would that have been an issue?
I never hosted--with quite some prejudice, even--any of my projects on GitHub (for a number of reasons that are off topic right now)... it didn't matter, though: people take your code and upload it to GitHub themselves (which is their right); so you can't avoid Copilot by simply self-hosting your repositories.
I’d argue that this new use case is very interesting to open source and how it relates to the various licenses, and not necessarily “the point of open source”.
I can imagine people being OK with their code being used as-is, and/or being modified, but not used completely out of context to train some corporate AI to inject code into commercial code based.
Agreed. I am considering relicensing all of my permissively licensed code because of this. The fundamental assumptions I had when releasing that code under a permissive license have been violated.
When you use a permissive license, it’s best you stop thinking of it as your code. You’ve set it free for everyone, and while you may retain copyright in some abstract sense, it really no longer belongs to you.
While I agree with you--in that the vast majority of people who publish code under permissive licenses actually have an implied set of "moral code" restrictions that they end up surprised people violate even though they specifically allowed such by their choice of license (implying they should have chosen a different, and likely more restrictive, license)--even permissive licenses tend to at least include "you can't take my code without crediting me for taking my code", and so I can appreciate someone being upset about that not happening.
Under GitHub's legal theory (fair use), nothing you put in that license file can stop them from doing so legally.
If copyright applies, they're already in violation by failing to attribute your MIT contributions and could theoretically be sued for infringement (as they did not abide by the terms of the license).
You can't give out something for free without limitations and then complain when someone uses it for something you didn't expect. Well you can complain but no one has to listen.
Githubs use seems very in the spirit of open data and code. Using open source to help others.
We didn't give it away for free without limitations: we carefully drafted licenses to attach to our code to establish legal boundaries on what we considered acceptable; my code, for example, is under GPL, which says "I am OK with you using the products of my labor under the requirement that you will then let me use the product of your labor"... hell: almost every bit of open source code has at minimum "I am OK with you using the products of my labor as long as you are at least willing to give me credit somewhere", a minimal limitation that Copilot doesn't honor (and prevents its users from honoring): Copilot is essentially a giant code launderer designed to strip away licenses from effort that was only contingently given to the community.
Licenses explicitly are the set of permissions and limitations for someone to use the code. Even most permissive open source licenses require that you maintain an attribution with the text of the license in derivative works. Copyleft licenses and in particular the GPL put very strict requirements on what types of licenses are acceptable in any derivative works.
In literally no open source license except "do-whatever-you-want-i-dont-give-a-damn-bye"-type licenses like WTFPL are you giving something away for free without limitations. That's not even close to what open source means, at all. Open source and public domain are not synonymous terms. And in those cases where there are literally any terms in a license, use of Copilot obviously violates the terms of the license, unless the user operating Copilot goes back, finds the code Copilot is stealing from, and makes the proper attribution / otherwise ensures that they are meeting the terms of the license of the stolen code.
Well... "the point of" open source for some of us is to participate in a collaborative commune where we are willing to contribute code to the collective specifically because other people are required to also contribute their code to said collective as part of a shared battle against opaque proprietary systems; so the concept that someone is going to then find it, scrape it, and "launder" what was supposed to be our competitive advantage into their closed source projects by training it into a glorified pattern recognizer and then regurgitating it into their text editor without even as much as attribution without realization that the work we did and contributed to the world was part of a tit-for-tat pact as they want to have their cake and eat it too kind of ruins it for me... like it is bad enough that I have to constantly guilt trip people into not violating my license already: systematizing it via Copilot is making me think that we might need even stricter mechanisms for distribution of code within the commune so as to build a kind of "decentralized trade secret". (That said, other than your wording about "the point of open source", I agree with your doom-y sentiment 100%.)
Has Github confirmed anywhere that copilot is only trained with projects on Github?
The OpenAI people seem to grab any bit of data they can get their hands on, regardless of the source. I don't see why they'd limit themselves to Github for something like this.
The point I am making is that even if they did, removing your code from GitHub doesn't help you: your code is going to end up on GitHub anyway; this is a stronger position that requires fewer assumptions.
Your choice but be aware that self-hosting probably reduces collaboration with community. GitHub and GitLab makes it easy to contribute a pull request. Hundreds of private cgit web frontends make it hard to contribute and it is often impossible to search the code on the web, requiring a clone which takes a long time for big repos.
It seems weird to do this over a feature that is still in technical preview, we don't even know if this product will ever ship publicly. I'm guessing a public release is still years off given the number issues they need to work through before release. My understanding is that they are working on an attribution system to catch cases with common code. Beyond that this person seems to use the MIT licensed code which already can be used internally by a company to host a proprietary service without attribution. It would make more sense to be outraged if you were using AGPL or something.
Grats. I abandoned a while ago as well. If anyone is looking for a rec for self-hosting: Gitea is cake. Sits nicely behind Caddy as all my other services do. Alternatives such as Gitlab I found wanted to 'own' too much of my system.
544 comments
[ 4.7 ms ] story [ 322 ms ] threadInteresting times ahead. For example, if you believe these kinds of tools will become a huge competitive advantage, and that the inclusion of GPL code is a meaningful force multiplier, it kind of implies the fusion of AI code generation and the GPL will eat the world.
If anything, I think the real test of this tech is going to be audio, as it has the right overlap of "big copyright is going to get pissed", "there already exist tools that attempt to automatically detect even small bits of infringement", "people actually litigate even small bits of infringement", and "it feels feasible in the near future": you whistle a tune, and the result is a fully produced backing track that sometimes happens to exactly sound like the band backing Taylor Swift on a recognizable song and generates Taylor Swift's voice, almost verbatim, singing some of her lyrics to go along with it.
There's plenty of skepticism there, even in the early comments.
I never considered the copyright and related ethical implications of ML at all, or thought about the impact it may or may not have on programmers. Your first thoughts on something can be wrong (and actually, often are) and it takes a bit to really think things though – or at least, it does for me.
on edit: fixed typo
I would also be extremely surprised if most open source copyright holders didn't already expect their licensing terms to protect against this kind of code/authorship laundering. Speaking individually, I know that it certainly surprised me to hear that GitHub thinks that it's probably okay to regurgitate entire fragments of the training set without preserving the license.
It should be considered as fair-use of USA except we don't use Common Law system so we explicitly state what exempt from the copyright protection.
That said - so they would be able to sell some things in Japan that they couldn't other places.
It's still copyright laundering, if you ask me.
My understanding as a two-year student of ML is that you are allowed in the US to go download any old image, train on it, and then release the model as long as the outputs are "sufficiently transformative."
That last phrase is the key part, and has never been tested in court. It's entirely possible that either I'm mistaken here, or that the courts will soon say that I am mistaken here. https://www.youtube.com/watch?v=4FA_gt9w28o&ab_channel=guava...
Copilot seems ... well, less transformative. I'm still not sure how to feel.
https://twitter.com/luis_in_brief/status/1410985742268911631...
The irony is that copilot won't suggest its own source code, just everyone else's. It is open source without the benefits.
Yeah, don't post your code in the public for everyone to read. If I am musician, and I play my song publicly, people will hum it if they like it. I can't do anything to stop that, except not play the song to anyone.
Plus, to be honest I’m not even sure whether I’m for or against that, I am just wondering if one was against it but still wants to do open source work do they have any recourse?
I don't give a shit about the Copilot, but I care even less about Rian Hunter and his statements.
>Who asked?
But you deleted that comment.
Now this was completely unexpected.
>I don't give a shit about the Copilot, but I care even less about Rian Hunter and his statements.
This is untrue because you had a choice of not saying anything at all and carrying on (clearly not giving a shit) or take the time to leave such a comment (giving enough of a shit to inform everyone you don't give a shit.) So far this and Lloyd's is the only crying going on in this topic.
Back away from this specific situation for a second: If you would ignore something entirely if it wasn't being shoved in your face, complaining about it being shoved in your face and saying it's stupid wouldn't mean you suddenly "care" about the underlying item.
(And no, I'm not saying that an HN post is shoved in your face. It's a more extreme example to make the point more clear.)
I agree that there needs to be talk about licensing and copyright but with so "less/no content" there can be no meaningful discussion other than aimless banter.
And their only huge project on GitHub is dbxfs, a userspace dropbox filesystem with 687 stars https://github.com/rianhunter?tab=repositories&q=&type=&lang...
I think this is just a post meant to continue the discussion of CoPilot past the first 2 days of news.
One of the beautiful things about HN is that you don't need to be anything, you just have to have something interesting to say.
It's just posted(not by the guy that made the page, mind you) to farm karma, exploit the news cycle and carve out some more space for discussion of this tired topic.
> It's just posted(not by the guy that made the page, mind you)
Others would complain if the author himself had posted this.
Sometimes we've seen it but it is a new angle.
If he had a good argument for that, fine. But without that he really needs to be someone whose opinion I care about.
> What is there that is not solid, CoPilot is using community code that is under GPL licence therefore Microsoft should not be able to charge for CoPilot but give it for free, or not create another revenue stream.
You're doing the same thing as OP by assuming that this is illegal. That had yet to be determined. It could easily be the case that this falls under some fair use law or isn't even covered by copyright. It isn't for humans!
Fair use can be drill down to following, a very simple exploit question.
Would you work for free, if someone would earn million on your own work?
if (answer===yes) {
"then let me employ you I have few ideas and I need free work that could make me wealthy."
} else {
"if no then your entire argument is pure hypocrisy, trying to justify wealth built on exploit of others" }
The topic is a current one [1], which makes it even more valuable.
[1] https://news.ycombinator.com/item?id=27676266
Why is this comment noteworthy? Who is this person? Am I missing something?
Weakening copyright also weakens copyleft - for example, it seems reasonable to me that the producer of an open-source work should be entitled to require reciprocal openness from people who build upon it. If I can legitimately launder some GPL source code (say, a Linux kernel driver) through an ML model without being obliged to release the resulting code, I think everyone loses.
only people who have released their code publicly under a (mostly) open license
so, not Microsoft
It's a bad idea.
The thing about copyright law that needs reform is its bias toward the benefit of large corporate entities. Platforms' implementations of DMCA compliance allow "rights holders" to spam perjurious takedown requests en masse, garnishing the earnings of creators and legitimate rights holders in what can only be called (in addition to perjury) outright fraud. Companies like Github scrape the web for content, most of it copyrighted, and use it to construct new products for their own profit. Rare recitation events aside, I think their use case is legitimate fair use in the eyes of the law (and if you look at my comment history you'll see me vehemently arguing to that effect), but should it be? We don't seem to be asking that question, which is really disappointing--we're either complaining loudly and without substance, or blithely accepting the might-makes-right ethic as the central pillar of our IP law.
That doesn't look like it's the point to me.
""[the United States Congress shall have power] To promote the Progress of Science and useful Arts, by securing for limited Times to Authors and Inventors the exclusive Right , to their respective Writings and Discoveries." "
As I read that, copyright is there to 'promote progress', not to maximize gains.
No doubt there is a million linear feet of case law that got us where we are.
Honestly, I rather like this whole question of copilot. I solidly appreciate the brilliance of github as a honeypot.
What better way to promote said Progress than by making sure said Authors and Inventors can make enough money off their work to keep doing it? As written, it's a roundabout way to get at the instrumentality of capital, but if that's not what they had in mind then I'm not sure what they were getting at. Without copyright, a creator's rights to their own work aren't diminished; it's just that everyone else's are expanded to the same level.
(I'd love to know if I'm way off base about this. I'm not a lawyer, and I'm sure it's been discussed to death.)
> Honestly, I rather like this whole question of copilot. I solidly appreciate the brilliance of github as a honeypot.
I think it's really cool, and I'd probably use it myself. As much as my favorite kinds of programming (e.g. writing experimental text editors) might not benefit from it, in my day job I sure would love to spend less time filling in boilerplate and looking up mundane API details.
I don't mean to single Github out in my mention of big corporations benefiting from copyright law. Scraping vast quantities of copyrighted data to build new products is a common business model at this point, and--like other new IP-related paradigms enabled by modern information technology--I think it deserves a fresh look, being mindful of just what it is we're trying to accomplish with copyright law. As you say, it's not always obvious, even in written law.
There are a lot of better ways. Having more information being public and free, and usable by tools like this sounds like an excellent way of promoting progress.
If you want to strip creators of (default) exclusive rights to their work, that's a different conversation than the one around whether Copilot and similar applications fall under fair use. Both have been touched on in this subthread, but your comment seems to be conflating them in a way that doesn't follow directly from the discussion above it.
Ok great. So then new tools like this are good, even though they weaken copyright, and the concerns that people have about it (that it allows easier copying of code), are actually a benefit.
And the fact that it might hurt people's ability to profit from their code, is overruled by the benefit that this stuff provides.
> doesn't follow directly from the discussion above it.
You suggested protecting profits as if it is the only or best way of promoting progress.
When, in reality, stuff like these tools are actually a much better way of doing so. And it does so in a way that undermines copyright law, in a beneficial way.
Does it weaken copyright? Like I mentioned, it seems like it's probably allowed under existing law.
> it might hurt people's ability to profit from their code
I don't really buy this. The outputs of Copilot seem transformative enough that they won't by themselves meaningfully compete with the applications built from the sources in the training set.
It seems to me that people are objecting to it more as "theft" on ethical grounds alone. I don't really have a strong opinion either way on that front, but if I did it would be based on principle and not some theoretical material harm, because I think the latter is marginal at best.
> You suggested protecting profits as if it is the only or best way of promoting progress.
In fields where creators make money by selling access to copies of their work, what is a better way of promoting progress? People need places to live, and things to eat, and other things, and all of that costs money. If working in these creative fields becomes even less lucrative than it already is, fewer people will be able to do it, and for less time, because they will have to spend more of their time making money in other ways.
In tech, many of us are privileged to have a fair amount of spare money and time. Don't forget that not everybody enjoys that privilege, and please try not to attach a negative-valued concept of "profit" to the necessities of survival.
> When, in reality, stuff like these tools are actually a much better way of doing so. And it does so in a way that undermines copyright law, in a beneficial way.
Again, this is a very tech-centric view. I can't imagine (for instance) the average novelist being particularly happy to have the exclusivity of their rights to their own work curtailed to enable the creation of some tool, using their work as an input, for generating prose. And such objections would be absolutely correct, if anybody was actually talking about doing that.
Fortunately, nobody is talking about doing so--not for code with Copilot, not for fiction prose with the new GPT-3 tools that are popping up, and not for any other medium I'm aware of. These applications are covered under existing fair use law, and their existence does not depend on weakening the exclusivity of creators' rights to their work.
If you were to tell me that such rights should be curtailed to enable tools like Copilot to exist, I would strongly disagree with you. But--again--such curtailment is not necessary. The only reason I'm talking about it here is that there are people who think copyright should be abolished or strongly weakened. Almost universally, I've found, they're people who don't make money off distributing authorized copies of their work. So, if you ask me, they really have no clue what they're talking about, and shouldn't be running their mouths before seriously listening to (at least) the independent creators who would be impacted by such a change.
Yes it does. It is legally allowed, but in the past it was much more difficult to code launder, or copy things, in the way that an AI would do it.
Something becoming easier to do, has an effect, even if it was legal in the past.
> what is a better way of promoting progress
More technologies like this, that allow better sharing of code and information. It reduces the barrier to entry to creating content, thus causing more of it to be made.
> If you were to tell me that such rights should be curtailed
You have it reversed. Rights do not need to be curtailed, to enable these tools. Instead I am advocated for the production of these tools to be done for the purpose of curtailing these rights. The causation is reversed.
The rights should be "curtailed" through the process of tools that allow people to easily get around the law, and to make the law unenforceable. Changing laws is much harder than making the law irrelevant.
We don't need to change any laws, if we just make it impossible for laws to be enforced.
It is kind of like how bittorrent undermined copyright laws. No laws needed to be changed, for piracy to become rampant and unpunishable. (And don't even try to challenge me on this point, that piracy is effectively unenforceable these days. If you do, I'll just go watch the lastest episode of some marvel show, for free, right now, lul)
Like I said, this seems like a highly tech-centric viewpoint. Keep in mind that source code is far from the only thing covered under copyright law. Personally, if I was stranded on a desert island, I'd rather have a single original novel written by a human than a hundred novels' worth of GPT-3 output.
Beyond that, your perspective is pretty interesting--I guess you support the existence of tools like this because you see it as an opportunity to erode existing copyright law. Personally, I may not support the full extent and implementation of copyright law in America, but I do support the fundamental principle that a creator should have exclusive rights to their work. So we disagree pretty strongly on that, and I doubt we'll find common ground.
I guess I would just urge you, if you value art at all, to consider how independent artists like writers and musicians would be affected by the elimination of copyright. I don't really give a shit about the IP rights of programmers (even though I'm one myself, with public FOSS contributions), but you seem willing to throw out the baby with the bathwater.
Gaming things out, I don't think copyright is really helping any of those artists or society as a whole. If it didn't exist, you'd still have breakout artists who make money through endorsements, live shows, and selling original copies of their work.
on edit: just saw there was a description of who he is https://news.ycombinator.com/item?id=27724247 as noted I don't know but not sure if it's enough to imply a bad motive of him wanting to get some sort of attention for opposing copilot.
on second edit: huh, seems to be one of those occasions when I have mysteriously offended some people on HN without swearing, joking or being rude.
[0] https://en.m.wikipedia.org/wiki/Scènes_à_faire
Copilot is certainly pushing that envelope.
The other similar analogy is of translation: a translated work is still copied by ‘derived from’ copyright laws.
Is this just what copilot is doing in some ways but for smaller components?
There is no defending copyright. It is indefensible from first principles. It makes no logical sense.
Though it sure has proven to be a profitable con.
Because naked men are a shared concept Michelangelo's David is not protect-worthy?
I'm very worried that such opinions are up-voted so highly when Microsoft leeches open source code (but not its own ...).
People have no respect for other people's creations. Perhaps it makes them feel better because they haven't created anything difficult themselves.
Name your very best example that will prove me wrong. It should be so simple. One example, that's all it takes. Take your time, make sure you've got a good one. I'll tell you that not once, not a single time in over 17 years, have I ever seen a single example of this argument hold up under scrutiny.
Oh wait, you already did:
> Because naked men are a shared concept Michelangelo's David is not protect-worthy?
Ah yes, Michelangelo's David. A work free of copyright built under commission! Thank you for again pointing out the futility of the defense of copyright.
JK is a talented and hard working writer, and though I'm not a fan personally of those books I respect that they likely are great pieces of work, but I believe we are getting the scraps of what we could get in the Intellectually Oppressed world compared to an Intellectually free world. I'd rather have a world without cancer, a world with 100x more people able to provide medical care, a world with less pollution, than a world of artificial scarcity where a few who go along with a system of oppression get to be billionaires.
So not imaginary wizards then. What should be regulated? Is it nothing? Does your statement become "Our government should not be in the business of regulating the distribution of a sequence of words"?
Yes. Your lungs is a tree that needs healthy air. Your brain is a tree that needs healthy ideas. When people are not free to clean the ideawaves, they fill with pollution, and that is where we find ourselves.
Maybe the state could grant protection for 10 years after publishing to give the author a chance to recoup their investment. I don't know why the protection extends to the author's grandchildren.
The problem posed with copilot is in fact the opposite. By taking it to its logical conclusion, this might make it possible to disregard this effort and use GPL code on your private project.
But even if only 1% of ideas were copyrighted, that is still a tax on the use of all ideas. In a world without copyright, I can download any dataset at will and analyze and remix it to my heart's content, and share my findings. But in a world with copyright, if there was one "copyrighted" land mine in there I open myself up to financial ruin. So one must tread carefully when working with any external ideas.
If you as an end user want to modify the source code for your own use, then that is fine. If you want to distribute it, you must state the changes, and you must also do so for any code it is linked with. The original maintainers are then also free to incorporate said changes should they chose.
https://en.wikipedia.org/wiki/Debian_Free_Software_Guideline... http://people.debian.org/~bap/dfsg-faq.html
What does that even mean? The intent from the beginning of copyright was to allow people to live off of intellectual works by claiming legal rights over the work.
There are no “first principles” from which basically any societal agreements like these are derived.
Even something as simple as “murder is illegal” isn’t actually derived from any first principles because the government is allowed to murder people, citizens are during self defense, etc.
We know that there was a written intent that it was "To promote the progress of science and useful arts". However, who knows whether or not that was the true intent of all those who signed off on it. We see that lots of written intent, (Exhibit A: Purdue's "Partners Against Pain" Oxycontin promotion), may not match the mathematical reality on the ground. Also, we know that there was plenty of places in the Constitution that were good to amend (the three fifths clause, for instance).
This site (http://www.copyrighthistory.org/cam/index.php) has lots of fascinating old docs where you can come up with your own impressions about the early days of copyright. My general impression was that while it didn't ever actually promote the progress of science and useful arts, it absolutely did in the early days serve as a super smart free hack for the new federal government to build a central intelligence and library of all the latest and greatest inventions from throughout the land.
> What does that even mean?
It means that if you analyze it using logic and put all assumptions on the table (start high up on the tree), you deduce that this is a system of intellectual slavery, not of intellectual "property". You deduce that if there is such a thing as stealing ideas, then all ideas with any value are majority stolen and but a fraction novel.
I disagree. License choice is deliberate, and many open source licenses are chosen for the strict stipulations they put on users and developers, like mandatory attribution and terms of distribution or reproduction.
I release some software under the GPL and AGPL. I don't want anyone to use my software that doesn't intend to abide by the terms it was released under.
If I wanted to release software with less stipulations, then I would, and I have.
And basically every software company avoids GPL like the plague, due to its strong copyleft conditions.
https://twitter.com/luis_in_brief/status/1410242882523459585...
And this is a longer article about how IP and AI interact:
https://ilr.law.uiowa.edu/print/volume-101-issue-2/copyright...
I am not a lawyer, but I am capable of summarizing the thoughts of lawyers, so my take is that in general, fair use allows AI to be trained on copyrighted material, and humans who use this AI are not responsible for minor copyright infringement that happens accidentally as a result. However, this has not been tested in court in detail, so the consensus could change, and if you were extremely risk-averse you might want to avoid Copilot.
A key quote from the second link:
Copyright has concluded that reading by robots doesn’t count. Infringement is for humans only; when computers do it, it’s fair use.
Personally, I think law should allow Copilot. As a human, I am allowed to read copyrighted code and learn from it. An AI should be allowed to do the same thing. And nobody cares if my ten-line "how to invert a binary tree" snippet is the same as someone else's. Nobody is really being hurt when a new tool makes it easier to copy little bits of code from the internet.
This would be interesting to test with AI and pop music.
If you’re doing it from an analog format you bought for your own use (format shifting), it is fair use.
And suddenly there is a world of robots composing, writing and painting for other robots. With us humans left out.
There should be a /s at the end, but legal world sometimes produces such convolutions. See, for example, the interpretation of the Commerce Clause in Gonzales v. Reich.
Quite the opposite. We all get a tiny bit better with good information like this. This is what the internet should be for, evolving, learning from past mistakes, information availability.
If the discussion was “I clicked this button and got someone’s entire chat platform” that would be different. Words and sentences aren’t copy written, books are, so when exactly are a collection of words a book?
There is nuance, and the linked page has none. But that’s fine, that guy is free to pull his content off GitHub. This seems like a useful feature for other people who want to make things first and foremost.
If that were true, then 20 people could each steal a single chapter from a book, and one of the people could combine those 20 chapters into a new copyright-free book. That's clearly false.
And for your strawman, the assembly of uncopywritable components into a copywriten work, would still be a violation.
So we agree that copywriter is somewhere between the paragraphs and chapters and the book. So why are tiny code excerpts “a problem”?
Of course not. Reading some copyrighted code can have you entirely excluded from some jobs - you can't become a wine contributor if it can be shown you ever read Windows source code and most likely conversely. Likewise, you can't ever write GPL VST 2 audio plug-ins if you ever had access to the official Steinberg VST2 SDK. Etc etc...
Did people forget why black box reverse engineering of software ever came to be ?
In general, you're absolutely allowed to learn programming techniques from anywhere. You can contribute software almost anywhere even if you've read Windows source code. Re-using everything you've learned, in your own creative creation, is part of fair use.
Your example is the very specific scenario where you're attempting to replicate an entire program, API, etc., to identical specifications. That's obviously not fair use. You're not dealing with little bits and pieces, you're dealing with an entire finished product.
But that doesn't mean it's the only thing it does or even that it does it frequently. It's like calling a human a parrot because he completed a line from a famous poem when the previous speaker left it unfinished.
The same argument was brought up with GPT too and has been long debunked. The authors (and others) checked samples against the training corpus and it only rarely copies unless you prod it to.
There also are cases where this happens unintentionally, but those are not the norm.
Perhaps Copilot behaves very differently from my own model, but I strongly suspect that the examples that have been going around twitter are outliers. Github's study agrees: https://docs.github.com/en/github/copilot/research-recitatio... (though of course this should be replicated independently).
I'm not really sure why we should consider Copilot legally different from a fancy pen – if you use it to write infringing code then that's infringement by the user, not the pen. This leaves the practical question of how often it will do so, and my impression is that it's not often.
That's the very reason why AI technologies can be useful in augmenting human intelligence; they see problems in a different light, can find alternate solutions, and generally just don't think like we do. There are many paths to a correct result and they needn't be isomorphic. Think of how a mathematical theorem may be proved in multiple ways, but the core logical implication of the proof within the larger context is still the same.
A human brain with an unlimited supply of pencils and paper, then.
This is wrong, this is not what Turing completeness is. It applies to computational models, not hardware.
https://en.wikipedia.org/wiki/Turing_completeness
You could argue that a stack is missing in my simplified model of the human brain, which would be correct. I used the simple model in allusion to the Chinese room thought experiment which doesn't require anything more than a dictionary.
[1]: https://en.wikipedia.org/wiki/Turing_completeness#Formal_def...
In computability theory, several closely related terms are used to describe the computational power of a computational system (such as an abstract machine or programming language)
Github could make a blacklist and tell Copilot never to suggest that code. Problem solved. You use one of the other 9 suggestions.
These aren't your crazy uncle's Markov chain chatbots. They're sophisticated bayesian models trained to approximate the functions that produced the content used in training.
At least from a copyright point of few.
TL;DR: Having right, and having a easy defense in a law suite are not the same.
BUT separating it makes defending any law-suite against them because of copyright and patent law much easier. It also prevents any employee from "copying GPL(or similar) code verbatim from memory"(1) (or even worse the clipboard) sure the employee "should" not do it but by separating them you can be more sure they don't, and in turn makes it easier to defent in curt especially wrt. "independent creation".
There is also patent law shenanigans.
(1): Which is what GitHub Copilot is sometimes doing IMHO.
No - google's 9 lines of sorting algorithm (iirc) copied from Oracle's implementation were not considered fair use in the Google / Oracle debacle.
Likewise SCO claimed that 80 copied lines (in the entirety of the Linux source code) were a copyright violation, even if we never had a legal answer to this.
The Supreme Court decided Google v. Oracle was fair use. It was 3 months ago:
https://en.wikipedia.org/wiki/Google_LLC_v._Oracle_America,_...
That's the highest form of precedent, the question has now been effectively settled (unless Congress ever changes the law).
Edit: added a dummy hash to end of URL so HN parses it correctly (thanks @thewakalix below)
> With respect to Oracle’s claim for relief for copyright infringement, judgment is entered in favor of Google and against Oracle except as follows: the rangeCheck code in TimSort.java and ComparableTimSort.java, and the eight decompiled files (seven “Impl.java” files and one“ACL” file), as to which judgment for Oracle and against Google is entered in the amount of zero dollars (as per the parties’ stipulation).
But I'm happy about all the new GPL programs created by Copilot
> Of course not. Reading some copyrighted code can make you entirely excluded from some jobs - you can't become a wine contributor if it can be shown you ever read Windows source code and most likely conversely.
You can of course read the code. The consequences are thus increased limitations, like you say.
What you mention is not an absolute restriction from reading copyrighted material. You perhaps have to cease other activities as a result.
That's not a law. That's a cautionary decision made by those companies or projects to make it more difficult for competitors to argue that code was copied.
Those projects could hire people familiar with competitor code and assign them to competing projects if they wanted. The contributors could, in theory, write new code without using proprietary knowledge from their other companies. In practice, that's actually really difficult to do and even more difficult to prove in court, so companies choose the safe option and avoid hiring anyone with that knowledge altogether.
Now the question is whether or not GitHub's AI can be argued to have proprietary knowledge contained within. If your goal is to avoid any possibility that any court could argue that GitHub copilot funneled proprietary code (accessible to GitHub copilot) into your project, then you'd want to forbid contributors from using CoPilot.
If humans did that, it would be hard to argue they didn't outright copy the source.
When a machine does it, does it matter if the machine literally copied it from sources, or first transformed it into an isomorphic model in its "head" before regurgitating it back?
If yes, why doesn't parsing the source into an AST and then rendering it back also insulate you from abiding a copyright?
You've hit the nail on the head here. If this is okay, then neural nets are simply machines for laundering IP. We don't worry about people memorizing proprietary source code and "accidentally" using it because it's virtually impossible for a human to do that without realizing it. But it's trivial for a neural net to do it, so comparisons to humans applying their knowledge are flawed.
I'm not sure why it's different, but that's a common concern with music. For example: https://www.reddit.com/r/WeAreTheMusicMakers/comments/4v8u8d...
I mean, if you used CoPilot on one computer, stared at it intensely for 1 hour, closed that computer, and then typed out code in the other computer that you were contributing from, you technically didn't use it for the contribution, you just used CoPilot for your education only.
Intellectual property is itself a flawed concept in many ways. It's like asking someone to do physics research but forbidding them from using anything that Einstein wrote.
No category of intellectual property covers thoughts, so the question has no relevance to the preceding statement.
http://www.av8n.com/physics/weird-terminology.htm
Does it have flaws and can it be improved upon? Sure. I think society underweights what improvements to the patent system in particular could do. But such ideas are so niche they are hardly even written down, let alone debated at large. Society has bigger issues on its mind.
Like any evolved system IP law encounters new challenges over time and will be expected to evolve again, which it will surely do. A simple fix for Copilot is surely to just exclude all non-Apache2/BSD/MIT licensed code. Although there might technically still be advertising clause related issues, in practice hardly anyone cares enough to go to court over that.
Patents should have reduced with product lifecycles, copyright should be a similar period; maybe 10-14 years.
My personal opinion.
If you just used it for inspiration, that's fine; if the way it was coded is a result of technical constraints, that's fine too; if the code is generic it's not distinctive enough to acquire copyright in the first place.
Okay, so it's not law, it's just a policy compelled by preceding legal judgements. Case law, perhaps.
and they made those decisions based on the need to be able to argue in court that code was not copied.
>then you'd want to forbid contributors from using CoPilot
Right, the whole thing about arguing if copilot spits out a ten line function verbatim is not really what will be the problem, the problem is a human programmer still needs to run copilot and they will be the ones shown in the codebase as the author of the code (they could of course put a comment 'I got this bit from copilot' but might be cumbersome and anyway would hardly work as proof), although I suppose it would be not just proprietary code but code with an incompatible license.
> and they made those decisions based on the need to be able to argue in court that code was not copied.
Yeah, but only to make it easier for them to argue it; the letter of the law doesn't require it. You could argue that "Sure, I read Windows source code once -- but that was years ago and I can't remember shit of it, so anything I wrote now is my own invention." That might be harder to get the court to accept as a fact, but it's not a prima facie legal impossibility.
Cautionary decision =/= actual law.
What provision of copyright law are you referring to? Are you conflating copyright law with arbitrary organizational policies?
They said
> Reading some copyrighted code can have you entirely excluded from some jobs
And they're right. It's because of corporate policies. They never said it was because of a law - you imagined that out of nothing.
@jcelerier flatly contradicted the statement that copyright doesn’t prevent you from reading something.
You’re right that @jceleier didn’t say their example was law, that’s because the example is a straw man in the context of what @lacker wrote.
And, who says improving or clarifying a comment is poor form? What is the edit button for, and why is it available once replies have been posted?
I think you added
> Which “it” are you referring to?...
Because I have a tab open and can see the old one!
Edit - I’m adding another point as an edit to show another way to communicate. Would any of your points been lost had you done something similar?
No that’s not true. I did not edit my posts after reading their reply, and the false accusation was that I changed my comment after it was replied to.
I didn’t challenge whether the question was in good faith, but I’ll just note that the relevant discussion of copyright got dropped in favor of an ad-hominem attack.
My question of which “it” was being referred to is a legitimate question that I believe clarified the intent of my comment, and I added it to make clear I was talking about what @lacker said, not what @jcelerier wrote.
> Edit - I’m adding another point as an edit to show another way to communicate. Would any of your points been lost had you done something similar?
This doesn’t answer my question of why an edit should not be made before I see any replies, nor of why any edit is “poor form” and according to whom. I made my edit immediately. I’m well aware of the practice of calling out edits with a note, I’ve done it many times. I don’t feel the need to call out every typo or clarification with an explicit note, especially when edited very soon after the original comment.
Replies exist before you read them.
If that's the case, it should be easy to kill a project like wine - just send every core contributor an email containing some Windows code.
The result would be WINE having an advantage to redo the snippet of code in a totally new and different way and MS being forced to show part of its private code, that would expose them also to patent trolls.
Would be a win-win situation for Wine and a lose-lose situation for MS.
Semi-related, the GNU/Linux copypasta is now more familiar to some than the GNU project in general - this is a shame to me as I view the copypasta to be mocking people who worked very hard to achieve what GNU has achieved asking for some credit.
https://wiki.winehq.org/Developer_FAQ#Who_can.27t_contribute...
I think OP has a point here, personally.
You've extrapolated "some organizations don't allow you to contribute if you've learned from the code of their direct competitor" to "You're not allowed to learn from copyrighted code", which is absurd.
...and the "if" is the important part. This is why Imaginary Property is so absurd.
> Copyright has concluded that reading by robots doesn’t count. Infringement is for humans only; when computers do it, it’s fair use.
Surely there's a limit to this. If I use a machine to produce something that just happens to exactly match a copyrighted work, now it's not infringement because of the method I used to produce it? That seems nonsensical, but maybe there's precedent for this too? (I have no idea what I'm talking about.)
That's the first time I've heard copilot get described as copying little bits of code from the Internet. Copilot aggregates all github source code, removes licences from the code, and regurgitates the code without licenses.
Furthermore, both github and the programmers using copilot know this. Look at any one of these threads written by programmers about copilot. Using copilot is knowingly stealing the source code of others without attribution. Using copilot is literally humans stealing source code from others. Copilot was written for the purpose of taking other's code.
And Github themselves have stated that only 0.1% of the Copilot output contains chunks taken verbatim from the learning set. Of those, the vast majority are likely to be boilerplate so generic it's silly to claim ownership, and maybe sometimes impossible to avoid.
That's simply not true. You might be confusing idealism about software freedom with how both law and society define theft.
Edit: In this comment I refer to the US.
The copyright lobby hedge the term as "copyright theft" (i.e. not actual theft) in order to shift the societal understanding. Whish appears to have worked.
This is not a value judgement on copyright infringement. Just that technically it doesn't meet the legal definition of theft.
cf. The rather amusing satire of the "you wouldn't steal a handbag" campaign in the UK, which ran "you wouldn't download a bear!"
It seems unlikely this distinction would ever matter in a real court though.
That can’t be right.
> Rather than "with the intention of depriving the owner", the US one says "with the intention of converting it to their use", which seems broad enough to cover exploiting a copy
...or rather, on the meaning of "converting". I've always theought of that as "changing", i.e. "it used to be one thing, and now it's something else". But copying IP only adds a use of it, it doesn't fundamentally change it in this sense: it is still available for the original proprietor's use. Is that really "converted"?
At least for the ordinary-English uuage of the word, I think it could be argued that it isn't. But then maybe this isn't just English; maybe the word "converting" also has some term-of-trade definition in that dictionary?
What could be valid is a right to not mimic collections, but that would mean you cannot clone the Copilot, as input is mapped to a non-trivial collection of outputs.
Disclaimer: IANAL, but I do dabble in IT-law.
Until someone trains a DNN to generate Mickey Mouse-like cartoons I assume.
Problem is, the results too closely replicate the source, as in "Suck just as much". And thus there is no demand for this kind of thing.
And sure, nobody cares about your stupid binary tree, but do they care about GNU and the Linux kernel? Imagine someone trained an AI to specifically output Linux code, and used it to reproduce a working OS. Is that fair?
That's a little broad. There's a wide range of licenses for software that explicitly allow precisely this.
But the execution went wrong... They used raw data from repositories for training, without any kind of pre-processing.
Copilot is redistributing it without the license.
So wait, if I write my own AI, lets call it cp, and train it on gnu-gcc.tar.gz with the goal of creating a commercial-compiler.tar.gz then I can license the result any way I want? After all most of the work was done by the computer.
https://twitter.com/mitsuhiko/status/1410886329924194309
this is clearly copyright infringement, and if it isn't: it should be
https://github.com/search?q=float+Q_rsqrt%28+float+number+%2...
The only ways this argument could be less alarming to me is if people were bothered that it was writing the same Hello World as somebody else, or that it was naming variables "foo" and "bar".
Let's wait until we have a bulletproof, egregious, and inexcusable case of it lifting code until we panic.
If those portions of code are not licensed GPL, yes, it is copyright infringement.
Will co-pilot offer royalties for auto suggestions that are committed to code bases? I’m sure our ML can track how similar the commits were.
It’s always fascinating to me how we have the tech to take, but never to give. Pay the motherfucker you stole this shit from.
The proverbial: https://youtu.be/6TLo4Z_LWu4
https://news.ycombinator.com/item?id=27710287
And reading is no infringement but writing maybe is.
But ultimately the human is OK-ing the code and committing it, basically as his own work most of the time. I'm reasonably sure that this may matter to courts.
Plus it is not "minor infringement" but code is being lifted verbatim - e.g. as has been demonstrated by the Quake square root code.
Feel free to test this theory in court ...
Many of the current Machine Learning application try to teach AI to understand the concepts behind their training data and use that to do whatever they are trained to do.
But most (all?) fail to properly reach the goal in any more complicated cases, at least the kinds of models which are used for things like Copilot (GPT-3?).
Instead what this models learn can be described as a combination of some abstract understanding and verbatim snippets of input data of varying size.
As such while they sometimes generate "new" things based on "understanding" they also sometimes just copy things they have seen before!! (Like in the Quake code example where it even copied over some of the not-so "proper" comments expressing programmers frustration).
It's like a human not understanding programming or english or Latin letters but has a photographic memory and tries to somehow create something which seems to make sense by recombining existing verbatim snippets, sometimes while tweaking them.
I.e. if the snippets are small enough and tweaked enough it's covered by fair use and similar, BUT the person doing it doesn't know about this, so if a large remembered snippet matches verbatim it will put it in effectively copying code of a size which likely doesn't fall under fair use.
Also this is a well known problem, at least it was when I covered topics including ML ~5 years ago. I.e. good examples included extracting whole sequences of paragraphs of a book out of such a network or (more brilliantly) extracting thinks like peoples contact data based on their names or credit card information (in case of systems trained on mails).
So that Copilot is basically guaranteed to sometimes copy non super smalls snippets of code and potential comments in a way not-really appropriate wrt. copyright should have been a well know fact for the ML specialist in charge of this project.
Reading by a robot doesn't count. But injecting a robot between copyright material and a product doesn't magically strip the copyright from whatever it produces.
This is silly. Co pilot is not reading by itself, someone pushed buttons telling it to read and write. If I clone the entire github without the licenses I am telling a robot to do it, doesn't make it right.
As a business it is your responsibility to determine if this code-copying is worth a risk to your business.
Based on my experience, I'm pretty sure all corporate lawyers will disallow such code copying, till it has been tested in the court. It's just a matter of who will be the guinea pig.
STOP READING
It should be obvious that if the robot is simply scraping web sites and reproducing their text verbatim (without permission and without giving credit) that would be an infringement.
There are a lot of shades of gray between that and the other extreme, which is where it is scraping millions of sites, learning from them, and producing something that isn't all that similar to any of them. Both ends of the spectrum, and everywhere in between, are things that humans can do, but as machines get more capable this is getting trickier and trickier to sort out.
In this case, it sounds like it might be closer to the first example, since significant parts of the code will be verbatim.
Ultimately, I am hoping that such things cause us to completely rethink copyright law. The blurriness of it all is becoming too much to make laws around. We just need better mechanisms to reward people for creating valuable IP that they allow people to freely use as they please.
Security is a constant issue with humans writing code. Do we really want an "AI" that understands neither code nor security spitting out snippets of code to pasted into network services?
If Copilot ever becomes truly popular it's going to be an absolute security nightmare both from the code it suggests (just bad code, GIGO as you say), but also because adversaries will be gaming it by posting bad code for it to pick up and "learn" from.
It's insanity.
I suspect Copilot won't even be up to that standard.
My objection to that term is only because being at the beginning of a learning curve isn't bad per se. Neither is writing Pseudocode.
Your conclusion is right, however.
This is, imo, unfortunate, as often the legal interpretation is based on a gross misunderstanding of how the tech works, but this is the way.
I don't think copilot should be legal according to my own interpretation but in this (rare) case I feel the "IANAL" tag applies not because I lack (legal) knowledge, but rather because I have (tech) knowledge that is likely absent from actual decision making on legal outcomes (therefore leading to different legal outcomes than how I would see things working).
Maybe nobody cares about that, but the problem is that Github's automated tool is not telling you what code it shows you is actually an exact copy of existing code, or how much of that existing code is being copied, or whether the existing code is licensed, or, if it is licensed, whether your copying is in accordance with the license or not. And without that information you can't possibly know whether what you are doing is legal or ethical. Sure, you could try to guess, but that sort of thing is not supposed to rely on guessing.
This is a very false equivalency. AI and humans are different. First, AI is at best a slave, and likely a slave of a capital. Second - scale makes difference.
At this point, how hard would it be to produce a structurally similar "content-aware continuation/fill" for audio producers, film makers, etc, which suggests audio snippets or film snippets, trained from copyrighted source material?
If prompted by a black screen with some white dots, the video tool could suggest a sequence of frames beginning with text streaming into the distance "A long time ago in a galaxy far far away ..." and continue from there.
Normally we don't try to train models to regurgitate their inputs, but if we actually tried, I'm sure one could be made to reproduce the White Album or Thriller or whatever else.
Saying it is just like user, maybe they start paying taxes like individuals without access to creative accountants pay.
Leeches without morals - Micro$oft
Until then, it's basically "GPL" (and other licences) laundering with one-sided excuses.
Of course people are hurt, namely the original creators who spent years of work and whose work is potentially laundered, depending on how good this IP grabbing AI will get.
If it gets really good, some smug and well connected loser (e.g. the type who posts pictures of himself with a microphone on GitHub) will click a button, steal other people's hard work and start a "new" project that supersedes the old one.
Now suppose it's 10 years from now and it's trivial to build a proprietary competitor.
This is a non-sequitur. Why should it?
> And nobody cares if my ten-line "how to invert a binary tree" snippet is the same as someone else's.
Are you going to make up a rule for every length and type of code? What about twenty line? If ten lines are fine then surely twenty would be? How about pictures? If some code is then surely a picture or two wouldn't hurt? Let's just tweak the AI slightly so it regurgitates more code verbatim -- or do courts have to examine any change made to the AI and okay them?
> Nobody is really being hurt when a new tool makes it easier to copy little bits of code from the internet.
The Windows source code can be found on the internet. As a human you're allowed to read that if you have it. Try making an AI that copies bits of that into your code and release that on the internet.
Then, I'm sorry, but you seem to have done a pretty bad job of summarizing that paper ?
My own take on summarizing it's conclusion would be :
"If the program can pass the Turing Test, then it should be legally liable, just like a human would."
(Yes, emphasis on the should here, but the way that you're presenting that quote might make readers think that that paper's conclusion is the opposite one !)
----
> Nobody is really being hurt when a new tool makes it easier to copy little bits of code from the internet.
Some of the examples from that paper are A&M Records, Inc. v. Napster (no comment) and White Smith Music Publ’g Co. v. Apollo Co. (piano rolls), and in that latter case we pretty much (?) got the whole Copyright Act of 1909 the very next year, where these “mechanical reproductions” were subjected to a statutory compulsory license.
So at the very least there should be concern about how Copilot might be eventually considered by the courts to facilitate copyright infringement and at the very least have to provide the source of its "insights" ?
(Attribution being the bare minimum that most of the software licenses require.)
This is a ridiculous conclusion. The ultimate destination of the robot actions' product is its user, i.e. a human. It is a clear corollary of the transitive law. Therefore, all human-focused legal concepts, including infringement, are applicable in such cases.
The absurdness of the conclusion cited above can be easily illustrated, as follows. Suppose that a person owns or rents an advanced robot (say, like Boston Dynamics' Spot, but better). He/she then programs it to break into someone's house and steal something valuable. All goes by the plan, the robot delivers the stolen goods to the rendezvous point and, if rented, gets returned. Now, according to the conclusion's logic, since a robot has done the actual "work", "it's fair use". Nonsense, right?
Just to clarify: I like the concept of GitHub Copilot (even though I have not yet tried this particular product). It offers various benefits, from pedagogical to adopting software engineering best practices to improving engineering productivity. However, I think that IP and legal aspects of this approach and specific product should be carefully studied and resolved in a consistent manner (e.g., prevent the model or system to output exact source code snippets).
Plenty of examples show that it didn't learn that much and copy literal parts of code. At my school that would have been ground for plagiarism which weren't treated lightly.
You're taking the "learning" metaphor too literally. Machine learning models do not learn. They can and do encode their training material into their weights and biases, too. That's what Copilot was doing, regurgitating parts of its training data line for line.
To me, that is not much different from transforming a copyrighted piece of work with, say, compression, a lossy codec or cropping. There are plenty of people who can learn to play Metallica songs really well, but if they copied specifics aspects of their work it would be copyright infringement, as well.
A human being can literally learn. We can understand abstract principles from one copyrighted work and apply them to another without actually infringing its copyright. A ML model does not understand, it is a statistical model. It is inherently a derivative work, and it often encodes the copyrighted work into was trained on into the model itself.
Glad to hear this. My warez group from here on out will only release binaries written collaboratively with a neural net trained on the best proprietary software available
Like when cp does it?
[0] Bakos, Y., Marotta-Wurgler, F. and Trossen, D. R. (2014) ‘Does Anyone Read the Fine Print? Consumer Attention to Standard-Form Contracts’, The Journal of Legal Studies, 43(1), pp. 1–35. doi: 10.1086/674424.
[1] McDonald, A. M. and Cranor, L. F. (2008) ‘The Cost of Reading Privacy Policies’, A Journal of Law and Policy for the Information Society, 4(3), pp. 543–568.
I suppose one issue is that you (presumably) can't request deletion from it (which may even be a GDPR violation).
Edit: I looked up the relevant GDPR stuff, apparently there's an exemption for when "erasing your data would prejudice scientific or historical research, or archiving that is in the public interest.", which it arguably includes the Arctic Vault.
[1] https://archiveprogram.github.com/arctic-vault/
It's nothing more than a publicity stunt whose one and only purpose is to advertise GitHub.
What if I were to tell you, that in order to publish any code, on the internet, that code has to be "reprinted" to many different computers and places?
In fact, whenever you yourself need to even access that code, that code is copied over to many different computers along to way, as is necessary to send it to you.
[1] https://www.piql.com/awa/
Github are the ones doing all the archiving. So, in essence, they do own that. Piql are just the ones providing the storage: it's a commercial for-profit entity employed for backup by another commercial for-profit entity.
By the way, my initial statement that it may qualify for copyright exemptions turned out to be false for a different reason. They only apply when the library and/or archive in question is open to the public, and the Github Arctic Vault isn't. Thus I think it's actually a Github's generic usage grant in the ToS [2] that allows for the Vault. The Copilot is, of course, very different to anything described in the ToS.
[1] https://arcticworldarchive.org/contribute/
[2] https://docs.github.com/en/github/site-policy/github-terms-o...
...provides prime-rate marketing bullshit in its marketing materials
> Thus I think it's actually a Github's generic usage grant in the ToS
If you refer to Section D.4, then:
- Arctic Vault is not "for future generations", but for GitHub only, since that section doesn't permit GitHum to just make copies willy-nilly for anything other than "as necessary to provide the Service, including improving the Service over time" and "make backups"
- This specifically makes GitHub "the owner" of that data, and not "some third-party" as you originally suggested
> This specifically makes GitHub "the owner" of that data, and not "some third-party" as you originally suggested
This one is my fault though, I've used the "Arctic Vault" as an archival site, but as I later realized it is a Github's archive stored in the Arctic World Archive. So yeah, it's (only) Github that can retrieve the data.
This is a commercial for-profit company, GitHub, taking some code and storing it in cold storage of some other commercial for-profit company, with no one, except these two parties have access to this code. And it doesn't look like GitHub even has the right to do it because it stores it for some purpose other than whatever is stated in their ToS.
I wonder if the whole kerfuffle around Copilot will end up spilling some light on this, too.
If they had taken one of their existing DB/disk backups and called it a vault, would that have been an issue?
https://github.com/cnsuhao/Windows-Research-Kernel-1
If your code is open source, they will get it.
That's kinda the point of open source.
I can imagine people being OK with their code being used as-is, and/or being modified, but not used completely out of context to train some corporate AI to inject code into commercial code based.
That’s a good thing.
Copyright is like an ABI: we made it up for convenience. It's just a construction, it isn't some inherently real thing.
If copyright applies, they're already in violation by failing to attribute your MIT contributions and could theoretically be sued for infringement (as they did not abide by the terms of the license).
Githubs use seems very in the spirit of open data and code. Using open source to help others.
In literally no open source license except "do-whatever-you-want-i-dont-give-a-damn-bye"-type licenses like WTFPL are you giving something away for free without limitations. That's not even close to what open source means, at all. Open source and public domain are not synonymous terms. And in those cases where there are literally any terms in a license, use of Copilot obviously violates the terms of the license, unless the user operating Copilot goes back, finds the code Copilot is stealing from, and makes the proper attribution / otherwise ensures that they are meeting the terms of the license of the stolen code.
The OpenAI people seem to grab any bit of data they can get their hands on, regardless of the source. I don't see why they'd limit themselves to Github for something like this.