- 开发工具
- CLI
- 机器学习
【免费下载链接】huggingface_hub
The official CLI and Python client for the Hugging Face Hub.
本指南以官方文档 docs/source/fr/installation.md 为骨架,系统讲解huggingface_hub(Hugging Face Hub 的官方 Python 客户端与 CLI)的完整安装流程。你将掌握虚拟环境准备、pip / conda / 源码 / 可编辑(editable)四种安装方式、可选依赖的选择依据,以及安装后的功能验证方法与 Windows 平台已知限制,从而为后续下载模型、上传仓库、调用 Inference 服务打下可靠的环境基础。
环境要求:Python 3.10+
在开始安装之前,需要先确认本机的 Python 版本满足要求:huggingface_hub官方测试环境为Python 3.10+。这一要求在项目打包配置中同样明确写死——setup.py 中的python_requires=">=3.10.0"会在 pip 解析依赖阶段直接拦截过低版本的 Python,从构建层面保证安装环境的有效性。
另外需要注意,huggingface_hub的主代码位于src/huggingface_hub/目录(即 src 布局),运行时依赖包含click、filelock、fsspec、httpx2、packaging、pyyaml、tqdm、typing-extensions等核心库(见 setup.py),这些基础依赖会在 pip 安装时自动解析下载,无需手动处理。
使用 pip 安装(推荐)
官方强烈建议将huggingface_hub安装在一个Python 虚拟环境(virtual environment)中。虚拟环境可以让不同项目之间的依赖相互隔离,避免版本冲突——尤其是当你在同一个机器上同时维护多个 ML 项目时,这一点非常关键。
1. 创建虚拟环境
在项目目录下执行:
python -m venv .venv2. 激活虚拟环境
Linux 与 macOS:
source .venv/bin/activateWindows:
.venv\Scripts\activate3. 安装 huggingface_hub
从 PyPI 官方镜像安装(--upgrade确保获取最新稳定版本,同时会覆盖系统中可能存在的旧版本):
pip install --upgrade huggingface_hub安装完成后,可以跳到下文 安装验证 一节确认一切正常。
安装可选依赖:按需扩展功能
huggingface_hub的部分依赖是可选的(optional dependencies)——它们并非运行核心功能所必需,但缺少它们时,某些扩展功能将不可用。可以通过 pip 的 extras 语法一次安装多个可选组:
# 同时安装 MCP 与 PyTorch 相关的扩展依赖 pip install 'huggingface_hub[mcp,torch]'这些 extras 在 setup.py 中有完整定义,主要包括:
| 可选组 | 用途 | 具体内容(依据 setup.py) |
|---|---|---|
mcp | MCP(Model Context Protocol)相关功能 | mcp>=1.9.4, <2.0.0 |
fastai | fastai 框架特定功能 | toml、fastai>=2.4、fastcore>=1.3.27 |
torch | PyTorch 框架特定功能 | torch、safetensors[torch] |
hf_xet | 启用 Xet 高性能传输后端 | hf-xet>=1.6.0,<2.0.0 |
oauth | OAuth 设备登录相关功能 | authlib、fastapi、itsdangerous |
gradio | Gradio 集成 | gradio>=5.0.0、requests |
dev | 参与库开发 | 即all,聚合testing、quality、typing三组 |
其中dev组是面向贡献者的完整开发依赖,内部又分为:
testing:运行测试所需(pytest、pytest-cov、pytest-xdist、pytest-vcr、pytest-asyncio、pytest-rerunfailures、jedi、Jinja2等,见 setup.py);typing:类型检查所需(typing-extensions、types-PyYAML、types-tqdm等);quality:代码质量检查所需(ruff、mypy、libcst、ty)。
项目的测试配置集中在 pyproject.toml,其中定义了api、transfer、inference、xet、production、deprecated、git_lfs等 pytest marker,并预设了DISABLE_SYMLINKS_IN_WINDOWS_TESTS=1、HUGGINGFACE_CO_STAGING=1等测试环境变量——如果你要参与开发,安装dev组后即可直接运行这些测试套件。
从源码安装:尝鲜 main 分支
在某些场景下,你可能希望直接安装源码而不是稳定发布版:
- 你想使用
main分支上尚未正式发布的最新更新(例如某个 bug 在上一个正式版本发布后已被修复,但新版本尚未推出); - 你想测试一个尚未合并的新功能或 bug-fix。
直接从 GitHub 源码安装:
pip install git+https://github.com/huggingface/huggingface_hub指定分支安装(例如测试某个尚未合并的功能分支):
pip install git+https://github.com/huggingface/huggingface_hub@my-feature-branch需要说明的是,main分支虽然团队会尽量保持可用(大部分问题会在数小时到一天内解决),但并不保证绝对稳定。如果遇到问题,官方建议及时提交 issue 以便尽快修复。
可编辑安装(editable install):为贡献代码而设
如果你计划为huggingface_hub贡献代码,需要在修改代码后快速验证效果,可以使用可编辑安装。它会把克隆下来的仓库目录与 Python 库搜索路径链接起来,使代码改动即时生效,无需反复重装。
# 1. 先将仓库克隆到本地(请使用你方便的镜像/官方仓库地址) git clone <huggingface_hub 仓库地址> # 2. 进入仓库目录,使用 -e 标志安装 cd huggingface_hub pip install -e .安装完成后,Python 会在正常的库路径之外额外搜索你克隆下来的目录。例如,如果你的 Python 包通常安装在./.venv/lib/python3.13/site-packages/,那么现在 Python 也会查找你克隆的./huggingface_hub/目录。当前仓库采用 src 布局(代码位于src/huggingface_hub/,见 setup.py),可编辑安装会正确解析该布局,保证import huggingface_hub指向你的工作副本。
使用 conda 安装
习惯使用 conda 管理环境的用户,可以通过conda-forge频道安装:
conda install -c conda-forge huggingface_hub这种方式适合已经深度依赖 conda 生态、不希望混用 pip 与 conda 环境的场景。安装完成后同样建议执行下文的验证命令。
安装验证
无论采用哪种方式安装,都可以通过一次简单的 API 调用来确认huggingface_hub是否正常工作。下面的命令会从 Hub 拉取gpt2模型的元信息并打印:
python -c "from huggingface_hub import model_info; print(model_info('gpt2'))"输出大致如下:
Model Name: gpt2 Tags: ['pytorch', 'tf', 'jax', 'tflite', 'rust', 'safetensors', 'gpt2', 'text-generation', 'en', 'doi:10.57967/hf/0039', 'transformers', 'exbert', 'license:mit', 'has_space'] Task: text-generation这条命令背后调用的是HfApi.model_info方法(定义于 src/huggingface_hub/hf_api.py)。从源码看,该方法向{endpoint}/api/models/{repo_id}发起 HTTP 请求,支持revision、timeout、securityStatus、files_metadata、expand、token等可选参数——其中token默认为本地保存的访问令牌,私有模型只有在登录或显式传 token 时才能查询。gpt2是可公开访问的模型,因此无需认证即可返回上述元数据。如果命令成功打印出模型信息,说明安装、网络连通性与 Hub API 调用链路均已打通。
Windows 平台的已知限制
huggingface_hub的目标是跨平台运行(同时支持 Unix 系与 Windows 系统),但 Windows 上存在两个已知问题,需要特别注意:
1. 缓存系统依赖符号链接(symlink)
huggingface_hub的缓存系统依赖 symlink来高效缓存从 Hub 下载的文件(见 docs/source/en/guides/manage-cache.md 中的详细说明)。Windows 默认可能不允许创建 symlink,此时你需要:
- 开启开发者模式(Developer Mode),或
- 以管理员身份运行脚本。
如果 symlink 不可用,缓存系统仍然可以工作,但会退化为非优化模式:不再使用blobs/目录去重存储,而是直接把文件存入snapshots/目录,导致同一仓库的多个修订版本可能重复下载同一文件、占用更多磁盘空间。此时会显示一条警告提醒你处于降级模式。
也可以主动控制该行为:
- 设置环境变量
HF_HUB_DISABLE_SYMLINKS=1可强制使用无 symlink 缓存模式(例如在共享文件系统上); - 设置
HF_HUB_DISABLE_SYMLINKS_WARNING=true可关闭降级警告提示。
2. 特殊字符文件名
Hub 上的文件名可能包含 Windows 不允许的特殊字符(例如"path/to?/my/file"中的?)。Windows 对文件名的字符集限制更严格,会导致这类文件无法在 Windows 上正常下载。不过这种情况比较罕见;如果你认为某个文件应当可以正常下载却失败了,建议联系仓库所有者或向项目提交 issue 寻求解决方案。
下一步:安装完成之后
安装并验证成功后,可以继续深入使用:
- 配置环境变量:参考 docs/source/en/package_reference/environment_variables.md,了解
HF_HOME、HF_TOKEN、HF_ENDPOINT等关键变量的作用,尤其是 Windows 场景下用于控制 symlink 行为的两个变量; - 阅读入门指南:docs/source/en/guides/overview.md,从整体上把握下载模型、上传文件、管理缓存、调用 Inference 等功能模块的使用方式;
- 项目内置了完整的测试套件(见 tests 目录),如果你想确认自己环境中的安装行为是否符合预期,也可以在本机运行相关测试用例作为额外验证手段。
- 开发工具
- CLI
- 机器学习
【免费下载链接】huggingface_hub
The official CLI and Python client for the Hugging Face Hub.
相关推荐
huggingface_hub 安装完全指南:pip、conda、源码构建与 Windows 注意事项
huggingface_hub 安装完全指南:pip、conda、源码构建与 Windows 注意事项 本文围绕 Hugging Face 官方 Python
开发工具CLI机器学习huggingface_hub 安装完全指南:pip / conda / 源码安装与验证
huggingface_hub 安装完全指南:pip / conda / 源码安装与验证 huggingface_hub 是 Hugging Face Hub
开发工具CLI机器学习huggingface_hub 安装指南:pip / conda / 源码安装与可选依赖项详解
huggingface_hub 安装指南:pip / conda / 源码安装与可选依赖项详解 本指南完整介绍 Hugging Face 官方 Python 客
开发工具CLI机器学习
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考