Basically the rules are that you can use AI, but you take full responsibility for your commits and code must satisfy the license.<p>That's... refreshingly normal? Surely something most people acting in good faith can get behind.
But then if AI output is not under GNU General Public License, how can it become so just because a Linux-developer adds it to the code-base?
AIs are not human and therefore their output is a human authored contribution and only human authored things are covered by copyright. The work might hypothetically infringe on other people's copyright. But such an infringement does not happen until a human decides to create and distribute a work that somehow integrates that generated code or text.<p>The solution documented here seems very pragmatic. You as a contributor simply state that you are making the contribution and that you are not infringing on other people's work with that contribution under the GPLv2. And you document the fact that you used AI for transparency reasons.<p>There is a lot of legal murkiness around how training data is handled, and the output of the models. Or even the models themselves. Is something that in no way or shape resembles a copyrighted work (i.e. a model) actually distributing that work? The legal arguments here will probably take a long time to settle but it seems the fair use concept offers a way out here. You might create potentially infringing work with a model that may or may not be covered by fair use. But that would be your decision.<p>For small contributions to the Linux kernel it would be hard to argue that a passing resemblance of say a for loop in the contribution to some for loop in somebody else's code base would be anything else than coincidence or fair use.
IANAL; this is what my limited understanding of the matter is. With that caveat: it is easy to forget that copyright is on output- verbatim or exact reproductions and derivatives of a covered work are already covered under copyright.<p>So if the AI outputs Starry Night or Starry Night in different color theme, that's likely infringement without permission from van Gogh, who would have recourse against <i>someone</i>, either the user or the AI provider.<p>But a starry-night style picture of an aquarium might not be infringing at all.<p>>For small contributions to the Linux kernel it would be hard to argue that a passing resemblance of say a for loop in the contribution to some for loop in somebody else's code base would be anything else than coincidence or fair use.<p>I would argue that if it was a verbatim reproduction of a copyrighted piece of software, that would likely be infringing. But if it was similar only in style, with different function names and structure, probably not infringing.<p>Folks will argue that some things might be too small to do any different, for example a tiny snippet like python print("hello") or 1+1=2 or a for loop in your example. In that case it's too lacking in original expression to qualify for copyright protection anyway.
Same as if a regular person did the same. They are responsible for it. If you're using AI, check the code doesn't violate licenses
In certain law cases plagiarization can be influenced by the fact if person is exposed to the copyrighted work. AI models are exposed to very large corpus of works..
How could you do that though? You can’t guarantee that there aren’t chunks of copied code that infringes.
As opposed to an irregular person?<p>LLMs are not persons, not even legal ones (which itself is a massive hack causing massive issues such as using corporate finances for political gain).<p>A human has moral value a text model does not. A human has limitations in both time and memory available, a model of text does not. I don't see why comparisons to humans have any relevance. Just because a human can do something does not mean machines run by corporations should be able to do it en-masse.<p>The rules of copyright allow humans to do certain things because:<p>- Learning enriches the human.<p>- Once a human consumes information, he can't willingly forget it.<p>- It is impossible to prove how much a human-created intellectual work is based on others.<p>With LLMs:<p>- Training (let's not anthropomorphize: lossily-compressing input data by detecting and extracting patterns) enriches only the corporation which owns it.<p>- It's perfectly possible to create a model based only on content with specific licenses or only public domain.<p>- It's possible to trace every single output byte to quantifiable influences from every single input byte. It's just not an interesting line of inquiry for the corporations benefiting from the legal gray area.
Tab complete does not produce copyrightable material either. Yet we don't require software to be written in nano.
If the output is public domain it's fine as I understand it.
Makes sense to me. But so anybody can take Public Domain code and place it under GNU Public License (by dropping it into a Linux source-code file) ?<p>Surely the person doing so would be responsible for doing so, but are they doing anything wrong?
> Surely the person doing so would be responsible for doing so, but are they doing anything wrong?<p>You're perfectly at liberty to relicense public domain code if you wish.<p>The only thing you can't do is enforce the new license against people who obtain the code independently - either from the same source you did, or from a different source that doesn't carry your license.
This is correct, and it's not limited to code. I can take the story of Cinderella, create something new out of it, copyright my new work, but Cinderella remains public domain for someone else to do something with.<p>If I use public domain code in a project under a license, the whole work remains under the license, but not the public domain code.<p>I'm not sure what the hullabaloo is about.
The core thing about licenses, in general, is that they only <i>grant</i> new usage. If you can already use the code because it's public domain, they don't <i>further</i> restrict it. The license, in that case, is irrelevant.<p>Remember that licenses are powered by copyright - granting a license to non-copyrighted code doesn't do anything, because there's no enforcement mechanism.<p>This is also why copyright reform for software engineering is so important, because code entering the public domain cuts the gordian knot of licensing issues.
Linux code doesn't have to strictly be GPL-only, it just has to be GPL-compatible.<p>If your license allows others to take the code and redistribute it with extra conditions, your code can be imported into the kernel. AFAIK there are parts of the kernel that are BSD-licensed.
Sqlite’s source code is public domain. Surely if you dropped the sqlite source code into Linux, it wouldn’t suddenly become GPL code? I’m not sure how it works
This ruling is IMO/IANAL based on lawyers and judges not understanding how LLMs work internally, falling for the marketing campaign calling them "AI" and not understanding the full implications.<p>LLM-creation ("training") involves detecting/compressing patterns of the input. Inference generates statistically probable based on similarities of patterns to those found in the "training" input. Computers don't learn or have ideas, they always operate on representations, it's nothing more than any other mechanical transformation. It should not erase copyright any more than synonym substitution.
>LLM-creation ("training") involves detecting/compressing patterns of the input.<p>There's a pretty compelling argument that this is essentially what we do, and that what we think of as creativity is just copying, transforming, and combining ideas.<p>LLMs are interesting because that compression forces distilling the world down into its constituent parts and learning about the relationships between ideas. While it's absolutely possible (or even likely for certain prompts) that models can regurgitate text very similar to their inputs, that is not usually what seems to be happening.<p>They actually appear to be little remix engines that can fit the pieces together to solve the thing you're asking for, and we do have some evidence that the models are able to accomplish things that are not represented in their training sets.<p>Kirby Ferguson's video on this is pretty great: <a href="https://www.youtube.com/watch?v=X9RYuvPCQUA" rel="nofollow">https://www.youtube.com/watch?v=X9RYuvPCQUA</a>
So? Why should it be legal?<p>If people find this cool and wanna play with it, they can, just make sure to only mix compatible licenses in the training data and license the output appropriately. Well, the attribution issue is still there, so maybe they can restrict themselves to public domain stuff. If LLMs are so capable, it shouldn't limit the quality of their output too much.<p>Now for the real issue: what do you think the world will look like in 5 or 10 years if LLMs surpass human abilities in all areas revolving around text input and output?<p>Do you think the people who made it possible, who spent years of their life building and maintaining open source code, will be rewarded? Or will the rich reap most of the benefit while also simultaneously turning us into beggars?<p>Even if you assume 100% of the people doing intellectual work now will convert to manual work (i.e. there's enough work for everyone) and robots don't advance at all, that'll drive the value of manual labor down a lot. Do you have it games out in your head and believe somehow life will be better for you, let alone for most people? Or have yo not thought about it at all yet?
fortunately, you aren't only operating on representations, right? lemme check my Schopenhauer right quick...
But why should AI then be attributed if it is merely a tool that is used?
it makes sense to keep track of what model wrote what code to look for patterns, behaviors, etc.
It isn't?<p>> AI agents MUST NOT add Signed-off-by tags. Only humans can legally certify the Developer Certificate of Origin (DCO).<p>They mention an Assisted-by tag, but that also contains stuff like "clang-tidy". Surely you're not interpreting that as people "attributing" the work to the linter?
Glad to see the common-sense rule that only humans can be held accountable for code generated by AI agents.
<p><pre><code> > Signed-Off ...
> The human submitter is responsible for:
> Reviewing all AI-generated code
> Ensuring compliance with licensing requirements
> Adding their own Signed-off-by tag to certify the DCO
> Taking full responsibility for the contribution
> Attribution: ... Contributions should include an Assisted-by tag in the following format:
</code></pre>
Responsibility assigned to where it should lie. Expected no less from Torvalds, the progenitor of Linux and Git. No demagoguery, no b*.<p>I am sure that this was reviewed by attorneys before being published as policy, because of the copyright implications.<p>Hopefully this will set the trend and provide definitive guidance for a number of Devs that were not only seeing the utility behind ai assistance but also the acrimony from some quarters, causing some fence-sitting.
This does nothing to shield Linux from responsibility for infringing code.<p>This is essentially like a retail store saying the supplier is responsible for eliminating all traces of THC from their hemp when they know that isn’t a reasonable request to make.<p>It’s a foreseeable consequence. You don’t get to grant yourself immunity from liability like this.
This is discussed in the Linus vs Linus interview, "Building the PERFECT Linux PC with Linus Torvalds". [0]<p>[0] <a href="https://youtu.be/mfv0V1SxbNA?si=CBnnesr4nCJLuB9D&t=2003" rel="nofollow">https://youtu.be/mfv0V1SxbNA?si=CBnnesr4nCJLuB9D&t=2003</a>
<i>All code must be compatible with GPL-2.0-only</i><p>Am I being too pedantic if I point out that it is quite possible for code to be compatible with GPL-2.0 and other licenses at the same time? Or is this a term that is well understood?
You might be being too pedantic :)<p><a href="https://spdx.org/licenses/GPL-2.0-only.html" rel="nofollow">https://spdx.org/licenses/GPL-2.0-only.html</a>
It's a specific GPL license (as opposed to GPL 2.0-later)
GPL-2.0-only is the name of a license. One word. It is an alternative to GPL-2.0-or-later.
> All contributions must comply with the kernel's licensing requirements:<p>I just don't think that's realistically achievable. Unless the models themselves can introspect on the code and detect any potential license violations.<p>If you get hit with a copyright violation in this scheme I'd be afraid that they're going to hammer you for negligence of this obvious issue.
Sounds sensible.
At least it'll make it easy to audit and replace it all in a few years.
Fork the kernel!<p>Humans for humans!<p>Don't let skynet win!!!
Why does this file have an extension of .rst? What does that even mean for the fileformat?
<a href="https://en.wikipedia.org/wiki/ReStructuredText" rel="nofollow">https://en.wikipedia.org/wiki/ReStructuredText</a><p>This format really took off in the Python community in the 2000's for documentation. The Linux kernel has used it for documentation as well for a while now.
reStructuredText. Just like you have .md files everywhere.
[dead]
This feels like the OSS community is giving up.<p>LLMs are lossily-compressed models of code and other text (often mass-scraped despite explicit non-consent) which has licenses almost always requiring attribution and very often other conditions. Just a few weeks ago a SOTA model was shown to reproduce non-trivial amounts of licensed code[0].<p>The idea of intelligence being emergent from compression is nothing new[1]. The trick here is giving up on completeness and accuracy in favor of a more probabilistic output which<p>1) reproduces patterns and interpolates between patterns of training data while not always being verbatim copies<p>2) serves as a heuristic when searching the solution-space which is further guided by deterministic tools such as compilers, linters, etc. - the models themselves quite often generate complete nonsense, including making up non-existent syntax in well-known mainstream languages such as C#.<p>I strongly object to anthropomorphising text transformers (e.g. "Assisted-by"). It encourages magical thinking even among people who understand how the models operate, let alone the general public.<p>Just like stealing fractional amounts of money[3] should not be legal, violating the licenses of the training data by reusing fractional amounts from each should not be legal either.<p>[0]: <a href="https://news.ycombinator.com/item?id=47356000">https://news.ycombinator.com/item?id=47356000</a><p>[1]: <a href="http://prize.hutter1.net/" rel="nofollow">http://prize.hutter1.net/</a><p>[2]: <a href="https://en.wikipedia.org/wiki/ELIZA_effect" rel="nofollow">https://en.wikipedia.org/wiki/ELIZA_effect</a><p>[3]: <a href="https://skeptics.stackexchange.com/questions/14925/has-a-programmer-ever-embezzled-money-by-shaving-fractions-of-a-cent-from-many-b" rel="nofollow">https://skeptics.stackexchange.com/questions/14925/has-a-pro...</a>
> I strongly object to anthropomorphising text transformers (e.g. "Assisted-by").<p>I don't think this is anthropomorphising, especially considering they also include non-LLM tools in that "Assisted-by" section.<p>We're well past the Turing test now, whether these things are actually sentient or not is of no pragmatic importance if we can't distinguish their output from a sentient creature, especially when it comes to programming.
Would you say "assisted by vim" or "assisted by gcc"?<p>It should be either something like "(partially/completely) generated by" or if you want to include deterministic tools, then "Tools-used:".<p>The Turing test is an interesting thought experiment but we've seen it's easy for LLMs to sound human-like or make authoritative and convincing statements despite being completely wrong or full of nonsense. The Turing test is not a measure of intelligence, at least not an artificial one. (Though I find it quite amusing to think that the point at which a person chooses to refer to LLMs as intelligence is somewhat indicative of his own intelligence level.)<p>> whether these things are actually sentient or not is of no pragmatic importance if we can't distinguish their output from a sentient creature, especially when it comes to programming<p>It absolutely makes a difference: you can't own a human but you can own an LLM (or a corporation which is IMO equally wrong as owning a human).<p>Humans have needs which must be continually satisfied to remain alive. Humans also have a moral value (a positive one - at least for most of us) which dictates that being rendered unable to remain alive is wrong.<p>Now, what happens if LLMs have the same legal standing as humans and are thus able to participate in the economy in the same manner?
On <a href="https://news.ycombinator.com/item?id=47356000">https://news.ycombinator.com/item?id=47356000</a>, it looks like the user there was intentionally asking about the implementation of the Python chardet library before asking it to write code, right? Not surprising the AI would download the library to investigate it by default, or look for any installed copies of `chardet` on the local machine.
Good. The BSDs should follow suit. It is unreasonable to expect any developer not to use AI in 2026.
Linux has fallen. Linus Torvalds is now just another vibe coder. I give it less than a year, or maybe a month, until Linux gets vibe-coded patches approved by LLMs.<p>Open source is dead, having had its code stolen for use by vibe-coding idiots.<p>Make no mistake, this is the end of an era.
> All code must be compatible with GPL-2.0-only<p>How can you guarantee that will happen when AI has been trained a world full of multiple licenses and even closed source material without permission of the copyright owners...I confirmed that with several AI's just now.
You take responsibility. That means if the AI messes up, you get punished. No pushing blame onto the stupid computer. If you're not comfortable with that, don't use the AI.
There’s no reasonable way for you to use AI generated code and guarantee it doesn’t infringe.<p>The whole use it but if it behaves as expected, it’s your fault is a ridiculous stance.
If you think it's an unacceptable risk to use a tool you can't trust when your own head is on the line, you're right, and you shouldn't use it. You don't have to guarantee anything. You just have to accept punishment.
That’s just it though it’s not just your head. The liability could very likely also fall on the Linux foundation.<p>You can’t say “you can do this thing that we know will cause problems that you have no way to mitigate, but if it does we’re not liable”. The infringement was a foreseeable consequence of the policy.
This policy effectively punts on the question of what tools were used to create the contribution, and states that regardless of how the code was made, only humans may be considered authors.<p>From the foundation's point of view, humans are just as capable of submitting infringing code as AI is. If your argument is sound, then how can Linux accept contributors at all?<p>EDIT: To answer my own question:<p><pre><code> Instead of a signed legal contract, a DCO is an affirmation that a certain person confirms that it is (s)he who holds legal liability for the act of sending of the code, that makes it easier to shift liability to the sender of the code in the case of any legal litigation, which serves as a deterrent of sending any code that can cause legal issues.
</code></pre>
This is how the Foundation protects itself, and the policy is that a contribution must have a human as the person who will accept the liability if the foundation comes under fire. The effectiveness of this policy (or not) doesn't depend on how the code was created.
Yeah, but that's not a useful thing to do because not everybody thinks about that or considers it a problem. If somebody's careless and contributes copyrighted code, that's a problem for linux too, not only the author.<p>For comparison, you wouldn't say, "you're free to use a pair of dice to decide what material to build the bridge out of, as long as you take responsibility if it falls down", because then of course somebody would be careless enough to build a bridge that falls down.<p>Preventing the problem from the beginning is better than ensuring you have somebody to blame for the problem when it happens.
There is a system for contributors assuming legal liability for the code they contribute. It was already necessary to solve the problem of <i>humans</i> contributing copyrighted code. It was solved by having contributors assume liability with a DCO. The policy being discussed today asserts that, because AI may not be held legally liable for its contributions, AI may not sign a DCO. Only a human may. This puts the situation back to what it was with human contributors.
Their position is probably that LLM technology itself does not require training on code with incompatible licenses, and they probably also tend to avoid engaging in the philosophical debate over whether LLM-generated output is a derivative copy or an original creation (like how humans produce similar code without copying after being exposed to code). I think that even if they view it as derivative, they're being pragmatic - they don't want to block LLM use across the board, since in principle you can train on properly licensed, GPL-compatible data.
> That means if the AI messes up<p>I'm not talking about maintainability or reliability. I'm talking about legal culpability.
Wait for court cases I suppose - not really Linus Torvalds' job to guess how they'll rule on the copyright of mere training. Presumably having your AI actually consult codebases with incompatible licenses at runtime is more risky.