I’ve been looking into self-hosting LLMs or stable diffusion models using something like LocalAI and / or Ollama and LibreChat.

Some questions to get a nice discussion going:

  • Any of you have experience with this?
  • What are your motivations?
  • What are you using in terms of hardware?
  • Considerations regarding energy efficiency and associated costs?
  • What about renting a GPU? Privacy implications?
  • Audalin@lemmy.world
    link
    fedilink
    English
    arrow-up
    5
    ·
    6 months ago

    Have been using llama.cpp, whisper.cpp, Stable Diffusion for a long while (most often the first one). My “hub” is a collection of bash scripts and a ssh server running.

    I typically use LLMs for translation, interactive technical troubleshooting, advice on obscure topics, sometimes coding, sometimes mathematics (though local models are mostly terrible for this), sometimes just talking. Also music generation with ChatMusician.

    I use the hardware I already have - a 16GB AMD card (using ROCm) and some DDR5 RAM. ROCm might be tricky to set up for various libraries and inference engines, but then it just works. I don’t rent hardware - don’t want any data to leave my machine.

    My use isn’t intensive enough to warrant measuring energy costs.

    • robber@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      6 months ago

      So you access the models directly via terminal? Is that convenient? Also, do you get satisfying inference speed and quality with a 16GB card?

      • Audalin@lemmy.world
        link
        fedilink
        English
        arrow-up
        3
        ·
        edit-2
        6 months ago

        Mostly via terminal, yeah. It’s convenient when you’re used to it - I am.

        Let’s see, my inference speed now is:

        • ~60-65 tok/s for a 8B model in Q_5_K/Q6_K (entirely in VRAM);
        • ~36 tok/s for a 14B model in Q6_K (entirely in VRAM);
        • ~4.5 tok/s for a 35B model in Q5_K_M (16/41 layers in VRAM);
        • ~12.5 tok/s for a 8x7B model in Q4_K_M (18/33 layers in VRAM);
        • ~4.5 tok/s for a 70B model in Q2_K (44/81 layers in VRAM);
        • ~2.5 tok/s for a 70B model in Q3_K_L (28/81 layers in VRAM).

        As of quality, I try to avoid quantisation below Q5 or at least Q4. I also don’t see any point in using Q8/f16/f32 - the difference with Q6 is minimal. Other than that, it really depends on the model - for instance, llama-3 8B is smarter than many older 30B+ models.

        • robber@lemmy.mlOP
          link
          fedilink
          English
          arrow-up
          2
          ·
          6 months ago

          Thanks! Glad to see the 8x7B performing not too bad - I assume that’s a Mistral model? Also, does the CPU significantly affect inference speed in such a setup, do you know?

          • Audalin@lemmy.world
            link
            fedilink
            English
            arrow-up
            3
            ·
            6 months ago

            If your CPU isn’t ancient, it’s mostly about memory speed. VRAM is very fast, DDR5 RAM is reasonably fast, swap is slow even on a modern SSD.

            8x7B is mixtral, yeah.

  • snekerpimp@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    6 months ago

    Picked up an AMD instinct mi25 to try and do just that. Can get easy-diffusion working after some cussing and voodoo. Cannot get rocm to do ANY llm of any kind, feels like a waste of video ram

    Also have a tesla p4 that runs most text-to-image models rather well, but have been unsuccessful at any llm either, even oobabooga can’t seem to run on it.

    Have given up because the software stack keeps advancing and leaving my hardware behind. I don’t have $3000 for an a100 or $1300 for an mi100 sooo… until the models can run on older/less powerful hardware, I’m probably sitting out of this game. Even though I’d love to be elbow deep in this one.

      • snekerpimp@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        6 months ago

        It has been. I started in this because I liked picking up kick ass enterprise hardware really cheap and playing around with what it can do. Used enterprise hardware is so damn expensive now, it’s cheaper and easier to do everything with consumer products and use the rx6700 in my gaming rig. Just don’t want that running llms and always on.

  • Evotech@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    6 months ago

    Currently seeing this up at work. Ollama with danswer as a rag / frontend. On a bunch of Nvidia L4 /L40 on kubernets

    Is pretty plug and play honestly.

  • fidodo@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    6 months ago

    I tried out ollama. It was trivially easy to set up.

    Stable diffusion is a bit more work, but any power user should be able to figure it out.