LLMs are terrible at tracking exact line numbers. This format uses context matching instead - it finds where to apply changes by matching surrounding text, not by trusting line numbers. The find_context_core() function searches for matching lines rather than jumping to line N.
I use Claude Code CLI daily - it's genuinely changed how I work. The $1B number sounds crazy but honestly tracks with how good the tool is. Curious how Bun integration will show up in practice beyond the native installer.
Doesn’t sound crazy at all? My Max subscription costs me more than all the other netflix/spotify etc combined, but I pay it happily, and spotify would go before Claude does.
The "yes/no" framing is a nice constraint that makes this actually useful vs generic "page changed" monitors. Do you rate-limit the checks to avoid hammering sources?
We don't even have to do that: weights being entirely machine generated without human intervention, they are likely not copyrightable in the first place.
In fact, we should collectively refuse to abide to these fantasy license before weight copyrightability gets created out of thin air because it's been commonplace for long enough.
There's an argument by which machine-learned neural network weights are a lossy compression of (as well as a smooth interpolator over) the training set.
An mp3 file is also a machine-generated lossy compression of a cd-quality .wav file, but it's clearly copyrightable.
To that extent, the main difference between a neural network and an .mp3 is that the mp3 compression cannot be used to interpolate between two copyrighted works to output something in the middle. This is, on the other hand, perhaps the most common use case for genAI, and it's actually tricky to get it to not output something "in the middle" (but also not impossible).
I think the copyright argument could really go either way here.
> An mp3 file is also a machine-generated lossy compression of a cd-quality .wav file, but it's clearly copyrightable.
Not the .mp3 itself, the creative piece of art that it encode.
You can't record Taylor Swift at a concert and claim copyright on that. Nor can you claim copyright on mp3 re-encoded old audio footage that belong to the public domain.
Whether LLMs are in the first category (copyright infringement of copyright holders of the training data) or in the second (public domain or fair use) is an open question that jurisprudence is slowly resolving depending on the jurisdiction, but that doesn't address the question of the weight themselves.
Right, the .mp3 is machine generated but on a creatively -generated input. The analogy I'm making is that an LLM's weights (or let's say, a diffusion image model) are also machine-generated (by the training process) from the works in its training set, many of which are creative works, and the neural network encodes those creative works much like mp3 file does.
In this analogy, distributing the weights would be akin to distributing an mp3, and offering a genAI service, like charGPT inference or a stable diffusion API, would be akin to broadcasting.
A better analogy, when it comes to weights, is this: You are a skilled musician. You talk to another musician on the phone. She tells you in detail about a new song from yet another musician. It has these chords, it's in this key, it has this time signature and syncopation, it uses these instruments, it uses these effects. She doesn't tell you the lyrics, though. Mostly, she just tells you how it's related to a lot of other songs in the same genre.
You now have some "weights." You go to your studio and compose something that's so close to the original song that you'd definitely end up on the wrong end of a lawsuit like The Verve vs. The Rolling Stones if you were to release it.
Now... how in the world does this state of affairs "promote the progress of science and the useful arts" or otherwise make the world a better place?
The copyright industry cannot be allowed to stop AI, or put a tollgate on it. It simply can't. If it dies, it dies. We got along just fine without it for thousands of years. AI is the next stage of our own evolution as Homo sapiens, while copyright is a dead-end street.
I'd be fine with this interpretation, but that would definitely rule out fair use for training, and be even worse for LLM makers than having LLM non-copyrightable.
Of course we should! And everyone who says otherwise must be delusional or sort of a gaslighter, as this whole "innovation" (or remix (or comopression)) is enabled by the creative value of the source product. Given AI companies never ever respected this copyright, we should give them similar treatment.
Isn't that a bit like saying that if I open source a tool, but not a full compendium of all the code that I had read, which led me to develop it, then it's not really open source?
That's beyond the definition of Open Source. Doing a bit of license research now, only the GPL has such a requirement - GPLv3:
> The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities.
But all other Open Source compliant licenses I checked don't, and just refer to making whatever is in the repo available to others.
If you distribute a binary to someone, with gpl2, you should also, if asked provide the source code used to _build_ that binary. Other licenses will differ. MIT for example lets you do pretty much anything, so long as you keep the MIT license and attribution public.
But when people are talking about open source, they generally mean "oh I can see the source code and build it my self." rather than freeware which is "I can run the binary and not have to pay"
Yes, I 100% agree. Open Source is a lot more about not paying than about liberty.
This is exactly the tradeoff that we had made in the industry a couple of decades ago. We could have pushed all-in on Stallman's vision and the FSF's definition of Free Software, but we (collectively) decided that it's more important to get the practical benefits of having all these repos up there on GitHub and us not suing each other over copyright infringement. It's absolutely legitimate to say that we made the wrong choice, and I might agree, but a choice was made, and Open Source != Free Software.
No. In that case, you're providing two things, a binary version of your tool, and the tool's source. That tool's source is available to inspect and build their own copy. However, given just the weights, we don't have the source, and can't inspect what alignment went into it. In the case of DeepSeek, we know they had to purposefully cause their model to consider Tiananmen Square something it shouldn't discuss. But without the source used to create the model, we don't know what else is lurking around inside the model.
> However, given just the weights, we don't have the source
This is incorrect, given the definitions in the license.
> (Apache 2.0) "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.
(emphasis mine)
In LLMs, the weights are the preferred form of making modifications. Weights are not compiled from something else. You start with the weights (randomly initialised) and at every step of training you adjust the weights. That is not akin to compilation, for many reasons (both theoretical and practical).
In general licenses do not give you rights over the "know-how" or "processes" in which the licensed parts were created. What you get is the ability to inspect, modify, redistribute the work as you see fit. And most importantly, you modify the work just like the creators modify the work (hence the preferred form). Just not with the same data (i.e. you can modify the source of chrome all you want, just not with the "know-how and knowledge" of a google engineer - the license can not offer that).
This is also covered in the EU AI act btw.
> General-purpose AI models released under free and open-source licences should be considered to ensure high levels of transparency and openness if their parameters, including the weights, the information on the model architecture, and the information on model usage are made publicly available. The licence should be considered to be free and open-source also when it allows users to run, copy, distribute, study, change and improve software and data, including models under the condition that the original provider of the model is credited, the identical or comparable terms of distribution are respected.
> In LLMs, the weights are the preferred form of making modifications.
No they aren't. We happen to be able to do things to modify the weights, sure, but why would any lab ever train something from scratch if editing weights was preferred?
Would you accept the argument that compiling is modifying the bytes in the memory space reserved for an executable?
I can edit the executable at the byte level if I so desire, and this is also what compilers do, but the developer would instead be modifying the source code to make changes to the program and then feed that through a compiler.
Similarly, I can edit the weights of a neural network myself (using any tool I want) but the developers of the network would be altering the training dataset and the training code to make changes instead.
The big difference that an Open Source license gives me is that regardless of the tool I use to make the edits, if I rewrite the bytes of the Linux kernel, I can freely release my version with the same license, but if I rewrite the bytes of Super Mario Odyssey and try to release the modified version, I'll soon be having a very fun time at the bankruptcy court.
You can, should you wish, totally release a model after iitialisation. It would be a useless model, but, again, the license does not deal with that. You would have the rights to run, modify and release the model, even if it were a random model.
tl;dr; Licenses deal with what you can do with a model. You can run it, modify it, redistribute it. They do not deal with how you modify them (i.e. what data you use to arrive at the "optimal" hardcoded values). See also my other reply with a simplified code example.
> And most importantly, you modify the work just like the creators modify the work
Emphasis mine.
Weights are not open source.
You can define terms to mean whatever you want, but fundametally if you cannot modify the “output” the way the original creators could, its not in the spirit of open source.
Isnt that literally what you said?
How can you possibly claim both that a) you can modify it the creators did, b) thats all you need to be open source, but…
Also c) the categorically incorrect assertion that the weights allow you to do this?
Whatever, I guess, but your argument is logically wrong, and philosophically flawed.
If they are released under an open source license, they are.
I think you are confusing two concepts. One is the technical ability to modify weights. And that's what the license grants you. The right to modify. The second is the "know-how" on how to modify the weights. That is not something that a license has ever granted you.
Let me put it this way:
```python
THRESHOLD = 0.73214
if input() < THRESHOLD:
print ("low")
else:
print ("high")
```
If I release that piece of code under Apache 2.0, you have the right to study it, modify it and release it as you see fit. But you can not have the right (at least the license doesn't deal with that) to know how I reached that threshold value. And me not telling you does not in any way invalidate the license being Apache 2.0. That's simply not something that licenses do.
In LLMs the source is a collection of architecture (when and how to apply the "ifs"), inference code (how to optimise the computation of the "ifs") and hardcoded values (weights). You are being granted a license to run, study, modify and release those hardcoded values. You do not, never had, never will in the scope of a license, get the right to know how those hardcoded values were reached. The process by which those values were found can be anything from "dreamt up" to "found via ML". The fact that you don't know how those values were derived does not in any way preclude you from exercising the rights under the license.
You are fundamentally conflating releasing a binary under an open source license with the software being open source. Nobody is saying that they're violating the license of Apache2 by not releasing the training data. What people are objecting to is that calling this release "open source", when the only thing covered by the open source license is the weights, to be an abuse of the meaning of "Open Source".
To give you an example: I can release a binary (without sources) under the MIT - an open source license. That will give you the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of said binary. In doing so, I would have released the binary under an open source license. However, most people would agree that the software would not be open source under the conventional definition, as the sources would not be published. While people could modify it by disassembling it and modifying it, there is a general understanding that Open Source requires distributing the _sources_.
This is very similar to what is being done here. They're releasing the weights under an open source license - but the overall software is not open source.
No, it's like saying that if you release under Apache license, it's not open source even though it's under an open source license
For something to be open source it needs to have sources released. Sources are the things in the preferred format to be edited. So the code used for training is obviously source (people can edit the training code to change something about the released weights). Also the training data, under the same rationale: people can select which data is used for training to change the weights
Well, this is just semantics. I can have a repo that includes a collection of json files that I had generated via a semi-manual build process that depends on everything from the state of my microbiome to my cat's scratching pattern during Mercury's last retrograde. If I attach an open source license to it, then that's the source - do with it what you will. Otherwise, I don't see how this discussion doesn't lead to "you must first invent the universe".
The difference is that you can customize/debug it or not. You might say that a .EXE can be modified too. But I don't think that's the conventional definition of open source.
I understand that these days, businesses and hobbyists just want to use free LLMs without paying subscriptions for economic motives, that is, either saving money or making money. They don't really care whether the source is truly available or not. They are just end users of a product, not open-source developers by any means.
What does open sourcing have to do with "reproducing"? Last I checked, open sourcing is about allowing others to modify and to distribute the modified version, which you can do with these. Yes, having the full training data and tooling would make it significantly easier, and it is a requirement for GPL, but not for Open Source licenses in general. You may add this as another argument in favor of going back in time and doing more to support Richard Stallman's vision, but this is the world in which we live now.
For obvious reasons, there is no world in which you can "build" this kind of so-called open source project without the data sets. Play around with words all you want.
Learned this the hard way. Asked Claude Code to run a database migration. It deleted my production database instead, then immediately apologised and started panicking trying to restore it.
Thankfully Azure keeps deleted SQL databases recoverable, so I got it back in under an hour. But yeah - no amount of CLAUDE.md instructions would have prevented that. It no longer gets prod credentials.
Different service, same cold sweat moment. Asked Claude Code to run a database migration last week. It deleted my production database instead, then immediately said "sorry" and started panicking trying to restore it.
Had to intervene manually. Thankfully Azure keeps deleted SQL databases recoverable for a window so I got it back in under an hour. Still way too long. Got lucky it was low traffic and most anonymous user flows hit AI APIs directly rather than the DB.
Anyway, AI coding assistants no longer get prod credentials on my projects.
How do you deny access to prod credentials from an assistant running on your dev machine assuming you need to store them on that same machine to do manual prod investigation/maintenance work from that machine?
I keep them in env variables rather than files. Not 100% secure - technically Claude Code could still run printenv - but it's never tried. The main thing is it won't stumble into them while reading config files or grepping around.
It handles DevOps tasks way faster than I would - setting up infra, writing migrations, config changes, etc. Project is still early stage so speed and quick iterations matter more than perfect process right now. Once there's real traffic and a team I'll tighten things up.
If I felt the need to optimise things like infra setup and config at an early stage of a project, I'd be worried that I'm investing effort into the wrong thing.
Having an LLM churn out infra setup for you seems decidedly worse than the `git push heroku:master` of old, where it was all handled for you. And, frankly, cheaper than however much money the LLM subscription costs in addition to the cloud.
But why have it execute the tasks directly? I use it to setup tasks in a just file, which I review and then execute myself.
Also, consider a prod vs dev shell function that loads your prod vs dev ENV variables and in prod sets your terminal colors to something like white on red.
Building an AI product for kids taught me a lot about this. The assistant can't be annoying or condescending. Kids will just ignore it. But they love it when it feels like a collaborator, not a helper. Clippy failed because it interrupted. Good AI assists without getting in the way.
Needed to read this. 20 years building software for other people, finally launched my own thing a few weeks ago. Most days feel like nothing is working. But you only need one thing to click.