问题
因业务需要在本机测试embedding分词模型,使用 huggingface上的transformers 加载模型时,因为网络无法访问,不能从 huggingface 平台下载模型并加载出现如下错误。
下面提供几种模型下载办法
解决
有三种方式下载模型,一种是通过 huggingface model hub 的按钮下载,一种是使用 huggingface 的 transformers 库实例化模型进而将模型下载到缓存目录(上述报错就是这种),另一种是通过 huggingface 的 huggingface_hub 工具进行下载。下面介绍两种方式:
huggingface 按钮下载
点击下图的下载按钮,把所有文件下载到一个目录即可。
因网络原因无法下载可使用访问镜像HF-Mirror - Huggingface 镜像站
huggingface_hub 工具(推荐)
- 安装 huggingface_hub
python -m pip install huggingface_hub
- 使用 huggingface_hub 的 snapshot_download 函数下载
from huggingface_hub import snapshot_download
snapshot_download(repo_id="BAAI/bge-m3")
- 也可以使用 huggingface_hub 提供的命令行工具(推荐)
huggingface-cli download BAAI/bge-m3
如果觉得下载比较慢,使用 huggingface 镜像提速
可以通过设置HF_ENDPOINT
环境变量用以切换下载的地址。
- 设置环境变量
# Linux 系统
export HF_ENDPOINT=https://hf-mirror.com
# Windows 系统
$env:HF_ENDPOINT = "https://hf-mirror.com"
- 下载模型
huggingface-cli download BAAI/bge-m3
注意:在windows中需要使用管理员启动命令行
关于 huggingface_hub 的更多用法可阅读 Download an entire repository。
其他
另外也可以使用 hf_transfer进行 提速,可以与此处我没有用到,不展开介绍
Download files from the Hub
- 安装 hf_transfer
pip install hf_transfer
- 设置环境变量
export HF_HUB_ENABLE_HF_TRANSFER=1
- 下载模型
huggingface-cli download internlm/internlm2-chat-7b