🚀 Optimized Download Experience
⚡ This release significantly improves the file download experience by making it faster and cleaning up the terminal output.
snapshot_download is now always multi-threaded, leading to significant performance gains. We removed a previous limitation, as Xet's internal resource management ensures we can parallelize downloads safely without resource contention. A sample benchmark showed this made the download much faster!
Additionally, the output for snapshot_download and hf download CLI is now much less verbose. Per file logs are hidden by default, and all individual progress bars are combined into a single progress bar, resulting in a much cleaner output.
- Multi-threaded snapshot download by @Wauplin in #3522
- Compact output in
snapshot_downloadandhf downloadby @Wauplin in #3523
Inference Providers
🆕 WaveSpeedAI is now an official Inference Provider on Hugging Face! 🎉 WaveSpeedAI provides fast, scalable, and cost-effective model serving for creative AI applications, supporting text-to-image, image-to-image, text-to-video, and image-to-video tasks. 🎨
import os
from huggingface_hub import InferenceClient
client = InferenceClient(
provider="wavespeed",
api_key=os.environ["HF_TOKEN"],
)
video = client.text_to_video(
"A cat riding a bike",
model="Wan-AI/Wan2.2-TI2V-5B",
)More snippets examples in the provider documentation 👉 here.
We also added support for image-segmentation task for fal, enabling state-of-the-art background removal with RMBG v2.0.
import os
from huggingface_hub import InferenceClient
client = InferenceClient(
provider="fal-ai",
api_key=os.environ["HF_TOKEN"],
)
output = client.image_segmentation("cats.jpg", model="briaai/RMBG-2.0")- [inference provider] Add wavespeed.ai as an inference provider by @arabot777 in #3474
- [Inference Providers] implement
image-segmentationfor fal by @hanouticelina in #3521
🦾 CLI continues to get even better!
Following the complete revamp of the Hugging Face CLI in v1.0, this release builds on that foundation by adding powerful new features and improving accessibility.
New hf PyPI Package
To make the CLI even easier to access, we've published a new, minimal PyPI package: hf. This package installs the hf CLI tool and It's perfect for quick, isolated execution with modern tools like uvx.
# Run the CLI without installing it
> uvx hf auth whoami⚠️ Note: This package is for the CLI only. Attempting to import hf in a Python script will correctly raise an ImportError.
A big thank you to @thorwhalen for generously transferring the hf package name to us on PyPI. This will make the CLI much more accessible for all Hugging Face users. 🤗
Manage Inference Endpoints
A new command group, hf endpoints, has been added to deploy and manage your Inference Endpoints directly from the terminal.
This provides "one-liners" for deploying, deleting, updating, and monitoring endpoints. The CLI offers two clear paths for deployment: hf endpoints deploy for standard Hub models and hf endpoints catalog deploy for optimized Model Catalog configurations.
> hf endpoints --help
Usage: hf endpoints [OPTIONS] COMMAND [ARGS]...
Manage Hugging Face Inference Endpoints.
Options:
--help Show this message and exit.
Commands:
catalog Interact with the Inference Endpoints catalog.
delete Delete an Inference Endpoint permanently.
deploy Deploy an Inference Endpoint from a Hub repository.
describe Get information about an existing endpoint.
ls Lists all Inference Endpoints for the given namespace.
pause Pause an Inference Endpoint.
resume Resume an Inference Endpoint.
scale-to-zero Scale an Inference Endpoint to zero.
update Update an existing endpoint.- [CLI] Add Inference Endpoints Commands by @hanouticelina in #3428
Verify Cache Integrity
A new command, hf cache verify, has been added to check your cached files against their checksums on the Hub. This is a great tool to ensure your local cache is not corrupted and is in sync with the remote repository.
> hf cache verify --help
Usage: hf cache verify [OPTIONS] REPO_ID
Verify checksums for a single repo revision from cache or a local directory.
Examples:
- Verify main revision in cache: `hf cache verify gpt2`
- Verify specific revision: `hf cache verify gpt2 --revision refs/pr/1`
- Verify dataset: `hf cache verify karpathy/fineweb-edu-100b-shuffle --repo-type dataset`
- Verify local dir: `hf cache verify deepseek-ai/DeepSeek-OCR --local-dir /path/to/repo`
Arguments:
REPO_ID The ID of the repo (e.g. `username/repo-name`). [required]
Options:
--repo-type [model|dataset|space]
The type of repository (model, dataset, or
space). [default: model]
--revision TEXT Git revision id which can be a branch name,
a tag, or a commit hash.
--cache-dir TEXT Cache directory to use when verifying files
from cache (defaults to Hugging Face cache).
--local-dir TEXT If set, verify files under this directory
instead of the cache.
--fail-on-missing-files Fail if some files exist on the remote but
are missing locally.
--fail-on-extra-files Fail if some files exist locally but are not
present on the remote revision.
--token TEXT A User Access Token generated from
https://huggingface.co/settings/tokens.
--help Show this message and exit.- [CLI] Add
hf cache verifyby @hanouticelina in #3461
Cache Sorting and Limiting
Managing your local cache is now easier. The hf cache ls command has been enhanced with two new options:
--sort: Sort your cache byaccessed,modified,name, orsize. You can also specify order (e.g.,modified:ascto find the oldest files).--limit: Get just the top N results after sorting (e.g.,--limit 10).
# List top 10 most recently accessed repos
> hf cache ls --sort accessed --limit 10
# Find the 5 largest repos you haven't used in over a year
> hf cache ls --filter "accessed>1y" --sort size --limit 5Finally, we've patched the CLI installer script to fix a bug for zsh users. The installer now works correctly across all common shells.
- Use hf installer with bash by @Wauplin in #3498
- make installer work for zsh by @hanouticelina in #3513
🔧 Other
We've fixed a bug in HfFileSystem where the instance cache would break when using multiprocessing with the "fork" start method.
🌍 Documentation
Thanks to @BastienGimbert for translating the README to French 🇫🇷 🤗
- i18n: add French README translation by @BastienGimbert in #3490
and Thanks to @didier-durand for fixing multiple language typos in the library! 🤗
- [Doc]: fix various typos in different files by @didier-durand in #3499
- [Doc]: fix various typos in different files by @didier-durand in #3509
- [Doc]: fix various typos in different files by @didier-durand in #3514
- [Doc]: fix various typos in different files by @didier-durand in #3517
- [Doc]: fix various typos in different files by @didier-durand in #3497
🛠️ Small fixes and maintenance
🐛 Bug and typo fixes
🏗️ internal
- Remove aiohttp dependency by @Wauplin in #3488
- Prepare for 1.1.0 by @Wauplin in #3489
- Fix type annotations in inference codegen by @Wauplin in #3496
- Add CI + official support for Python 3.14 by @Wauplin in #3483
- [Internal] Fix quality issue generated from
update-inference-typesworkflow by @hanouticelina in #3516
Significant community contributions
The following contributors have made significant changes to the library over the last release:
- @arabot777
- [inference provider] Add wavespeed.ai as an inference provider (#3474)
- @BastienGimbert
- i18n: add French README translation (#3490)
- @didier-durand

