从服务器上直接下载huggingface模型,解决huggingface无法连接问题
问题说明
在服务器上使用huggingface模型时,如果直接指定模型名称,用AutoTokenizer.from_pretrained(“model_name”),可能会由于网络原因会报错 Failed to connect to huggingface.co port 443 after 75018 ms: Operation time out
因此我们需要下载模型到服务器上,得到模型本地的路径model_dir,再通过AutoTokenizer.from_pretrained(model_dir)方式来使用。
下载方式1:手动从huggingface界面下载相应文件
从huggingface官网挨个下载文件。这种方式需要先下载模型到本地,再上传到服务器上,经过两次传输,很是麻烦。不推荐
下载方式2 使用下载器下载
去huggingface 镜像网站, 先将图中的model_download.py下载到服务器中的模型路径里。 下载代码为:
wget https://aliendao.cn/model_download.py
然后运行代码:
pip install huggingface_hub
python model_download.py --repo_id (模型ID)
不知道模型ID的可以去搜索栏搜索模型名称,比如baichuan2-7B-Chat 如图所示,会给出相应的下载代码:python model_download.py --repo_id baichuan-inc/Baichuan2-7B-Chat
这样就能直接在服务器上下载huggingface模型了,而且会显示下载进度条。速度大约是2M/s
温馨提示
模型下载通常要很久,别忘了打开tmux窗口防止电脑休眠导致网络中断哦 如果你忘了打开tmux窗口也没关系,可以按ctrl-z暂停任务,再打开tmux,重新运行python model_download.py --repo_id 模型id 这行下载代码,可继续下载
下载方式3 使用github脚本下载
可以通过此项目,可以实现下载和加载模型都只需要模型名称。 github项目链接:https://github.com/LetheSec/HuggingFace-Download-Accelerator