this post was submitted on 26 Sep 2024
236 points (98.0% liked)

Technology

58303 readers
13 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related content.
  3. Be excellent to each another!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, to ask if your bot can be added please contact us.
  9. Check for duplicates before posting, duplicates may be removed

Approved Bots


founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[โ€“] [email protected] 24 points 1 month ago* (last edited 1 month ago) (1 children)

First a caveat/warning - you'll need a beefy GPU to run larger models, there are some smaller models that perform pretty well.

Adding a medium amount of extra information for you or anyone else that might want to get into running models locally

Tools

  • Ollama - great app for downloading/managing/running models locally
  • OpenWebUI - A web app that provides a UI like the ChatGPT web app, but can use local models
  • continue.dev - A VS Code extension that can use ollama to give a github copilot-like AI assistant running against a local model (can also connect to Anthropic Claude, etc...)

Models

If you look at https://ollama.com/library?sort=featured you can see models

Model size is measured by parameter count. Generally higher parameter models are better (more "smart", more accurate) but it's very challenging/slow to run anything over 25b parameters on consumer GPUs. I tend to find 8-13b parameter models are a sort of sweet spot, the 1-4b parameter models are meant more for really low power devices, they'll give you OK results for simple requests and summarizing, but they're not going to wow you.

If you look at the 'tags' for the models listed below, you'll see things like 8b-instruct-q8_0 or 8b-instruct-q4_0. The q part refers to quantization, or shrinking/compressing a model and the number after that is roughly how aggressively it was compressed. Note the size of each tag and how the size reduces as the quantization gets more aggressive (smaller numbers). You can roughly think of this size number as "how much video ram do I need to run this model". For me, I try to aim for q8 models, fp16 if they can run in my GPU. I wouldn't try to use anything below q4 quantization, there seems to be a lot of quality loss below q4. Models can run partially or even fully on a CPU but that's much slower. Ollama doesn't yet support these new NPUs found in new laptops/processors, but work is happening there.

  • Llama 3.1 - The 8b instruct model is pretty good, decent speed and good quality. This is a good "default" model to use
  • Llama 3.2 - This model was just released yesterday. I'm only seeing the 1b and 3b models right now. They've changed the 8b model to 11b, I'm assuming the 11b model is going to be my new goto when it's available.
  • Deepseek Coder v2 - A great coding assistant model
  • Command-r - This is a more niche model, mainly useful for RAG. It's only available in a 35b parameter model, so not all that feasible to run locally
  • Mistral small - A really good model, in the ballpark of Llama. I haven't had quite as much luck with this as with Llama but it is good and I just saw that a new version was released 8 days ago, will need to check it out again
[โ€“] [email protected] 4 points 1 month ago

A really nice summary. Very useful. Thanks!