logo

Hugging Face Model Hub

Hugging Face Hub 是 AI 领域的 "GitHub"。它不仅是托管模型的地方,还是一个完整的机器学习协作平台,支持模型、数据集和演示应用的共享与发现。

核心组成部分

1. Models (模型)

托管了超过 50 万个预训练模型,涵盖文本、图像、音频、视频、多模态等所有 AI 领域。

  • 搜索与发现:支持按任务(Task)、框架(PyTorch/TensorFlow/JAX)、语言、库(Transformers/Diffusers)进行过滤。
  • 模型卡片 (Model Card):包含模型的训练数据、局限性、使用示例等关键信息。

2. Datasets (数据集)

提供海量的高质量训练数据,支持各种机器学习任务。

  • 流式加载:无需下载整个数据集即可开始训练或预览。
  • 查看器:直接在浏览器中查看数据样本。

3. Spaces (空间)

用于展示和分享 AI 演示应用。支持 Gradio、Streamlit 和 Docker。

  • 即时体验:无需配置环境即可在线运行 AI 模型。
  • 免费托管:提供基础的 CPU 环境免费托管。

使用 huggingface_hub 库

通过 Python SDK 可以自动化地与 Hub 进行交互。

安装与登录

pip install huggingface_hub
huggingface-cli login

编程方式下载模型

from huggingface_hub import snapshot_download

# 下载整个仓库到指定目录
snapshot_download(
    repo_id="BAAI/bge-small-zh-v1.5",
    local_dir="./my_local_model",
    revision="main"
)

# 仅下载特定文件
from huggingface_hub import hf_hub_download
file_path = hf_hub_download(repo_id="gpt2", filename="config.json")

上传模型

from huggingface_hub import HfApi

api = HfApi()

# 创建仓库
api.create_repo(repo_id="username/my-awesome-model", exist_ok=True)

# 上传整个文件夹
api.upload_folder(
    folder_path="./my_model_files",
    repo_id="username/my-awesome-model",
    repo_type="model"
)

Git LFS (Large File Storage)

Hub 的底层是基于 Git 的,大文件(如模型权重)使用 Git LFS 管理。

常用命令

# 克隆仓库
git lfs install
git clone https://huggingface.co/username/repo-name

# 提交大文件
git add my_model.bin
git commit -m "Add model weights"
git push

组织与协作

  • Organizations:允许团队共同管理模型和数据集。
  • Gated Models:某些模型(如 Llama 系列)需要申请权限并同意条款后才能下载。

最佳实践

  1. 善用版本控制:利用 Git 的 tag 和 branch 管理模型的不同迭代版本。
  2. 完善 Model Card:详细的文档不仅能帮助他人,也能作为自己的实验记录。
  3. 缓存管理:默认缓存路径通常在 ~/.cache/huggingface,如果磁盘空间不足,可以通过环境变量 HF_HOME 修改。

提示:Model Hub 是目前最活跃的 AI 社区,每天都有前沿模型首发,建议定期关注 Trending Models

Hugging Face 模型库指南
AI Engineer

Hugging Face 模型库指南

Hugging Face 是最大的 AI 模型社区,提供数万个预训练模型和便捷的部署工具。

Hugging Face 模型库指南Model Hub

Hugging Face Model Hub

Hugging Face Hub 是 AI 领域的 "GitHub"。它不仅是托管模型的地方,还是一个完整的机器学习协作平台,支持模型、数据集和演示应用的共享与发现。

#核心组成部分

#1. Models (模型)

托管了超过 50 万个预训练模型,涵盖文本、图像、音频、视频、多模态等所有 AI 领域。

  • 搜索与发现:支持按任务(Task)、框架(PyTorch/TensorFlow/JAX)、语言、库(Transformers/Diffusers)进行过滤。
  • 模型卡片 (Model Card):包含模型的训练数据、局限性、使用示例等关键信息。

#2. Datasets (数据集)

提供海量的高质量训练数据,支持各种机器学习任务。

  • 流式加载:无需下载整个数据集即可开始训练或预览。
  • 查看器:直接在浏览器中查看数据样本。

#3. Spaces (空间)

用于展示和分享 AI 演示应用。支持 Gradio、Streamlit 和 Docker。

  • 即时体验:无需配置环境即可在线运行 AI 模型。
  • 免费托管:提供基础的 CPU 环境免费托管。

#使用 huggingface_hub 库

通过 Python SDK 可以自动化地与 Hub 进行交互。

#安装与登录

bash
pip install huggingface_hub huggingface-cli login

#编程方式下载模型

python
from huggingface_hub import snapshot_download # 下载整个仓库到指定目录 snapshot_download( repo_id="BAAI/bge-small-zh-v1.5", local_dir="./my_local_model", revision="main" ) # 仅下载特定文件 from huggingface_hub import hf_hub_download file_path = hf_hub_download(repo_id="gpt2", filename="config.json")

#上传模型

python
from huggingface_hub import HfApi api = HfApi() # 创建仓库 api.create_repo(repo_id="username/my-awesome-model", exist_ok=True) # 上传整个文件夹 api.upload_folder( folder_path="./my_model_files", repo_id="username/my-awesome-model", repo_type="model" )

#Git LFS (Large File Storage)

Hub 的底层是基于 Git 的,大文件(如模型权重)使用 Git LFS 管理。

#常用命令

bash
# 克隆仓库 git lfs install git clone https://huggingface.co/username/repo-name # 提交大文件 git add my_model.bin git commit -m "Add model weights" git push

#组织与协作

  • Organizations:允许团队共同管理模型和数据集。
  • Gated Models:某些模型(如 Llama 系列)需要申请权限并同意条款后才能下载。

#最佳实践

  1. 善用版本控制:利用 Git 的 tag 和 branch 管理模型的不同迭代版本。
  2. 完善 Model Card:详细的文档不仅能帮助他人,也能作为自己的实验记录。
  3. 缓存管理:默认缓存路径通常在 ~/.cache/huggingface,如果磁盘空间不足,可以通过环境变量 HF_HOME 修改。

提示:Model Hub 是目前最活跃的 AI 社区,每天都有前沿模型首发,建议定期关注 Trending Models

System Design

系统设计必备:核心概念 + 经典案例

快速掌握取舍与设计套路,备战系统设计面试。

进入 System Design →

相关路线图