Skip to content
,
Open-source AI explained · Part 8

Open-weight vs open-source AI models: what a model license really allows

13 min read
Open-weight, open-source, or free to use: what an AI model license really allows

Before you tell your legal team an AI model is “open source,” read its license, because the download button does not give you permission to use it at work. People use “open” for three different things: you can download the model, you can see how it was built, or it simply costs nothing. A free chat website is a fourth thing that matches none of them.

Say you tick “Yes” on your company’s legal form next to “Is the software open source?” On Thursday you downloaded a Llama model from Meta to your laptop to help your team draft 140 help-center replies from customer tickets. On Friday your lawyer posts a 14-page pack with Meta’s license, its list of banned uses, and a rule that anything you ship with the model must say “Built with Llama.” On Tuesday you had also pasted three real tickets into a free Llama chat website. One word, “open,” covered three different facts, plus a website that matched none of them.

This post is the work version. It gives you three sentences to put on a ticket and shows how to avoid the free-chat-box trap. Re-check every license document the week you download, because they change. Treat this as homework for a ticket, and not as legal advice.

Three words that are not synonyms

Write three separate sentences. You can download the weights (the downloadable model files). The training recipe is open. You may use it at work under that license. Llama-style licenses usually cover the first sentence with extra rules attached, and they do not meet the definition of open source from the Open Source Initiative (OSI), the nonprofit that maintains that definition. A true open-source project such as llama.cpp is a separate thing from the weight file that you load into it. A free ChatGPT-like site fits none of the three. Fill in a license scan, then send it to whoever signs contracts.

Three sentences that are not synonyms

Four kinds of claim: download the weights, the recipe is open, you may use it at work, and a free chat UI that is none of those
Four kinds of claim: download the weights, the recipe is open, you may use it at work, and a free chat UI that is none of those

Hallway talk mashes these into the single word “open.” Write them as separate lines, or you will fill in the legal form wrong.

  1. You can download the weights. Weights are the finished numbers a model learned, often stored in a file format called GGUF. You can run them on a machine you control, if the license lets you.
  2. The training code and data are open. Someone published the recipe under terms that match open-source software, along with enough data information that a skilled person could rebuild something equivalent. The Open Source Initiative’s AI definition describes this second case and not the first.
  3. You may use it at work, including commercially, under that license. That is a permission, and it is neither a price nor a download button.

A free chat website is a fourth kind of thing, which is a quota in a browser. You do not get the weights or the recipe. You get that vendor’s terms, which can change on a Tuesday. A Llama logo on the page does not move the file onto your disk. ChatGPT, Claude, Gemini, Grok, and a Groq playground all sit in this group when you have not signed a model license at all. Groq is the hosted inference (running a trained model to get answers) company, spelled with a q, and it is not xAI’s Grok.

ClaimLlama-style releaseTrue OSS repo (llama.cpp, some research stacks)Free ChatGPT-like site
Download the weightsUsually yes, under the community license that weekllama.cpp is source, not Meta’s weights. OLMo-class stacks may publish weights too.No. You type in a box.
Training code and data are openUsually no. OSI: finished numbers are not open source AI.Repo code is often Apache 2.0 or MIT. That does not cover a Llama file next to it.No.
You may use it at workMaybe. License plus acceptable use policy plus extra commercial terms. Counsel reads the PDF.Apache or MIT on that repo is a real software license. Still read the model license if you load weights.Vendor terms. Not a model license.
Who sits in the middleNobody if you stay local. A host if you used a playground or API.Nobody for the code clone. A host if you then call Groq or Together.Always a host. The prompt leaves.

Rule of thumb: If you cannot paste the license URL in the ticket, you cannot write “open source” in the title. Send the license document to whoever signs contracts. This post is homework, not legal advice.

Open-weight: the file you can download

Weights are the numbers that a training run learned. When you type an Ollama pull, you get that pile of numbers, shrunk to fit a laptop. You do not get Meta’s training data, and you cannot rerun the original training from the file. The OSI page on open weights puts it bluntly. Sharing the final parameters is more transparent than a closed API, and it is still not the preferred form for modifying an AI system.

Llama-style licenses live in this category. Start at llama.com/llama-downloads (checked in August 2026) and follow it to the current community license. The grant is limited: you may use, copy, modify, and distribute the Llama materials, with strings attached. The Llama 3.1 community license, dated 23 July 2024 on Meta’s developer site, is a useful example. It is a custom agreement and not Apache 2.0, and the OSI has said Meta’s Llama license is still not open source. Believe the license document and not the keynote.

  • Acceptable use is included by reference. Your 14 pages were the Acceptable Use Policy plus the license plus a use guide, printed because counsel does not accept a Hugging Face badge as proof.
  • On the 3.1 text, if your products (or your affiliates’) had more than 700 million monthly active users on the release date, you must request a separate license, which Meta may grant at its sole discretion. A 9-person team will not hit that number, but legal still wants the clause on the record.
  • If you distribute anything, you need “Built with Llama” on a related site, screen, or docs page, plus a Notice file, plus naming rules if you train another model from the outputs.
  • If you breach the terms, you must delete the materials. The field-of-use bans in the Acceptable Use Policy are how “we downloaded it, so we’re fine” falls apart in a review.

Llama is a licensed download. So say “open weights under the current Llama community license” and attach the URL. That sentence survives a legal review.

Open-source software: the recipe under a real license

Open-source software, in the OSI sense, is source code under a license that lets you use, study, modify, and share it for any purpose, with no ban on particular fields of use. Apache 2.0 and MIT, two short open-source licenses that allow almost any use, including in products, are the names people usually mean in a staff meeting. A custom community agreement with an Acceptable Use Policy is a different animal, even when the slide uses the same adjective.

Two different things get mixed together on the same laptop. The first is the runner, which is the program that loads a model. llama.cpp is MIT-licensed, according to the LICENSE file in that repository (a project folder that tracks every change). Ollama and LM Studio have their own licenses, so read those too. Apache on the engine does not relicense the weight file you feed into it. Your folder had both, and question 7 has one checkbox for two licenses.

The second is the model itself, if anyone opened the recipe. The Open Source AI Definition 1.0 wants four freedoms (use, study, modify, share) for any purpose. It also wants the preferred form for making changes, which is data information, training and inference code, and parameters, all under OSI-approved terms. Saying “we trained on a large crawl” is not enough. Some research projects publish more of the recipe than a Llama download does, and the Allen Institute’s OLMo is the usual example, though you should re-check its card. They are still rare.

Hugging Face license tags are a hint and not a verdict. A tag of apache-2.0 is a claim you verify by opening the LICENSE file. A tag such as llama3.1, other, or a custom community name means you should stop and get the document. A nc marker in a Creative Commons tag means non-commercial, which is the opposite of sentence 3 for a company that wants to draft 140 macros. Date the card in the ticket.

Free to use is a price

Free beer is not a license. A free ChatGPT-like tab, a Claude or Gemini quota, or a Groq playground with a Llama badge costs you $0 today and hands you a hosted box. Closed weights stay closed. Open weights running on someone else’s graphics chips are still hosted, as the post on hosted versus downloaded models explained. Sentence 3 is whatever that site’s terms say, and it is not the Llama community license unless you also accepted that one separately.

Your Tuesday playground session felt identical to Thursday’s local replies, only faster. The ticket called both “open source Llama.” Legal asked which host saw the three sample tickets, and you had to rebuild a URL from your browser history. If the job is a public paragraph, a $20 closed plan from the AI products chooser is allowed to be the easier choice. If the job is 140 macros that might include customer wording, a free chat page is a host with a friendly face. The price did not answer the intake form.

Work use: license, acceptable use, and the host

Work use in four steps: open the license PDF, read acceptable use, name the host, send the pack to whoever signs contracts
Work use in four steps: open the license PDF, read acceptable use, name the host, send the pack to whoever signs contracts

Sentence 3 is the one companies need, and it takes three reads and not one adjective. First, name the license, whether that is Apache 2.0, MIT, the General Public License (GPL) from the GNU free-software project, Llama community terms, Gemma-style terms, or a non-commercial Creative Commons license. Write down the URL and the date. Then look for user caps, attribution rules, share-alike terms, and any line that says “request a license from us.” If the file is 14 pages, that is useful data. If you cannot find a file, you do not have a yes.

Next, read the acceptable use terms. Llama’s Acceptable Use Policy (the 3.1 version on Meta’s developer site is the example here) lists prohibited uses such as certain crimes, unlicensed practice of law or medicine, collecting sensitive personal data without rights, weapons, critical infrastructure, deception, and undisclosed dangers. Other model families bury similar lists in use policies or model cards. Attach the file. A help-center macro project can still trip a line about professional advice or personal data if tickets include health or credit details, which is why counsel exists.

Then name the host. If Groq, Together, Fireworks, OpenRouter, or a vendor chat sits in the middle, you have two contracts, the host’s terms and the model license. A local Ollama setup is one contract, covering the model plus the app, and only if you did not switch on a cloud model. Fill in a scan and then stop talking. Whoever signs vendor paperwork gets the pack, because a blog post does not clear a hospital, a bank, or a 140-macro launch.

Below is a checklist you can copy. It prints a hallway sentence, and it does not sign anything.

# license_scan.py
# Fill from the PDF and the card this week. Not legal advice.
from datetime import date
scan = {
    "model_or_repo": "llama3.1:8b",
    "card_url": "",
    "license_url": "",
    "read_on": date.today().isoformat(),
    "weights_downloadable": True,            # sentence 1
    "license_name": "Llama 3.1 Community",   # Apache-2.0 / MIT / Community / NC
    "osi_approved_software_license": False,  # Apache/MIT/GPL on THIS artifact
    "training_code_public": False,           # sentence 2
    "training_data_or_disclosure": False,
    "field_of_use_or_aup": True,             # extra rules
    "user_cap": "700 million MAU clause, check current PDF",
    "host_in_the_middle": "playground Tuesday; local Thursday",
    "host_terms_url": "",
    "counsel_has_the_pack": False,           # sentence 3 is theirs
}
def hallway(s):
    if not s["weights_downloadable"]:
        return "Closed or hosted-only. Do not write open source."
    if s["field_of_use_or_aup"] or s["user_cap"]:
        return "Open weights with extra rules. Send the PDF."
    if not (s["training_code_public"] and s["training_data_or_disclosure"]):
        return "Open weights. Not the OSI AI bar."
    if s["osi_approved_software_license"]:
        return "Closer to open source. Still send the PDF."
    return "Recipe looks open; license name is still required on the slide."
print(hallway(scan))
print("Counsel pack:", scan["license_url"], scan["host_terms_url"] or "no host")

That code produces one sentence for the ticket, plus a reminder that a True in your editor is not a signature. The table below shows what a filled scan looks like for your macro job. The earlier post on reading a model card walks through the model card fields so you can find those URLs without hunting.

A worked example: the 14-page pack

The job was to draft 140 help-center macros from recent tickets, keep customer wording off ChatGPT, and ship the macros in the product. The slide said, “we’ll use open source Llama.” The machine was a laptop with a local pull and, earlier, a free playground. Counsel’s pack ran 14 pages. Here is the scan you should have attached instead of a Yes on question 7.

LineWhat you told the formWhat was true when counsel replied
Open source?YesOpen weights under a community license. OSI would not call that open source.
Sentence 1, weightsImplied by the downloadTrue for Thursday’s file. False for Tuesday’s playground.
Sentence 2, recipeNot askedFalse. No training set, no full recipe.
Sentence 3, work useImplied by “open source”Unknown until counsel reads acceptable use policy, user cap, attribution, and whether macros in the product count as distribution.
HostNot on the formA playground saw three tickets. Local pull did not erase that paste.
Runner vs weightsOne checkboxllama.cpp or Ollama may be OSS. The GGUF is still Llama’s license.

The fix is a boring ticket with three sentences, two URLs (the license and the host terms, if any), the card, and the date. Macros that quote customers wait until counsel says go, or a person drafts them. A closed work chat can still be the right tool for public help copy, and the post on when closed chat is simply easier covers that case.

Free, open, and open-weight are three claims

  • Writing “open source” because you downloaded a file.
  • Writing “open source” because llama.cpp is MIT-licensed, while the weights are Llama.
  • Writing “free, so we can use it at work,” when a price is not a permission.
  • Treating a Groq or Together playground as the license, when Groq is not Grok and a playground is a host.
  • Skipping the Acceptable Use Policy because the Hub badge was green.
  • Giving legal a hallway verdict instead of the license document.
  • Pasting tickets into a free chat page, then pointing at the local file as if the paste never happened.

Label one card with all three

Pick one model you already named in a slide. Open the current license from the vendor or the Hub, and not from memory. Fill in the scan and save the license and any acceptable use policy as PDFs. Put the host name on the same note, or write “local only.” If this is a work machine, send that pack to whoever signs contracts. Next up is the post on reading a model card without getting lost. Desktop runners are covered in Run open models from scratch, and more learning paths live at Learn.

License, weights, price

  • Write three sentences, covering weights, recipe, and work use. A free chat page is none of them.
  • Llama-style licenses are usually open weights with extra rules. Attach the current license from the download page.
  • Read the acceptable use terms, name the host, and send the pack to whoever signs. Do not check Yes on question 7 just because the file landed on your disk.

Series notes

This is Part 8 of Open-source AI explained (series code OS7b). Previous: when a closed chat is simply easier. Next: reading a model card without getting lost. Related: what open means, hosted vs download, and privacy paste test.

Sources

Research and further reading used for this article. Licenses change; open the copy that applies to the file in your hand.

Written by

Jose S

Founder & Lead Analyst · Analytics Made Simple

Hands-on data strategist, analytics engineering lead, and educator. Writing practical, no-fluff guides to help everyday teams, analysts, and engineers master SQL, AI systems, and modern data architectures.

Keep going

Same lessons in your feed

Short diagrams, hooks, and weekly tutorials on Substack, Instagram, X, and Facebook.

Google Search Prefer our practical guides in Google Search & Top Stories: