I’m new to the field of large language models (LLMs) and I’m really interested in learning how to train and use my own models for qualitative analysis. However, I’m not sure where to start or what resources would be most helpful for a complete beginner. Could anyone provide some guidance and advice on the best way to get started with LLM training and usage? Specifically, I’d appreciate insights on learning resources or tutorials, tips on preparing datasets, common pitfalls or challenges, and any other general advice or words of wisdom for someone just embarking on this journey.

Thanks!

  • @[email protected]
    link
    fedilink
    17
    edit-2
    2 months ago

    Training your own will be very difficult. You will need to gather so much data to get a model that has basic language understanding.

    What I would do (and am doing) is just taking something like llama3 or mistral and adding your own content using RAG techniques.

    But fair play if you do manage to train a real model!

    • @[email protected]
      link
      fedilink
      32 months ago

      OLlama is so fucking slow. Even with a 16-core overclocked Intel on 64Gb RAM with an Nvidia 3080 10Gb VRAM, using a 22B parameter model, the token generation for a simple haiku takes 20 minutes.

      • xcjs
        link
        52 months ago

        No offense intended, but are you sure it’s using your GPU? Twenty minutes is about how long my CPU-locked instance takes to run some 70B parameter models.

        On my RTX 3060, I generally get responses in seconds.

      • @[email protected]
        link
        fedilink
        1
        edit-2
        2 months ago

        Hmmm weird. I have a 4090 / Ryzen 5800X3D and 64GB and it runs really well. Admittedly it’s the 8B model because the intermediate sizes aren’t out yet and 70B simply won’t fly on a single GPU.

        But it really screams. Much faster than I can read. PS: Ollama is just llama.cpp under the hood.

        Edit: Ah, wait, I know what’s going wrong here. The 22B parameter model is probably too big for your VRAM. Then it gets extremely slow yes.

        • xcjs
          link
          1
          edit-2
          2 months ago

          It should be split between VRAM and regular RAM, at least if it’s a GGUF model. Maybe it’s not, and that’s what’s wrong?

          • @[email protected]
            link
            fedilink
            22 months ago

            It depends on your prompt/context size too. The more you have the more memory you need. Try to check the memory usage of your GPU with GPU-Z with different models and scenarios.

      • xcjs
        link
        12 months ago

        Ok, so using my “older” 2070 Super, I was able to get a response from a 70B parameter model in 9-12 minutes. (Llama 3 in this case.)

        I’m fairly certain that you’re using your CPU or having another issue. Would you like to try and debug your configuration together?

          • xcjs
            link
            12 months ago

            Good luck! I’m definitely willing to spend a few minutes offering advice/double checking some configuration settings if things go awry again. Let me know how things go. :-)

            • @[email protected]
              link
              fedilink
              22 months ago

              My setup is Win 11 Pro ➡️ WSL2 / Debian ➡️ Docker Desktop (for windows)

              Should I install the nvidia drivers within Debian even though the host OS already has drivers?

              • xcjs
                link
                1
                edit-2
                2 months ago

                I think there was a special process to get Nvidia working in WSL. Let me check… (I’m running natively on Linux, so my experience doing it with WSL is limited.)

                https://docs.nvidia.com/cuda/wsl-user-guide/index.html - I’m sure you’ve followed this already, but according to this, it looks like you don’t want to install the Nvidia drivers, and only want to install the cuda-toolkit metapackage. I’d follow the instructions from that link closely.

                You may also run into performance issues within WSL due to the virtual machine overhead.

                • @[email protected]
                  link
                  fedilink
                  22 months ago

                  I did indeed follow that guide already, thank you for the respect; I am an idiot and installed both the nvidia WSL driver on top of the host OS driver _as well as the Cuda driver. So I’ll try again with only that guide and see what breaks.

    • 🐝bownage [they/he]
      link
      fedilink
      22 months ago

      Good recommendations! I’d suggest doing some spacy tutorials as well, regarding the topics in the first paragraph. But arguably it’s possible nowadays to just start at transformers without any NLP knowledge, e.g. using huggingface’s AutoTrain or something similar. I wouldn’t recommend it, but you definitely could.

  • @[email protected]
    link
    fedilink
    52 months ago

    I’m also interested, so I hope you don’t mind me joining the ride. Personally, I’d like a self hosted tool, but am happy to see what the community says.

    • @[email protected]
      link
      fedilink
      52 months ago

      If you just want to use a local llm, using something like gpt4all is probably the easiest. Oobabooga or llama.cpp for a more advanced route.

      I use ollama with llama3 on my macbook with open-webui and it works real nice. Mistral7b is another one I like. On my PC I have been using oobabooga with models I get from huggingface and I use it as an api for hobby projects.

      I have never trained models, I don’t have the vram. My GPU is pretty old so I just use these for random gamedev and webdev projects and for messing around with RP in sillytavern.

      • TehPers
        link
        fedilink
        English
        32 months ago

        I managed to get ollama running through Docker easily. It’s by far the least painful of the options I tried, and I just make requests to the API it exposes. You can also give it GPU resources through Docker if you want to, and there’s a CLI tool for a quick chat interface if you want to play with that. I can get LLAMA 3 (8B) running on my 3070 without issues.

        Training a LLM is very difficult and expensive. I don’t think it’s a good place for anyone to start. Many of the popular models (LLAMA, GPT, etc) are astronomically expensive to train and require and ungodly number of resources.

      • @[email protected]OP
        link
        fedilink
        225 days ago

        Month later update: This is the route I’ve gone down. I’ve used WSL to get Ollama and WebopenUI to work and started playing around with document analysis using Llama 3. I’m going to try a few other models and see what the same document outputs now. Prompting the model to chat with the documents is…a learning experience, but I’m at the point where I can get it to spit out quotes and provide evidence for it’s interpretation, at least in Llama3. Super fascinating stuff.

        • xcjs
          link
          22 months ago

          Unfortunately, I don’t expect it to remain free forever.

  • @[email protected]OP
    link
    fedilink
    12 months ago

    I really appreciate all the responses, but I’m overwhelmed by the amount of information and possible starting points. Could I ask you to explain or reference learning content that talks to me like I’m a curious five year old?

    ELI 5?