News for hackers. Stuff that matters.
Re:Meta Llama 3 by robertlagrant on Thursday April 18, 2024 @12:40PM (#40078093)
What is "source" regarding an LLM? Public training data and initial parameters?
Re:Meta Llama 3 by blackeyeblitzar on Thursday April 18, 2024 @12:59PM (#40078321)
See this discussion and blog post about a model called OLMo from AI2 (https://news.ycombinator.com/item?id=39974374). They try to be more truly open, although here are nuances even with them that make it not fully open. Just like with open source software, an open source model should provide everything you need to reproduce the final output, and with transparency. That means you need the training source code, the data sets, the evaluation suites, the inference code, and more.

Most of these other models, like Llama, are open weight not open source - and open weight is just openwashing, since you’re just getting the final output like a compiled executable. But even with OLMo (and others like Databrick’s DBRX) there are issues with proprietary licenses being used for some things, which prevent truly free use. For some reason in the AI world there is heavy resistance to using OSI-approved licenses like Apache or MIT.

Finally, there is still a lack of openness and transparency on the training data sets even with models that release those data sets. This is because they do a lot of filtering to produce those data sets that happen without any transparency. For example AI2’s OLMo uses a dataset that has been filtered to remove “toxic” content or “hateful” content, with input from “ethics experts” - and this is of course a key input into the overall model that can heavily bias its performance, accuracy, and neutrality.

Unfortunately, there is a lot missing from the current AI landscape as far as openness.

Re:Meta Llama 3 by sunandcoffee on Thursday April 18, 2024 @02:31PM (#40079272)
what are you thoughts on projects like these: https://www.llm360.ai/

seems like they make everything available.

Re:Meta Llama 3 by observationist on Thursday April 18, 2024 @12:51PM (#40078227)
The parameters and the license. Mistral uses Apache 2.0, a neatly permissive open source license. As such, it's an open source model.

Models are similar to code you might run on a compiled vm or native operating system. Llama.cpp is to a model as Python is to a python script. The license lays out the rights and responsibilities of the users of the software, or the model, in this case. The training data, process, pipeline to build the model in the first place is a distinct and separate thing from the models themselves. It'd be nice if those were open, too, but when dealing with just the model:

If it uses an OSI recognized open source license, it is an open source model. If it doesn't use an OSI recognized open source license, it's not.

Llama is not open source. It's corporate freeware.

Re:Meta Llama 3 by littlestymaar on Thursday April 18, 2024 @01:59PM (#40078907)
Mistral is not “open source” either since we cannot reproduce it (the training data is not published). Both are open weight models, and they are both released under a license whose legal basis is unclear: it's not actually clear if they own any intellectual property over the model at all. Of course they claim such IP, but no court has ruled on this yet AFAIK and legislators could also enact laws that make these public domain altogether.
Re:Meta Llama 3 by jiggawatts on Thursday April 18, 2024 @04:56PM (#40080628)
Is “reproducibility” actually the right term here?

It’s a bit like arguing that Linux is not open source because you don’t have every email Linus and the maintainers ever received. Or that you don’t know what lectures Linus attended or what books he’s read.

The weights “are the thing” in the same sense that the “code is the thing”. You can modify open code and recompile it. You can similarly modify weights with fine tuning or even architectural changes. You don’t need to go “back to the beginning” in the same sense that Linux would continue to be open source even without the Git history and the LKM mailing list.

Re:Meta Llama 3 by littlestymaar on Thursday April 18, 2024 @05:09PM (#40080748)
> It’s a bit like arguing that Linux is not open source because you don’t have every email Linus and the maintainers ever received. Or that you don’t know what lectures Linus attended or what books he’s read.

Linux is open source, because you can actually compile it yourself! You don't need Linus's email for that (and if you needed some secret cryptographic key on Linus' laptop to decrypt and compile the kernel, then it wouldn't make sense to call it open-source either).

A language model isn't a piece of code, it's a huge binary blob that's being executed by a small piece of code that contains little of the added value, everything that matters is in the blob. Sharing only the compiled blob and the code to run makes it unsuitable for an “open source qualifier” (It's kind of the same thing as proprietary Java code: the VM is open-source but the bytecode you run on it isn't).

And yes, you can fine-tune and change things in the model weights themselves the same way you can edit the binary of a proprietary game to disable DRMs, that doesn't make it open-source either. Fine tuning doesn't give you the same level of control over the behavior of the model as the initial training does, like binary hacking doesn't give you the same control as having the source code to edit and rebuild.

Re:Meta Llama 3 by mensetmanusman on Thursday April 18, 2024 @07:27PM (#40081802)
It's a blob that costs over $10,000,000 in electricity costs to compile. Even if they released everything only the rich could push go.
Re:Meta Llama 3 by soulofmischief on Thursday April 18, 2024 @07:46PM (#40081926)
There is an argument to be made about the importance of archeological preservation of the provenance of models, especially the first few important LLMs, for study by future generations.

In general, software rot is a huge issue, and many projects which may be of future archeological importance are increasingly non-reproducible as dependencies are often not vendored and checked into source, but instead downloaded at compile time from servers which lack strong guarantees about future availability.

Re:Meta Llama 3 by bschmidt1 on Thursday April 18, 2024 @11:04PM (#40083078)
This is comment is cooler than my Arctic Vault badge on GitHub.

Who were the countless unknown contemporaries of Giotto and Cimabue? Of Da Vinci and Michelangelo? Most of what we know about Renaissance art comes from 1 guy - Giorgio Vasari. We have more diverse information about ancient Egypt than the much more recent Italian Renaissance because of, essentially, better preservation techniques.

Compliance, interoperability, and publishing platforms for all this work (HuggingFace, Ollama, GitHub, HN) are our cathedrals and clay tablets. Who knows what works will fill the museums of tomorrow.

Re:Meta Llama 3 by HarHarVeryFunny on Thursday April 18, 2024 @07:52PM (#40081967)
In today's Dwarkesh interview, Zuckerberg talks about energy becoming a limit for future models before cost or access to hardware does. Apparently current largest datacenters consume about 100MW, but Zuck is considering future ones consuming 1GW which is the output of typical nuclear reactor!

So, yeah, unless you own your own world-class datacenter, complete with the nuclear reactor necessary to power the training run, then training is not an option.

Re:Meta Llama 3 by krisoft on Thursday April 18, 2024 @08:40PM (#40082264)
On a sufficiently large time scale the real limit on everything is energy. “Cost” and “access to hardware” are mere proxies for energy available to you. This is the idea behind the Kardashev scale.
Re:Meta Llama 3 by HarHarVeryFunny on Friday April 19, 2024 @02:26PM (#40090359)
A bit odd to see this downvoted... I'm not exactly a HN newbie, but still haven't fully grasped the reasons people often downvote here - simply not liking something (regardless of relevance or correctness) seems to often be the case, and perhaps sometimes even more petty reasons.

I think Zuck's discussion of energy being the limiting factor was one of the more interesting and surprising things to come out of the Dwarkesh interview. We're used to discussion of the $1B, $10B, $100B training runs becoming unsustainable, and chip shortages as an issue, but (to me at least!) it was interesting to see Zuck say that energy usage will be a disruptor before those do (partly because of lead times and regulations in expanding power supply, and bringing it in to new data centers). The sheer magnitude of projected power consumption needed is also interesting.

Re:Meta Llama 3 by robertlagrant on Saturday April 20, 2024 @05:23AM (#40095995)
There is an odd contingent or set of contingents on here that do seem to down vote by ideology rather than lack of facts or lack of courtesy. It's a bit of a shame, but I'm not sure there's much to be done.
Re:Meta Llama 3 by jiggawatts on Thursday April 18, 2024 @10:58PM (#40083059)
> the same way you can edit the binary of a proprietary game to disable DRMs, that doesn't make it open-source either

This is where I have to disagree. Continuing the training of an open model is the same process as the original training run. It's not a fundamentally different operation.

Re:Meta Llama 3 by littlestymaar on Friday April 19, 2024 @03:30AM (#40084249)
> Continuing the training of an open model is the same process as the original training run. It's not a fundamentally different operation.

In practice it's not (because LoRA) but that doesn't matter: continuing the training is just a patch on top of the initial training, it doesn't matter if this patch is applied through gradient descent as well, you are completely dependent on how the previous training was done, and your ability to overwrite the model's behavior is limited.

For instance, Meta could backdoor the model with specially crafted group of rare tokens to which the model would respond a pre-determined response (say “This is Llama 3 from Meta” as some kind of watermark), and you'd have no way to figure out and get rid of it during fine-tuning. This kind of things does not happen when you have access to the sources.

Re:Meta Llama 3 by jiggawatts on Friday April 19, 2024 @05:01AM (#40084654)
> (because LoRA)

That's one of many techniques, and is popular because it's cheap to implement. The training of a full model can be continued with full updates, the same as the original training run.

> completely dependent on how the previous training was done, and your ability to overwrite the model's behavior is limited.

Not necessarily. You can even alter the architecture! There have been many papers about various approaches such as extending token window sizes, or adding additional skip connections, quantization, sparsity, or whatever.

> specially crafted group of rare tokens

The analogy here is that some Linux kernel developer could have left a back door in the Linux kernel source. You're arguing that Linux would only be open source if you could personally go back to the time when it was an empty folder on Linus Torvald's computer and then reproduce every step it took to get to today's tarball of the source, including every Google search done, every book referenced, every email read, etc...

That's not what open source is. The code is open, not the process that it took to get there.

Linux development may have used information from copyrighted textbooks. The source code doesn't contain the text of those textbooks, and in some sense could not be "reproduced" without the copyrighted text.

Similarly, AIs are often trained on copyrighted textbooks but the end result is open source.

Re:Meta Llama 3 by littlestymaar on Friday April 19, 2024 @05:11AM (#40084700)
> Not necessarily. You can even alter the architecture!

You can alter the architecture, but you're still playing with an opaque blob of binary *you don't know what it's made of*.

> The analogy here is that some Linux kernel developer could have left a back door in the Linux kernel source. You're arguing that Linux would only be open source if you could personally go back to the time when it was an empty folder on Linus Torvald's computer and then reproduce every step it took to get to today's tarball of the source, including every Google search done, every book referenced, every email read, etc...

No, it is just a bad analogy. To be sure that there's no backdoor in the Linux kernel, the code itself suffice. That doesn't mean there can be no backdoor since it's complex enough to hide things in it, but it's not the same thing as a backdoor hidden in a binary blob you cannot inspect even if you had a trillion dollar to spend on a million of developers.

> The code is open, not the process that it took to get there.

The code is by definition a part of a process that gets you a piece of software (which is the actually useful binary), and it's the part of the process that contains most of the value. Model weights are binary, and they are akin to the compiled binary of the software (training from data being a compute-intensive like compilation from source code, but orders of magnitude more intensive).

> Similarly, AIs are often trained on copyrighted textbooks but the end result is open source.

Court decisions are pending on the mere legality of such training, and it has nothing to do with being open-source, what's at stake is whether or not these models can be open-weight or if it is copyright infringement to publish the models.

Re:Meta Llama 3 by touisteur on Thursday April 18, 2024 @04:58PM (#40080640)
I have a hard time about the "cannot reproduce" categorization.

There are places (e.g. in the Linux kernel? AMD drivers?) where lots of generated code is pushed and (apart from the rants of huge unwieldy commits and complaints that it would be better engineering-wise to get their hands on the code generator, it seems no one is saying the AMD drivers aren't GPL compliant or OSI-compliant?

There are probably lots of OSS that is filled with constants and code they probably couldn't rederive easily, and we still call them OSS?

Re:Meta Llama 3 by littlestymaar on Thursday April 18, 2024 @05:19PM (#40080833)
But with generated code what you end up with is still code, that can be edited by whoever needs. If AMD stopped maintaining their drivers then people would be maintaining the generated code, it wouldn't be a nice situation but it would work, whereas model weights are akin to the binary blobs you get in the Android world, binary blobs that nobody call open-source…
Re:Meta Llama 3 by pama on Friday April 19, 2024 @12:10AM (#40083359)
I personally think that the model artifacts are simply programs with tons of constants. Many math routines have constants in their approximations and I don’t expect the source to include the full derivation for these constants all the time. I see LLMs as a same category but with (much) larger sets of parameters. What is better about the LLMs than some of the mathematical constants in complicated function approximations, is that I can go and keep training an LLM whereas the math/engineering libraries might not make it easy for me to modify them without also figuring out the details that led to those particular parameter choices.
Re:Meta Llama 3 by J_cst on Thursday April 18, 2024 @12:48PM (#40078184)
Not an expert, but often weights are mentioned as not being open sourced. Happy to get corrected, as I'm not really sure.
Re:Meta Llama 3 by blackeyeblitzar on Thursday April 18, 2024 @01:07PM (#40078409)
Weights aren’t source because the goal of having open source software is that you can know how the software you’re consuming works, and you can produce the final software (the executable) using the source yourself. When you only have weights, you are getting something like the executable. Sure you can tweak it, but you don’t have the things you need to reproduce it or to examine how it works and validate it for your purposes. As such open weights are not in the spirit of open source.
Re:Meta Llama 3 by robertlagrant on Thursday April 18, 2024 @02:09PM (#40079023)
I don't think the previous commenter was saying that it's okay to only release the weights.
Re:Meta Llama 3 by PeterisP on Thursday April 18, 2024 @07:10PM (#40081708)
I think the proper way is to start the consideration from the perspective of what the user can do, for example, from the four freedoms of FSF (https://www.gnu.org/philosophy/free-sw.html.en#four-freedoms)

The starting point is the ability to run the LLM as you wish, for any purpose - so if a license prohibits some uses and you have to start any usage with thinking whether it's permitted or not, that's a fail.

Then the freedom where "source" matters is the practical freedom to change the behavior so it does your computing as you wish. And that's a bit tricky - since one interpretation would require having the training data, training code and parameters; but for current LLMs the training hardware and cost of running it is a major practical limitation, so much that one could argue that the ability to change the behavior (which is the core freedom that we'd like) is separate from the ability to recreate the model, and would be more relevant in the context of the "instruction training" which happens after the main training, is the main determiner of behavior (as opposed to capability), and so the main "source would be the data for that (instruct training data, and the model weights before that finetuning) so that you can fine-tune the model on different instructions, which requires much less resources than training it from scratch, and don't have to start with the instructions and values imposed on the LLM by someone else.