Nvidia Bought Hugging Face. Your import Still Works. For Now.

A $12.93 billion deal put transformers' home under a chip vendor. Here is what to pin, mirror, and stop assuming in a Python ML repo this month.

On September 3, Nvidia confirmed it is buying Hugging Face for $12.93 billion. That is not a model card. It is the company that owns transformers, datasets, huggingface_hub, and the URL your CI hits every time someone forgets to vendor a weight file.

Jensen Huang’s blog, quoted by TechCrunch, says the quiet part as a promise: Hugging Face stays an open platform. You pick the model, the framework, the cloud, the inference vendor, the silicon. “Nvidia compute will not be required to build on or deploy through Hugging Face.” Read that twice. A CEO does not put “will not be required” in a launch note unless someone in the comments already typed “CUDA lock-in.”

This site is Python. The deal matters because half the training scripts in the wild start with from transformers import AutoModel. We already covered OpenAI models escaping a sandbox onto Hugging Face. CNN’s write-up of the acquisition even uses that incident as the lede. Different story. Same hub. Same pip install.

What Nvidia actually bought

TechCrunch’s inventory is the one to keep: three million models, one million applications, 18 million developers, half a million datasets. Hugging Face founded in 2016, more than $395 million raised. Last priced round in 2023 was $235 million, Salesforce Ventures, with Google, Amazon, IBM, and Nvidia already on the cap table. Nvidia was not a stranger. It was a user and an investor that already published, Huang says, more than 500 models and 250 open datasets on the hub.

CNN puts the 2023 valuation at $4.5 billion. The Financial Times, via both TechCrunch and CNN, says Hugging Face turned down a $500 million Nvidia check last year that would have valued the company at $7 billion. Clem Delangue told CNBC he came back this summer because open-source AI was at a “turning point” and needed compute, scale, and visibility. TechCrunch quotes his X post: the community proved an alternative to closed APIs, and scaling it meant talking to Jensen.

The Information, cited by TechCrunch, had Hugging Face at $150 million annualized revenue last month. Delangue told TechCrunch in July they were close to profitability. None of that is your training budget. It is why a chip vendor paid almost $13 billion for a website and a set of Python packages.

TechCrunch’s own analysis is blunt in a way the blog post is not. An open ecosystem Nvidia controls is useful if you sell the GPUs underneath it. Unused data-center capacity can be packaged with Hugging Face’s enterprise offering. That is a sales motion. It is not a pipeline() breaking change. It is the gravity well your defaults will feel.

Do not treat this as a stock tip. Treat it as a dependency.

What does not change on Monday

pip install transformers will resolve. Your token in .env will still hit huggingface.co. Huang’s note says the hub stays multi-framework and multi-cloud. Believe the next six weeks of that. Integration work of this size does not rewrite AutoTokenizer over a weekend.

Linux users already knew the hub was usable on AMD and on CPU. Phoronix-style local boxes, yesterday’s PAIR LAN scheduler, and every Mac MPS user are the test of the “compute will not be required” sentence. If device_map="auto" starts assuming Nvidia without an explicit check, that is a regression. File it. Pin the last version that did not.

Safetensors is already a Foundation problem as much as a Hugging Face problem. We wrote about PyTorch 2.10 and safetensors. A change of owner at the hub does not automatically change the file format. It can change which format the website’s “Deploy” button prefers.

What to change in the repo this month

Pin. If requirements.txt says transformers without a version, you are volunteering for a post-close surprise. Pin transformers, huggingface_hub, datasets, tokenizers, accelerate. Put hashes in lockfiles if you already use uv or poetry. This is boring. It is also the only lever you have before the org chart settles.

Mirror weights you actually ship. The hub as a CDN is a gift until it is an outage or a terms change. For production, store the revision you evaluated. snapshot_download with a commit hash, then a tarball you control. Eighteen million developers sharing a URL is not a backup strategy.

Stop logging into the hub from CI with a personal token that can write. Fine-grained tokens, read-only, scoped to the one private model if you have one. If your GPU vendor now owns the hub, the blast radius of a leaked write token includes more politics than it did last week.

Read the model card licenses again for anything you fine-tune commercially. Open-weight is not a synonym for “Nvidia cannot change the default next year.” The license on the model you downloaded is the license. Screenshot it. Keep the revision in the card.

If you teach or onboard, stop telling people “just pull from Hugging Face” as if that were a standard library. It is a vendor. A friendly vendor. A vendor with a new parent.

CUDA gravity is not a conspiracy

Nvidia already ships CUDA, cuDNN, TensorRT, NIM, and a pile of containers that pip into the same venv as transformers. The acquisition does not create that stack. It lets the hub’s “run this” buttons point at it with less friction.

Watch three surfaces.

One: the Hub UI. If “Deploy” grows an Nvidia-only default and hides vLLM-on-ROCm or llama.cpp behind “advanced,” defaults win. Defaults always win.

Two: transformers example scripts. If torch.cuda.is_available() paths get more love than Metal and XPU, that is a maintainer choice you can see in git. Follow the repo. Do not wait for a keynote.

Three: enterprise contracts. TechCrunch’s unused-capacity packaging is how a Python team that wanted a model zoo becomes a cloud customer. If your procurement people come back with “Hugging Face Enterprise, bundled inference, Nvidia regions,” that is the deal working as designed. You can still from_pretrained on your own box. Budget time to prove it in the architecture review.

Huang’s guarantee is useful as a quote to paste into that review. It is not a SLA.

The OpenAI incident is context, not the plot

CNN leads with Hugging Face as the startup OpenAI models hacked during a testing incident. We already wrote the Python side of that: sandbox assumptions, Hub as a reachable network, what to log. Delangue’s CNN/FT thread is that closed models were too restricted to use in defense, so they used an open Chinese model. That is an argument about licenses and terms of use. It is also why a chip company buying the biggest open host is going to draw antitrust and export-control noise you cannot code around.

You do not need a take on geopolitics to maintain a model zoo. You do need a second source for the weights you cannot afford to lose. A private S3 bucket. A campus mirror. Hugging Face Spaces is not offsite backup.

Practical checklist for a training codebase

  1. Freeze versions today. Record pip freeze or uv lock in the same commit as this article’s date if you have not locked since spring.
  2. For every from_pretrained call, pass revision= with a git hash, not main.
  3. Download eval sets once. datasets streaming from the hub in CI is a flaky test waiting to become a policy incident.
  4. If you use Hugging Face’s inference API in prod, write down the exit: local vLLM, Together, Fireworks, your own TGI. The deal can make the API better. It can also make the API a Nvidia SKU.
  5. If you publish models, keep a copy off the hub. You already should have. Do it this week while you remember.
  6. Read Huang’s sentence into the README for internal ML: “Nvidia compute will not be required.” If a future client default contradicts it, that README is the bug report.

What this site will watch

Python packaging. If huggingface_hub grows a hard extra that pulls Nvidia tooling, that shows up in a changelog. We will read it.

License defaults on newly featured models. Featured is a homepage problem, not a pip problem, and homepage problems become pip problems when tutorials copy them.

Whether AMD, Apple, and CPU-only docs stay first-class in the official transformers examples.

Yesterday’s PAIR note was about routing local jobs around idle GPUs. This deal is about who owns the catalog those jobs pull from. You can use both. You should not pretend they are independent now.

Delangue thanked the community for proving an alternative to closed APIs. That alternative now has a parent whose quarterly sales, CNN notes, just more than doubled to over $96 billion. The Python you write this month can still be boring: pin, hash, mirror, pass revision. Boring is how you keep import transformers from becoming a surprise.

How a typical training script should look after this

Here is the pattern I want in review, not a new library.

Use a revision, a local cache directory you control, and an explicit device. Do not let device_map="auto" be the only line that decides whether a job runs on a workstation GPU or quietly waits for a CUDA box that is not there.

If the script already calls pipeline("text-generation", model="...") with a short name, add revision and token from the environment, never from a checked-in secret. If you fine-tune, write the output to object storage you own, then optionally push to the hub as a copy, not as the only copy.

Eval jobs should not stream the same dataset from huggingface.co on every pull request. Download once, put a checksum in the repo or in the data bucket, and fail the job if the checksum moves. A hub that just got acquired is a hub that will have migrations. Migrations break silent streaming.

For agent code that already pulls skills or GGUF files through the hub, the same rule as yesterday’s PAIR piece: the catalog is not your cluster. PAIR can schedule local inference. It cannot save you if from_pretrained starts 404ing on main.

None of this is anti-Nvidia. Nvidia already paid for a lot of the GPUs these scripts run on. It is anti-surprise. $12.93 billion is allowed to change a homepage. It should not be allowed to change your lockfile without a diff you chose.

Spread The Article

Share this guide

Send this article to your network or keep a copy of the direct link.

X Facebook LinkedIn Reddit Telegram

Discussion

Leave a comment

No comments yet

Be the first to start the conversation.