You have something worth uploading sooner than you think
People assume publishing on the Hub means releasing a foundation model. Almost nothing on it is that. Things that are genuinely useful and need no GPU to produce:
- Four hundred labelled examples in a language the Hub barely covers.
- An evaluation set for a task in your industry — thirty real invoices with the correct fields, say.
- A Space that chains two existing models into one tool that did not exist.
- A converted format: a GGUF or ONNX build of a model that only ships PyTorch weights.
- A LoRA adapter, which is a few tens of megabytes rather than a few gigabytes.
Each of these is somebody's afternoon and somebody else's month.
Three ways up
The website. Create a new model, dataset or Space and drag files into the browser. This works from a phone for small files, and it is the right route the first time, because you see what the interface expects.
The command line, for anything larger or repeated:
hf auth login
hf upload my-name/marathi-support-tickets ./data --repo-type=datasetFrom the library you are already in. Most Hugging Face libraries have a push_to_hub() that creates the repository and uploads in one call at the end of a training script.
Create it private first. Get it working, write the card, then flip it to public in Settings when you are ready. There is no penalty for this and it removes the pressure that makes people publish half-finished things.
The front matter that makes it findable
The YAML block at the top of README.md is what search, filters and the Hub's own linking read. Without it your work exists and nobody finds it:
---
license: apache-2.0
language:
- mr
- en
base_model: openai/whisper-small
pipeline_tag: automatic-speech-recognition
tags:
- speech
- marathi
---base_model is the one people forget, and it works in both directions — your repository appears on the parent model's page under its fine-tunes, which is how strangers find you.
The card a stranger can act on
Five things, and a card with all five is better than most of what is on the Hub:
- What it does, in one sentence, at the top.
- A code block they can paste that runs as written. Test it in a clean environment. A snippet with an undeclared import is the commonest defect on the Hub.
- What it was built from — the base model, the data, roughly how much and from where.
- What it is bad at, named specifically. Not *may produce inaccurate output*, but *word error rate roughly doubles on speakers under twenty*, or *only tested on invoices from two vendors*. You will be right, it costs you nothing, and it saves the next person a week.
- The licence and any obligation attached to it.
Choosing a licence on purpose
- Apache-2.0 or MIT for maximum reuse. Apache adds an explicit patent grant, which is why organisations often prefer it.
- CC-BY-4.0 for data where you want credit.
- CC-BY-SA if you want derivatives to stay open, accepting that this makes some commercial adoption impossible. That is a choice, not an accident — make it knowingly.
- OpenRAIL variants add use restrictions, and are common on generative models.
And name things honestly. Open weights is not the same as open source. Downloadable weights under a licence with use restrictions is a real and valuable thing, and it is not open source under the Open Source Initiative's definition — whose 2024 definition for AI also asks for meaningful information about the training data, which most released models do not provide. Both categories are worth having. Calling one by the other's name is how the word stops meaning anything. /learn/open-models goes further.
What you cannot take back
Once something is public, people clone it. Deleting the repository does not delete the copies, and mirrors of the Hub exist. So the decisions that matter happen before the first push, not after:
- Is there personal data in this, and did those people agree.
- Is any of it a client's, or under an agreement.
- Is there a face or a voice in it belonging to someone who did not consent to being in a dataset.
- If you promise a takedown route in the card, is it a promise you can actually keep.
If a dataset contains people, say in the card how someone asks to be removed, and mean it.
Do this now
Publish one small real thing this week. Two hundred rows, a card with all five sections, a licence you chose deliberately, a limitation stated plainly. It takes about an hour, and it is the whole difference between having used the Hub and being on it.
Before you move on