跳转到内容

HuggingFace指南

Hugging Face 是全球领先的预训练模型、数据集与机器学习应用托管社区,为开发者提供了便捷的 NLP、CV 等多模态 AI 工具链。

Hugging Face 平台主要由以下三部分组成:

  • Models:用于托管、管理和下载各种预训练模型。
  • Datasets:用于管理和分享机器学习数据集。
  • Spaces:用于快速部署和展示机器学习 Demo,支持使用 Gradio 或 Streamlit 构建交互式界面。

3.1. Hugging Face Hub (模型仓库管理)

Section titled “3.1. Hugging Face Hub (模型仓库管理)”

使用 Python 包管理器安装 Hub 工具,并通过 CLI 进行身份验证:

Terminal window
python -m pip install huggingface_hub
huggingface-cli login
Terminal window
# 使用 HTTPS 克隆仓库
git clone https://huggingface.co/<your-username>/<your-model-name>
# 或者使用 SSH 克隆仓库
git clone git@hf.co:<your-username>/<your-model-name>
# 如果仓库存在大于 10MB 的文件,需要启用 Git LFS
git lfs install
# 如果存在大于 5GB 的文件,开启大文件支持
huggingface-cli lfs-enable-largefiles .
# 新增特定扩展名大文件的跟踪支持
git lfs track "*.your_extension"

Gradio 是一个开源 Python 库,只需增加几行代码即可为机器学习模型自动化生成美观的交互式 Web 页面,支持图像分类、超分辨率等多种输入输出格式。

Terminal window
pip install gradio

以下代码展示了如何利用 Gradio 快速搭建一个将输入图片转换为灰度图的 Web Demo:

import gradio as gr
import cv2
def to_black(image):
# 将输入图片转为单通道灰度图
output = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
return output
# fn 为处理函数,inputs 为输入组件类型,outputs 为输出组件类型
interface = gr.Interface(fn=to_black, inputs="image", outputs="image")
interface.launch()

在结合 OpenCV、Matplotlib 使用时,可能会遇到如下错误: AttributeError: module 'backend_interagg' has no attribute 'FigureCanvas'