On 12/30/23 15:06, Charles Plessy wrote:

Le Fri, Dec 29, 2023 at 01:14:29PM +0100, Steffen Möller a écrit :
What hypothese do we have on what influences the number of active individuals?
When I was a kid I was playing with a lot of pirate copy of Amiga and
then PC games, and I had a bit of melancholy thinking that what appeared
to be golden days took place when I was still busy learning to walk and
speak.  I wondered if I was born too late.  Then I was introduced to
Linux and Debian.

If you don't mind to share more of your story -- how are you introduced to Linux and Debian? Can we reproduce it?

For me this is not reproducible. The beginning of my story is similar to yours. Differently, at that time Windows is the only PC operating system I'm aware of. And I suffered a lot from it and its ecosystem: aggressive reboots, aggressive pop-up windows and ads completely out of my control, enormous difficulty to learn and understand its internals given very limited budget for books, enormous difficulty to learn C programming language based on it. Visual studio did a great job to confuse me with a huge amount of irrelevant details and complicated user interface when I want try the code from the K&R C book as a newbie (without any educational resource available or affordable). I forgot why I chose this book but it was a correct one to buy.

One day, out of curiosity I searched for "free of charge operating systems" so that I can get rid of Windows. Then I got Ubuntu 11.10. Its frequent "internal errors" drove me to try other linux distros in virtualbox, including Debian squeeze and Fedora. While squeeze is the ugliest among them all in terms of desktop environment, it crashes significantly less than the rest. I was happy with my choice. Linux does not reboot unless I decide to do so. It does not pop-up ads because the malwares (while being useful) are not available under linux. It does not prevent me from trying to understand how it works, even if I can hardly grasp the source code. And, `gcc hello-world.c` is ridiculously easy for learning programming compared to using visual studio.

I was confused again -- why is all of those free of charge? I tried to learn more until the Debian Social Contract, DFSG and the stuff wrote by FSF (mostly Stallman) completely blown up my mind. With the source code within my reach, I'm able to really tame my computer. The day I realized that is the day when I added "becoming a DD" to my dream list.

That was a big thing, a big challenge for me to learn
it, and a big reward to be part of it.  At that time I never imagined
that the next big thing was diversity, inclusion and justice, but being
part of Debian unexpectedly connected me to it.  Now when I look back I
do not worry being born too late.  I would like to say to young people
that joining a thriving community is the best way to journey beyond
one's imagination.

Ideally yes, but people's mind is also affected by economy.

In developing countries where most people are still struggling to survive and feeding a family, unpaid volunteer work is respected in most of the time, but seldom well-understood. One needs to build up a very strong motivation before taking actions to override the barrier of societal bias.

That's partly the one of the reasons why the number of Chinese DDs is so scarce while China has a very large number of population. And in contrast, most DDs are from developed countries.

I like the interpretations on how human society works from the book "Sapiens: a brief history of humankind". Basically, what connects people all over the world, forming this community is a commonly believed simple story -- we want to build a free and universal operating system. (I'm sad to see this sentence being removed from debian.org) The common belief is the ground on which we build trust and start collaboration.

So, essentially, renewing the community is to spread the simply story, to the young people who seek for something that Debian/FOSS can provide. I don't know how to achieve it. But I do know that my story is completely unreproducible.

Of course, we need to show how we are thriving.  On my wishlist for
2024, there is of course AI.

In case people interested in this topic does not know we have a dedicated ML for that:

https://lists.debian.org/debian-ai/


The key word GPT successfully toggled my "write-a-long-response" button. Here we go.

  Can we have a DebGPT that will allow us to
interact with our mailing list archives using natural language?

I've ever tried to ask ChatGPT about Debian related questions. While ChatGPT is very good at general linux questions, it turns that its training data does not contain much about Debian-specific knowledge. The quality of training data really matters for LLM's performance, especially the amount of book-quality data. The Debian ML is too noisy compared to wikipedia dump and books.

While the training set of the proprietary ChatGPT is a secret, you can have a peek in the Pile dataset frequently used by many "open-source" LLMs. BTW, the formal definition of "open-source AI" is still a work-in-progress by OSI. I'll get back to Debian when OSI makes the draft public for comments at some time in 2024.

https://en.wikipedia.org/wiki/The_Pile_(dataset)

The dataset contains "Ubuntu Freenode IRC" logs, but not any dump from Debian servers.

Thus, technically, in order to build the DebGPT, there are two straightforward solutions:

(1) adopt an "open-source" LLM that supports very large context length. And directly fed the dump of debian knowledge into its context. This is known as the "In-Context Learning" capability of LLMs. It enabled a wide range of prompt engineering methods without any further training of the model. In case you are interested in this, you can read OpenAI's InstructGPT paper as a start.

(2) fine-tune an "open-source" LLM on the debian knowledge dump with LoRA. This will greatly reduce the requirement of training hardware. According to the LoRA paper, the training or full fine-tuning of GPT-3 (175B) requires 1.2TB GPU memory in total (while the best consumer grade GPU provides merely 24GB). LoRA reduced it to 350GB without loosing model performance (in terms of generation quality). That said, an 7B parameter LLM is much easier with cheaper to deal with with LoRA.

All the prevelant "large" language models are Decoder-only Transformers. And the training objective is simply next word prediction. So the debian mailing lists can be organized into tree structure containing mail nodes, and the training objective is to predict the next mail node, following the next-word-prediction paradigm.

How can one download the Debian public mailing list dumps?

  Can
that DebGPT produce code that we know derives from a training set that
only includes works for which peole really consented that their
copyrights and licenses will be dissolved?

Tough cutting-edge research issue. But first, let's wait and see the result for the lawsuite of New York Times against OpenAI+Microsoft:

https://www.nytimes.com/2023/12/27/business/media/new-york-times-open-ai-microsoft-lawsuit.html

The result of this lawsuite might be a milestone in this area. It will definitely impact future lawsuites on LLMs + copyrighted code usage.

Can it be the single entry
point for our whole infrastructure?  I wish I could say "DebGPT, please
accept all these loongarch64 patches and upload the packages now", or
"DebGPT, update debian/copyright now and show me the diff".

The training data will be the Salsa dump. What you described is actually doable.

For each git commit, the first part of the prompt is the files before modification. The user instruction is the git commit message. The expected prediction result is the git diff.

Debian Deep Learning team (debian-ai@l.d.o) have some AMD GPUs in the unofficial infrastructures. It is not far before we can really do something. AMD GPUs with ROCm (open-source) allows us to train neural networks in decent speed without the proprietary CUDA. The team is still working on packaging the missing dependencies for the ROCm variant of PyTorch. The CPU variant (python3-torch) and the CUDA variant (python3-torch-cuda) is already in unstable. The python3-torch-rocm is in my todo list.

PyTorch is already the most widely used training tool. Please forget tensorflow in this aspect. JAX replaces tensorflow but the user number of PyTorch is still overwhelming.

I am not
able to develop DebGPT and confess I am not investing my time in
learning to do it.  But can we attract the people who want to tinker in
this direction?

Debian funds should be able to cover the hardware requirement and training expenses even if they are slightly expensive. The more expensive thing is the time of domain experts. I can train such a model but clearly I do not have bandwidth for that.

Please help the Debian community to spread its common belief to more domain experts.

  Not because we are the best AI team, but because we are
one of the hearts of software freedom, and that freedom is deeply
connected to everybodys futures.
The academia is working hard on making large generative models (not limited to text generation) easier to customize. I'm optimistic about the future.
Well, it is too late for invoking Santa Claus, but this said, best
wishes for 2024 !
Best wishes for 2024!

Reply via email to