Skip to content

使用镜像站点是最推荐且最有效的方法。通过设置环境变量,让 transformersdiffusers 等库自动从国内的镜像服务器下载模型。

1. 设置 HF-Mirror (hf-mirror.com) 镜像源

这是一个由社区维护的 Hugging Face 镜像,同步很及时,广受好评。

使用方法:

在你的终端(命令行)中设置以下环境变量:

对于 Linux / MacOS:

bash
export HF_ENDPOINT=https://hf-mirror.com

对于 Windows (CMD):

cmd
set HF_ENDPOINT=https://hf-mirror.com

对于 Windows (PowerShell):

powershell
$env:HF_ENDPOINT = "https://hf-mirror.com"

验证是否生效:

设置完环境变量后,在同一个终端中运行你的 Python 下载脚本。你会发现下载速度有质的飞跃。

2. 或设置阿里云 ModelScope 镜像源

ModelScope 是阿里巴巴达摩院的开源模型社区,它也提供了 Hugging Face 的镜像服务。

使用方法:

同样是设置环境变量,只是地址不同。

对于 Linux / MacOS:

bash
export HF_ENDPOINT=https://modelscope.cn/api/v1

对于 Windows (CMD):

cmd
set HF_ENDPOINT=https://modelscope.cn/api/v1

对于 Windows (PowerShell):

powershell
$env:HF_ENDPOINT = "https://modelscope.cn/api/v1"

重要提示

  1. HF_ENDPOINThuggingface_hub 库推荐的最新环境变量。旧的 HUGGINGFACE_HUB_ENDPOINT 也能用,但建议使用新的。
  2. 为了避免不同镜像源的文件混淆,建议为每个镜像源设置独立的缓存目录。
    bash
    # 配合 hf-mirror 使用
    export HF_HOME=/path/to/hf-mirror-cache 
    # 配合 modelscope 使用
    export HF_HOME=/path/to/modelscope-cache
    HF_HOME 环境变量指定了 Hugging Face 的缓存根目录,模型、数据集等都会下载到这里。

3.使用 huggingface-cli 手动下载

huggingface-cli 是官方提供的命令行工具,它支持断点续传,比在 Python 脚本中直接下载更稳定。

  1. 安装 huggingface-hub (如果还没装):

    bash
    pip install -U huggingface_hub
  2. 使用命令行下载:

    先设置好镜像环境变量。

    bash
    # 示例:下载 bert-base-chinese
    # hf-mirror 环境变量已设置
    huggingface-cli download google-bert/bert-base-chinese --local-dir /path/to/save/bert-base-chinese
    • download: 是 huggingface-cli 的下载命令。
    • google-bert/bert-base-chinese: 是模型的 ID。
    • --local-dir: 指定模型下载到本地的哪个文件夹。
  3. 在代码中加载本地模型:

    模型下载完成后,在你的 Python 代码中直接从本地路径加载即可。

    python
    from transformers import AutoModelForCausalLM, AutoTokenizer
    
    model_path = "/path/to/save/bert-base-chinese"
    
    tokenizer = AutoTokenizer.from_pretrained(model_path)
    model = AutoModelForCausalLM.from_pretrained(model_path)

    这样做的好处是,下载过程和代码运行是分离的,下载中断了可以继续,不会影响代码。