Open weights vs closed APIs
"Open" is a spectrum, not a switch. What makes the local-AI scene possible is not philosophy โ it is that permissively licensed weights exist, so engines, quantizers, and UIs have something to target. Know the tiers before you build anything on top of a model.
The spectrum
| Tier | Licenses | Weights | Runs locally | Commercial use | Examples |
|---|---|---|---|---|---|
| Permissive | Apache-2.0, MIT | downloadable | yes | yes, essentially unconditional | most Qwen, OLMo, Mistral 7B, Mixtral, Phi |
| Community, capped | Llama Community License, Gemma Terms | downloadable | yes | yes, until the cap (Llama: 700M MAU) | Llama 3/4, Gemma 2/3 |
| Restricted open-weight | bespoke agreements | downloadable | yes | case-by-case | some labs' "research" releases |
| Closed | proprietary | no | no โ API only | per contract | OpenAI, Anthropic, Google frontier models |
Families drift across tiers over time โ a permissive release one version, a capped one the next โ so check per model, not per brand. The tier names here describe the license, not the quality: capped Llama and Gemma releases routinely out-rank permissive ones on benchmarks.
Weights are not data are not code
- Open weights: you get the parameters and the tokenizer. You can run, quantize, fine-tune, and redistribute them (within the license).
- Open source, strictly speaking: weights + training data + training code. Rare โ OLMo is the flagship effort; nearly everything else is open-weight only.
- The practical difference: open-weight models cannot be reproduced or fully audited; you trust the publisher's description. For running models locally, the weights are all you need.
- Training data and code, when published, live in separate repos (datasets, GitHub). Weights alone never tell you how the model was made.
- For trust, permissive โ audited: an Apache license says nothing about data provenance either. It says what you may do, not what was done.
Why the local scene runs on the permissive tiers
Every tool in this guide โ llama.cpp and its GGUF quants, desktop UIs, OpenAI-compatible local servers โ grew around downloadable weights, taking off with the first genuinely usable open 7B generation in 2023. Capped licenses still permit local use, which is why Llama-family models saturate the ecosystem despite not being open source in the strict sense. Permissive families get the deepest tooling simply because nobody has to read the terms first.
Gotchas to check before commercial use
- User caps: the Llama community license flips to a separate commercial agreement above 700M monthly active users. Irrelevant below that, but know it exists.
- Acceptable-use policies: Llama and Gemma ship usage policies that bind licensees โ restricted use categories apply even below the caps.
- Naming and branding: notices like "Built with Llama" and Gemma attribution requirements are license obligations, not suggestions.
- Regional and entity terms: some licenses exclude specific jurisdictions or sanctioned entities; ordinary export controls stack on top.
- Quantized mirrors inherit the base license: a community GGUF of a Gemma model carries Gemma terms. Read the base model's license, not just the repo you downloaded from.
Check a license in 30 seconds
- Open the model repo's LICENSE file โ not the README summary, the actual license text.
- If the repo is a quant/variant, click through to the base model it was quantized from and read that license instead.
- Search the text for: "monthly active users", "revenue", "acceptable use", "attribution", "jurisdiction".
- Decide only after step 3 โ most caps never matter for small products, but you should know they are there.
Anatomy of a Hugging Face repo name
Qwen/Qwen2.5-14B-Instruct
โ โ โ โโ stage/variant: instruct, chat, base, coder, vl, ...
โ โ โโ size: parameter count
โ โโ family + version
โโ organization
community/Qwen2.5-14B-Instruct-GGUF
โโ quantizer's repo: same weights, repackaged format
filename: qwen2.5-14b-instruct-q4_k_m.gguf
family size stage quant tag
Reading order: organization / family-version-size-stage. Original repos hold safetensors; community quantizers publish GGUF and other variants โ the weights are the publisher's, and the license travels with them (model formats).
Judging repos in the wild:
- First-party orgs publish the originals; a handful of well-known community quantizers republish GGUF/AWQ variants of everything; unknown mirrors add no value and occasional surprises.
- Download counts and last-updated dates are decent health proxies โ a stale quant of a two-generations-old model is usually a dead end.
- When two repos claim the same model, take the one linked from the base model's page.
Practical stance
- Hobby and local use: nearly any open-weight license is fine โ you are running the model, not redistributing it.
- Shipping a product: Apache/MIT families save lawyer time; capped licenses are usually fine below the caps, but read the use policy once.
- Closed APIs: best raw frontier quality, zero local control, per-token pricing. A common hybrid: local models for volume, privacy, and latency; the API for the hard 5%.
- Redistributing weights is different from running them: shipping a GGUF inside your product is distribution โ check terms first.
- Some licenses attach conditions to model outputs or fine-tuned derivatives; none (as of this writing) claim your prompts, but read before selling generated content at scale.
Local weights vs API, side by side
| Dimension | Local open weights | Closed API |
|---|---|---|
| Privacy | everything stays on your machine | prompts leave it, per provider policy |
| Cost at volume | hardware once, then free | linear in tokens, forever |
| Cost at small scale | high up front | pennies |
| Latency | no network; TTFT can be subsecond | network + queue per request |
| Frontier quality | a step behind, closing | the reference point |
| Control | quantize, fine-tune, merge, pin a version | none โ models swap under you |
| Reliability | your GPU is your limit | provider uptime and rate limits |
| Knowledge cutoff | printed on the release card | provider updates models silently |
| Model lifetime | yours forever โ the file cannot be revoked | deprecations announced, then enforced |
When local wins: privacy requirements, offline use, huge token volume, latency-sensitive UX, reproducibility (pin the exact weights). When the API wins: the hardest 5% of tasks, zero setup, elastic scale. Most serious setups end up hybrid.
How to choose concretely: choosing. What each family brings: model families.
Related: model families ยท choosing ยท model formats ยท engines