AI Assisted Contributions
I know AI is completely a closed source thing at this time, but I have been building up a local AI workflow at home that at least doesn't use the cloud services. Is there a particular stance that Trisquel has on AI-assisted contributions? I am not speaking of fully-automated, where I would not be involved.
I know AI is completely a closed source thing at this time
I do not know. Personal uses of adjusted machine learning models are recent. For that reason, it is better to not draw assertive conclusions.
Nevertheless, in my humble opinion, a set of numbers is not software. It is data. And it is essentially what an adjusted model is. Values for billions of parameters that have been tuned by machine learning. If those numbers are under a free software license (such as Qwen's distilled models, under the Apache 2.0 license), they can be freely used, redistributed and modified, by fine tuning.
To actually use the model (the so-called inference), you need software, running locally to not fall into SaaSS. As you know (since you "have been building up a local AI workflow at home"), there is free software for that. Alpaca ( https://jeffser.com/alpaca/ ) for instance. I have downloaded and used Qwen 3.5 (9B) from Alpaca. No proprietary software is required, if you only use your CPU. You need enough RAM (I have 16 GB) and it is a little slow, but it works fine.
All that said, don't get me wrong: I have many worries regarding LLMs and the likes. They cannot be framed as "AI is completely a closed source thing" though. They relate to the jobs they destroy, the wealth they create that may end up concentrated in the hands of a few capitalists (who are often techno-fascists nowadays...), the vasts amount of energy they require, the disregard for the copylefts on the code in the training datasets, etc.
Is there a particular stance that Trisquel has on AI-assisted contributions?
It is question for quidam and Ark74 to answer.
As long as contributors remain entirely responsible for their contributions, whose quality must remain high, I personally think they should be allowed to use the tools of their preferences. If generative models can boost contributions to free software, they may end up having a positive impact on the movement. On the contrary, prohibiting their usage may make free software technically lose ground against proprietary software that profit from those tools. Also, prohibiting generative models may drive new contributors away. As all tools, LLMs must be mastered. As far as I understand, the code they initially write is often buggy, unmaintainable, etc.
The FSF is working in this area and a draft document is public from 2024:
https://www.fsf.org/news/fsf-is-working-on-freedom-in-machine-learning-applications
Qwen 3.5 does not seem to meet the draft criteria.
https://www.fsf.org/news/fsf-is-working-on-freedom-in-machine-learning-applications says:
After several conversations about the responsibility of the FSF in this discussion, serious work to come to a unanimous conclusion started in May of this year. That work has now concluded, and the working group is currently working to draft the exact text that will form the definition of a free machine learning application.
The year in question is 2024. Do you know where "the exact text" is?
No newer public version of the criteria is available. Still, the existing announcement states that the criteria will require the software, raw training data, and associated scripts to grant users the four freedoms, so we can still evaluate models using those criteria. I don't know of any software/model/training data/script combination that satisfies all of the criteria. It may be impossible to satisfy the criteria at present, but some come closer than others. And that's a fine outcome in my book: Answering what freedom looks like in this context has to include the possibility that nothing currently available is good enough, or else the process is rigged. Unlike the OSI's criteria, where they stated they wouldn't develop criteria that at least one model from today didn't meet. That makes the OSI's outcome seem predetermined.
It seems strange to me that training data would need to be free in order to consider a machine learning application free.
Consider the case of spam detection. If I understand correctly, many email providers use machine learning to detect whether something is spam. To do this, they might collect real spam messages and real legitimate messages and then train a classifier based on that data. Of course, spammers will not willingly license their messages.
If a human were to hand-write a program that detects spam using pre-defined rules, they might use knowledge of some of the patterns that would be encoded in a machine learning model. It seems odd to call the application using a machine learning model nonfree just because a machine was used to figure out the rules instead of a human.
I'm not saying the FSF's statement inconsistent, but it just seems strange to me, given the above possibility.
That said, I am interested in using an LLM that has been trained on a fully free dataset that I can get a copy of. There are some models that aim to train solely on public domain data, like Talkie [1], and they briefly describe where they got a lot of their data, but I don't see a way to download or explore the entire dataset. I don't have the processing power or desire to retrain an LLM from scratch, but I think looking at the dataset could be an interesting way to learn about an LLM, and in the case of models which aim to exclude certain kinds of data, one could attempt to verify that this is the case.
"It seems strange to me that training data would need to be free in order to consider a machine learning application free."
The draft criteria explains why this is the case.
"but I don't see a way to download or explore the entire dataset."
If it truly is not available that makes it nonfree per the criteria.
I don't see where in the linked page [1] that it explains why training data is needed. Is there a separate document with an early draft of the exact text that I am missing? Additionally, I don't see where it says that training data must be provided, unless that's what "the model parameters that represent its training" means, but the word "parameters" makes me think the result of the training rather than the data that led to that result. That page also says all the training data mus be free, but just because something is free doesn't mean it is available. But again, maybe I'm missing the document you are referring to.
The freedom to modify seems like the most likely thing to accidentally be left out of a machine learning application release, but my understanding is that a lack of training data does not make it significantly more difficult to modify a machine learning model.
[1] https://www.fsf.org/news/fsf-is-working-on-freedom-in-machine-learning-applications
The FSF explains this in the "Freedom challenges in ML beyond software". The reasoning is that without the training data, you cannot effectively exercise the freedom to study and modify: "The model parameters are not comprehensible as such by humans, so it is not practical to study or adapt an ML application by analyzing or editing model parameters directly. ... So, in practice, studying and adapting an ML application is usually done, for example, by... analyzing training data, and incrementally training or retraining the model from scratch."
For the other, it's in both the opening paragraph "...which will require the software, *as well as the raw training data and associated scripts*, to grant users the four freedoms" and again in the "Close to a conclusion" section: "...we cannot say a ML application is free unless all its *training data and the related scripts for processing it* respect all users, following the four freedoms."
Further, in the "Freedom may not equal justice" section, the FSF explicitly equates not releasing training data with being nonfree: "It may be that some nonfree ML have valid moral reasons for not releasing training data, such as personal medical data. In that case, we would describe the application as a whole as nonfree."
As a whole. But individual components might still be free, such as the software. But withholding the training data results in the conclusion that they say.
As you wrote, https://www.fsf.org/news/fsf-is-working-on-freedom-in-machine-learning-applications pretends that "in practice, studying and adapting an ML application is usually done, for example, by... analyzing training data, and incrementally training or retraining the model from scratch". It is definitely not true for large models. Almost nobody can afford to train a model from scratch. Take DeepSeek. It always boasts (critics say "lies") that it trains such models for a small fraction of the cost other companies (OpenAI, Anthropic, etc.) pay:
Lastly, we emphasize again the economical training costs of DeepSeek-V3, summarized in Table 1, achieved through our optimized co-design of algorithms, frameworks, and hardware. During the pre-training stage, training DeepSeek-V3 on each trillion tokens requires only 180K H800 GPU hours, i.e., 3.7 days on our cluster with 2048 H800 GPUs. Consequently, our pre-training stage is completed in less than two months and costs 2664K GPU hours. Combined with 119K GPU hours for the context length extension and 5K GPU hours for post-training, DeepSeek-V3 costs only 2.788M GPU hours for its full training. Assuming the rental price of the H800 GPU is $2 per GPU hour, our total training costs amount to only $5.576M.
https://github.com/deepseek-ai/DeepSeek-V3/diffs/0?base_sha=592fd5daf8177b205af11651bbb31a1834a8b0e0&head_user=vaerksted&name=main&pull_number=729&sha1=592fd5daf8177b205af1...
"Only $5.576M". Who can afford that? Advocating that every user must be able to exercise their freedoms by training such models from scratch makes no sense. "In practice, studying and adapting an ML application is usually done" by fine-tuning, contrary to what the FSF wrote. Fine-tuning modifies the model weights using *new* data.
"Almost nobody can afford to train a model from scratch."
So AI is indeed completely a closed source thing at this time, except for those who can afford it.
"(critics say "lies")"
Could you elaborate on this? Are these critics the same "other companies" whose economic model is about to collapse?
https://en.wikipedia.org/wiki/DeepSeek has those four references to support the sentence "The cost [of training the DeepSeek-V3 model] has been discussed and called misleading, because it covers only parts of the true cost":
- https://www.techspot.com/news/106612-deepseek-ai-costs-far-exceed-55-million-claim.html
- https://www.yahoo.com/news/research-exposes-deepseek-ai-training-165025904.html
- https://semianalysis.com/2025/01/31/deepseek-debates/
- https://therecursive.com/martin-vechev-of-insait-deepseek-6m-cost-of-training-is-misleading/
We can immediately notice that reference 1 is based on reference 3.
Did you not check those claims yourself? $600 billion written off Nvidia shares should indeed be a source of concern for some.
Did you not check those claims yourself?
I did not. They make no difference for my point: whether the cost is five millions dollars or five billions, essentially nobody can pay it and "adapting an ML application is *not* usually done, for example, by... analyzing training data, and incrementally training or retraining the model from scratch". It is done by fine-tuning, using new data.
As a consequence, the conclusion that "we cannot say a ML application is free unless all its *training data and the related scripts for processing it* respect all users, following the four freedoms" does not follow. Well, it does not follow unless "all users" is redefined as "only billion-dollar companies". They are the only actors who can pay the cost of (re)training a large model from scratch. For the rest of us, having the "training data and the related scripts for processing it" would not make us any more free, because we cannot afford to process it.
I am here only talking about the monetary cost. However, the same rationale applies to the environmental cost.
If you disagree that the criteria should require that users deserve to have the training data, I encourage you to send your feedback to the FSF explaining why: https://www.fsf.org/about/contact/email. I imagine that they will use public feedback to inform future versions of the criteria.
I am under the impression that the FSF has already realized the practical impossibility to exercise the "freedom to (re)train from scratch". Probably after receiving feedback from people that are more involved with machine learning than I am (as I wrote below, I have never even tried fine tuning). That would explain why "the exact text that will form the definition of a free machine learning application" has never been published, although it was promised two years ago.
It would be funny if they had realized it given that they apparently haven't realized the practical impossibility of examining open source software code. Most people cannot read a single line of code.
Some do. That is enough for a community of users of a program to control it. Even if none of them can read code, they can contract a developer. To retrain from scratch a large machine learning model, the cost is thousands of times higher. Most importantly, it is unclear whether retraining from scratch actually allows to better modify (to better suit the needs of the community) the model than post-training, which is far cheaper.
I can confirm later drafts, even as recent as a couple weeks ago, still include the training data requirement, so the concept hasn't been abandoned; I can only speculate on the delay. Regarding cost: Free software's about rights, not money, so the "it's too expensive" argument falls flat. What rights do the users *deserve*? The FSF seems to be saying that people should be *able* to do it if they want to or choose to. I expect costs will decrease over time anyway. And, they're trying to write a universal rule for machine learning, not "just" for multi-million-dollar LLMs. For SLM, retraining from scratch on a computer from today is completely viable, making the original training data very relevant.
https://www.gnu.org/philosophy/free-hardware-designs.en.html was written a while ago but what it says seems still valid today:
You can't build and run a circuit design or a chip design in your computer. Constructing a big circuit is a lot of painstaking work, and that's once you have the circuit board. Fabricating a chip is not feasible for individuals today; only mass production can make them cheap enough. With today's hardware technology, users can't download and run a modified version of a widely used digital hardware design, as they could run a modified version of a widely used program. Thus, the four freedoms don't give users today collective control over a hardware design as they give users collective control over a program. That's where the reasoning showing that all software must be free fails to apply to today's hardware technology.
I see similarities and differences with the situation of langage models today. If any individual had the complete training data of most of today's large language models, that individual would be unable to train a model from it. This may change if computing power becomes a lot cheaper but currently we are very far from that. Unlike hardware, the issue isn't mass production because you can still duplicate the weights of a model at not cost, but similarly to hadware, getting those weights out of the complete training data - which are somehow part of the design of the model - is not feasible for individuals today.
It may be feasible for individuals to train smaller models but we need to see how effective it is compared with tuning large models. Certainly, users deserve the freedom to control their computing but we need to find practical ways to achieve that. I have read so many times people saying that the FSF isn't consistent with its approach to freedom because it does not reject hardware made with non-free design but I understand this as a practical approach to focus efforts of what can effectively be reached without a physical barrier, and that is control of the software that runs on your hardware, even though you can't change your hardware.
For language models, the physical barrier is not the same like for hardware manufacturing, so I am not saying it should be treated the same. Reading https://www.fsf.org/news/fsf-is-working-on-freedom-in-machine-learning-applications, it seems to me that the FSF is having a completely practical approach, like it had about hardware, by not calling free large language models with training not freely available but not rejecting their usage and trying to define criteria to improve user control over them (like right to share weights, tune the model and share the tuned model). I am anticipating too much there, let's wait for the exact text from the FSF. You called the FSF a lighthouse, I view it more as a compass, helping to make proper decisions.
I was curious to see if maybe some older models had a training data release, so I was looking at information about GPT-2 [1], and I then looked at the Wikipedia page for GPT-1 [2], which I noticed had a link to "Open-source artificial intelligence" [3] which apparently does actually require that training data be available. The Wikipedia page makes it sound like the training data has to be free too, but it seems like maybe the OSI disagrees with that. I looked at a source mentioned on that page [4], which mentioned that the OSI would list some models that meet their definition, and the first one I looked at, "CrystalCoder" [5], seems at a glance to have all training data available [6], but some of the data is nonfree (e.g. CommonCrawl). The OSI has a page listing more models [7].
With full access to the training data, someone with the resources to do so could filter out any nonfree data from the training set and then re-train it. Perhaps some of the models that the OSI considers to be "open-source artificial intelligence" may be small enough that anyone could do this.
[1] https://en.wikipedia.org/wiki/GPT-2
[2] https://en.wikipedia.org/wiki/GPT-1
[3] https://en.wikipedia.org/wiki/Open-source_artificial_intelligence
[4] https://www.technologyreview.com/2024/08/22/1097224/we-finally-have-a-definition-for-open-source-ai/
[5] https://github.com/LLM360/crystalcoder-train
[6] https://huggingface.co/datasets/IFM/CrystalCoderDatasets
[7] https://opensource.org/ai
Yes, the OSI's definition at https://opensource.org/ai/open-source-ai-definition also has requirements for training data but note that it's much weaker and none of it has to be free, and in fact none of it even needs to be sharable or be shared, while under the FSF's criteria it does. I also note that even the OSI calls such data the "preferred form to make modifications to machine-learning systems".
> With full access to the training data, someone with the resources to do so could filter out any nonfree data from the training set and then re-train it.
In theory, but I see a significant practical problem: the amount of effort to audit, for example, The Common Pile's 8TB of text seems impractical. One thing that I'd like to see in the FSF's criteria is a "Commitment to Correct Mistakes" for model and data set maintainers much like endorsed distro maintainers do. In order to recommend a particular model or training data set, the maintainers would make a reasonable effort to keep out non-free junk and to remove it if found.
Did you try fine-tuning? If so, what kind of data did you use for that and did you notice a change when asking certain questions between the answer without and with fine-tuning?
Besides, I am not sure how to master these tools, can fine-tuning do that?
If an LLM was trained with non-free software or leaked pieces of information, there is a risk that it writes code that more or less trivially reproduces pieces of non-free software or takes advantage of the leaked pieces of information. If that code is used for a free software project, the project may be sued by a company arguing that their copyright was violated or that it performed reverse engineering violating their usage conditions.
Even if the LLM would be trained with code under the same license, there is a copyright owner that should be credited anyway. Unless LLMs can be adjusted in such a way that they can identify the source and the license of the code they somehow reproduce and provide the associated copyright notice, it looks difficult to eliminate legal risks if using them for free software projects.
Did you try fine-tuning?
I did not.
I am not sure how to master these tools, can fine-tuning do that?
The freedom to modify certainly participates in controlling the work you achieve with the help of an LLM. That said, I was actually thinking of mere uses. I guess the first step into mastering these tools is to be critical of their output, to not blindly accept it.
If an LLM was trained with non-free software or leaked pieces of information, there is a risk that it writes code that more or less trivially reproduces pieces of non-free software or takes advantage of the leaked pieces of information.
That is indeed a risk. Essentially all (free or proprietary) software companies are taking it today. Hopefully, those who trained the model in the first place (disregarding the licenses) will end up in legal troubles. Not the end users of the model.
"Hopefully, those who trained the model in the first place (disregarding the licenses) will end up in legal troubles. Not the end users of the model."
Criminal Code of Canada: "...has in his possession any property or thing or any proceeds of any property or thing knowing that all or part of the property or thing or of the proceeds was obtained by or derived directly or indirectly from...the commission of an offence punishable by indictment."
I believe most if not all criminal codes have a similar provision in order to make sure nobody benefits from crime. Making sure all software we use is free as in freedom is also the best way to stay clear of legal troubles.
>" I have downloaded and used Qwen 3.5 (9B) from Alpaca. No proprietary software is required, if you only use your CPU. You need enough RAM (I have 16 GB) and it is a little slow, but it works fine."
Ok, I think we need to see a @Magic Banana Qwen 3.5/Alpaca how-to/walkthrough. I've been wanting to do the same, but would prefer to learn from your successful actions than having to re-invent the wheel, if possible.
It is really easy. I installed Alpaca from Flathub (the first instruction below installs flatpak on your system; the second instruction adds the floss subset of the Flathub repository; maybe all that as already been done on your system):
$ sudo apt install flatpak
$ flatpak remote-add --subset=floss flathub https://flathub.org/repo/flathub.flatpakrepo
$ flatpak install flathub com.jeffser.Alpaca com.jeffser.Alpaca.Plugins.Ollama
(Warning: even asking for the "floss" subset, as above, applications only aiming to launch proprietary software are proposed on Flathub.)
Launch Alpaca. In it, choose "Manage Models" (in the burger menu or using Ctrl+M), click on the "Available" tab and search the model of your choice. You can directly type its name if you know it.
(Warning: some models labeled as "Cloud" are SaSS, others have unacceptable terms of service, others are too large for your system, and I believe none would satisfy the FSF's current stance.)
Once the model downloaded, go back to the main window. There you can allow the model to use tools such as "Web search" and input a prompt to start a discussion.
(Warning: the integrated Web browser may execute proprietary JavaScript, I believe.)
So, as you can see, there are a number of real freedom pitfalls.
Would you call your approach to getting a local ai as good as it gets regarding free software?
I think, ironically, the Paul Allen Institute might be moving things in a positive direction.
from https://allenai.org/blog/tulu-3-technical
"This lack of transparency creates challenges for reproducibility and hinders progress in understanding how specific fine-tuning strategies impact model performance. With Tülu 3, we are releasing state-of-the-art post-trained models with every step in the pipeline open – training datasets, data curation tools, data decontamination scripts, training code, evaluation suites, etc. We believe this will both close the gap to closed recipes for post training and act as a foundation for the next chapter of open post-training research."
If indeed every step in the pipeline is open wouldn't that overcome much of fsf's concerns? Or am I misreading things.
That deals with "post-training" (what includes "fine-tuning"), not "training or retraining the model from scratch", as written in https://www.fsf.org/news/fsf-is-working-on-freedom-in-machine-learning-applications

