You read my article on running open source AI locally. You installed Ollama. You downloaded Llama 2. Now you're staring at a dozen different model options and wondering which one actually makes sense for what you're building.
That's the moment this article is for.
There are roughly 200 open source models worth knowing about. But you don't need to know 200. You need to know which 5 or 6 will solve your actual problems. More importantly, you need a framework to choose one without getting lost in benchmark comparisons and model card jargon.
This is Part 1 of a 3-part series. Part 1 covers model selection. Part 2 will cover hardware and quantization. Part 3 will cover running these things in production.
Let's start by understanding the landscape. Not all models are created equal, and bigger does not automatically mean better.
The Major Open Source Model Families
Right now, there are really only a handful of model families worth paying attention to. Everything else is either a fine-tune of one of these, or so specialized that it only makes sense for one specific use case.
Llama (Meta)
Llama is the most mature open source family. Meta released Llama 3 in April 2024, and it changed the game. You have three main sizes: 8B, 70B, and 405B. The 8B and 70B models are what most people actually use.
The 8B model is genuinely good. It handles instruction-following, basic reasoning, and general chat. It's not going to solve math problems or write complex code, but it's a solid baseline that fits on a MacBook.
The 70B is where Llama gets interesting. It's reasoning-capable, handles nuance, and produces more reliable outputs. If you need one model that does many things reasonably well, Llama 70B is probably it.
The 405B model is Meta's latest. It's extremely capable. It's also absurdly large and only makes sense if you have serious GPU infrastructure or you're willing to pay for cloud inference. Most teams don't need it.
Llama's license is clean. You can use it commercially. Meta built it on their own infrastructure. If you're starting an open source journey, Llama is the safe choice.
Mistral
Mistral is small and punchy. Their base models (7B) are designed to be efficient without sacrificing too much quality. They've also released larger variants and specialized models.
Mistral 7B is fast. It's the kind of model that gives you decent answers in under a second on modest hardware. It won't beat Llama 70B on complex reasoning, but for a lot of real work, it's more than good enough.
What makes Mistral interesting is that they think about efficiency. Their models are trained with a focus on making inference cheap. That philosophy shows up in how well they use their parameters. A Mistral 7B often outperforms Llama 13B on certain benchmarks.
Qwen (Alibaba)
Qwen is less talked about in English-speaking communities, but it's legitimately strong. Alibaba's investing heavily in AI, and it shows. Qwen models have some of the best multilingual support of any open source family.
If your application needs to work in multiple languages, Qwen is worth serious consideration. The 72B model is reasoning-capable and handles non-English text better than Llama or Mistral.
The catch is that Qwen is less familiar to most Western engineers. You'll find fewer examples, fewer integrations, and a smaller ecosystem around it. That's changing, but it's still a consideration.
DeepSeek
DeepSeek is the coding specialist. It's a Chinese company, but their focus is sharp: build models that can actually code.
If you're building developer tools, code generation, or technical Q&A systems, DeepSeek models are worth testing. They come in sizes from 1.3B all the way to 70B, so there's probably a size that fits your hardware.
DeepSeek's smaller models are also genuinely useful. A 6.7B DeepSeek model often beats a 13B Llama model at coding tasks. That's not hype. That's a real tradeoff in how these models optimized their training.
Others Worth Mentioning Briefly
Gemma (Google) is solid but hasn't displaced other options. Phi (Microsoft) focuses on tiny models. MPT (MosaicML) was good but development has slowed. OLMo (AI2) is newer and research-focused.
You don't need to know these deeply unless you have a very specific use case.
The Capability Matrix: What Each Model Is Actually Good For
Let me be direct about something: benchmark numbers are misleading. An LLM that scores 75 on MMLU is not uniformly 75-percent-capable at all tasks. A model can be great at reasoning and terrible at following formatting instructions. A model can code well but struggle with nuance in conversation.
Here's what actually matters for different jobs.
Coding Tasks
If you're building a coding assistant, autocomplete, or code review tool, you want DeepSeek or a specialized coding model. DeepSeek 1.3B through 70B all perform surprisingly well. You don't necessarily need the largest version.
Llama 70B can code, but it's not optimized for it. If you only have Llama as an option, it works. It's not ideal.
Mistral 7B can code in a pinch, but don't expect production-quality output. It'll write something, and you'll probably need to fix it.
The gap is real enough that it matters. If coding is your primary task, the model choice affects your results significantly.
Reasoning and Math
Llama 70B is the default here. It handles complex reasoning, can work through multi-step problems, and produces more reliable logical chains.
Qwen 72B competes with Llama 70B on reasoning tasks. It's slightly different in personality but comparable in capability.
Mistral 7B can do light reasoning but doesn't go deep. For anything that requires sustained logical thinking, it breaks down.
DeepSeek 70B can reason, but it's optimized for coding more than pure reasoning.
General Chat and Instruction-Following
All of these models work. Llama 8B, Mistral 7B, and even Qwen 32B are genuinely usable for chat.
For most conversation, 7B to 13B is enough. You don't need 70B just to have a chatbot. That's a common mistake.
If you want a model that feels responsive and natural in conversation, Mistral often scores well. If you want something that handles edge cases gracefully, Llama 70B.
Retrieval-Augmented Generation (RAG)
Here's something counterintuitive: the size of your generator model matters less than you think for RAG. You also need an embedding model, and that choice probably matters more.
For the generator, a 7B model works fine. You're giving it context. It's just filling in the blanks based on that context. A 7B model is perfectly capable of that.
Llama 7B or Mistral 7B are both solid choices. You could go smaller if you wanted to.
The real issue in RAG is your embedding model and retrieval quality. We'll talk about that later in the series.
Multilingual Support
Qwen has the best multilingual support. If your app needs to work in multiple languages at production quality, Qwen is the most straightforward choice.
Llama handles multiple languages but less gracefully than Qwen. Mistral is similar to Llama.
DeepSeek is focused on English and Chinese primarily.
Understanding Model Sizes
Model sizes are measured in billions of parameters. A 7B model has 7 billion learnable parameters. A 70B model has 70 billion.
More parameters generally mean more capability. But there's a catch: more parameters require more compute to run.
7B Models
These fit on consumer GPUs. They run on a MacBook Pro with reasonable speed. They're fast enough for interactive use.
A 7B model gives you a decent general assistant. You won't do complex reasoning, but you'll get usable output for most tasks. Think of it as "competent intern."
Llama 8B and Mistral 7B are the standard bearers here.
13B Models
These are less common than they used to be. The jump from 7B to 13B isn't as valuable as it used to be. You get better quality, but not dramatically so. It requires more VRAM to run.
Skip these unless you have a specific reason. Go for 7B or 70B.
70B Models
This is where reasoning gets reliable. A 70B model can sustain multi-step logic. It handles nuance better. The output quality is noticeably higher than 7B.
The tradeoff is that 70B models need serious hardware. You need a GPU with 40GB of VRAM minimum. Usually you need 80GB to run it comfortably with quantization.
If you don't have that hardware, you're looking at inference services, not local running.
405B Models (and Beyond)
These are frontier models. They're capable. They're also enormous. A 405B model needs 250GB+ of VRAM without quantization.
You're not running this locally. You're using it through an API or building a cluster specifically for it.
For most teams, 405B is overkill. Llama 70B solves most problems. If you need 405B capabilities, you should evaluate commercial APIs.
Licensing and Commercial Use
This matters more than most engineers realize. You can't just assume an "open source" model is free to use commercially.
Llama 2 and Llama 3
These have clean, permissive licenses. You can use them commercially. There are some exceptions if you exceed certain user thresholds, but for most applications, you're fine.
Llama 3 actually improved the license terms compared to Llama 2. If you're choosing between them, Llama 3 is better.
Mistral
Mistral's licensing is also clean for commercial use. No major gotchas.
Qwen
Alibaba's fine with commercial use. The license is permissive.
DeepSeek
DeepSeek is also commercially usable.
The real gotcha isn't with these major models. It's with community fine-tunes and lesser-known models. Some have restrictions. Some have "responsible use" commitments that are vague. Read the license before you deploy something to production.
The Decision Framework
Here's how to actually pick a model. Start at the top and move down.
What's your primary task?
If it's coding, you want DeepSeek. If it's reasoning or complex thought, you want Llama 70B. If it's RAG, you want a small model plus a good embedding model. If it's general chat, almost anything works. If it's multilingual, you want Qwen.
How much hardware do you have?
If you have a MacBook or modest GPU, you're looking at 7B models. If you have an RTX 4090 or similar, you can run 70B with quantization. If you're on a cluster or using cloud, 70B is easy and sometimes 405B makes sense.
Do you need multilingual support?
Yes? Qwen. No? Pick based on capability for your task.
Are there licensing concerns for your use case?
Unlikely with the major models. If you're in a regulated industry, read the license more carefully.
Does this give you a clear answer? If yes, you're done. If no, you're probably overthinking it.
Here's the truth: the difference between Llama 8B and Mistral 7B is smaller than you think. You're probably not going to pick wrong between the major options. If you did, you can always try another model. These are free to download and experiment with.
Common Mistakes When Choosing
Let me save you some time with mistakes I've seen repeatedly.
Assuming bigger is always better. A 70B model is not 10x better than a 7B model. For some tasks, a 13B model beats a 70B model optimized for something else. Benchmark on your actual workload. A model that scores 2 points higher on MMLU might be worse at your specific task.
Ignoring inference speed. A model that takes 10 seconds per response feels broken in production. A model that responds in 100 milliseconds feels instant. Speed matters. Sometimes a smaller, faster model is the right choice.
Picking based on hype. "Everyone is using Llama" doesn't mean Llama is right for you. If you're building a coding tool, DeepSeek might be better. Test multiple options.
Forgetting about fine-tuning costs. If you need a model for a specialized task, you might need to fine-tune. That's an extra step. That's extra complexity. Choose a base model that's already close to what you need.
Assuming you need fine-tuning. On the flip side, prompt engineering often works. A well-crafted prompt to Llama 70B often beats a hastily fine-tuned smaller model. Try prompting first.
Quick Model Recommendations by Goal
| Goal | Best Model | Size | Why |
|---|---|---|---|
| Code generation | DeepSeek | 6.7B-70B | Best at coding. Fast at smaller sizes. |
| Chat/instruction | Mistral or Llama | 7B | Efficient. Good instruction-following. |
| Reasoning/math | Llama 3 | 70B | Strong multi-step logic. Reliable outputs. |
| Multilingual | Qwen | 72B | Best non-English support. Production-ready. |
| RAG generation | Llama | 7B | Adequate for RAG. Faster than 70B. |
| General purpose | Llama 3 | 8B-70B | Solves most problems. Clean license. |
The Model Download Reality
One more practical thing. These models live on Hugging Face. You download them as GGUF files (quantized) or full-precision versions.
A 7B model GGUF is typically 4-5GB. A 70B model GGUF is 35-45GB depending on quantization.
That's a lot of disk space and download time. Factor that into your planning.
If you're using Ollama or similar tools, they handle the download for you. If you're doing this manually, you need disk space and patience.
What's Changing Fast
Model releases happen constantly. New models appear regularly. Performance gaps close. The ranking I've given you is accurate as of now, but "now" is volatile.
Within 6 months, there might be new models that change everything. Within a year, definitely.
I'm not telling you this to discourage you. I'm telling you because it matters to know that what's optimal today might not be optimal in 6 months. Choose models that have community support and active development.
Llama, Mistral, and Qwen all have that. DeepSeek does too. Smaller projects might disappear or go unmaintained.
Next Steps
You now have enough information to pick a model. My suggestion is to try two or three.
Install Ollama. Download Llama 8B, Mistral 7B, and one other model based on your use case. Run them locally. See how they feel. That's the best way to actually understand the tradeoffs.
Don't overthink it. Download one. See what you think.
In Part 2, we'll talk about hardware, quantization, and how to actually run these models efficiently. In Part 3, we'll cover production deployment patterns.
For now, just pick. You probably know more than you think you do.
Comments
Join the discussion on GitHub.