【deepseek】Ubuntu/centos系统中无法直接git clone下载模型的解决方法(手动下载)
问题描述:
在Ubuntu/centos系统中由于在大多数情况下无法科学上网从而无法登录huggingface录入access token下载模型,
常规理论操作如下:
# 1. 安装 huggingface_hub (如果尚未安装)
pip install huggingface_hub
# 2. 登录 Hugging Face
huggingface-cli login
# 3. 安装 Git LFS (如果尚未安装)
sudo apt-get update
sudo apt-get install git-lfs
git lfs install
# 4. 克隆模型仓库
git clone https://huggingface.co/deepseek-ai/deepseek-llm-7b-chat
# 5. 下载模型文件
cd deepseek-llm-7b-chat
git lfs pull
由于无法科学上网报错如下:
问题确认:
ping不通huggingface:
ping huggingface.co
可以ping通百度:
ping baidu.com
解决方案:
由于无法通过 huggingface-cli login
登录,并且无法直接 git clone
Hugging Face 上的模型,可以通过设置 HF_ENDPOINT
环境变量来使用镜像网站下载模型。
1. 设置 HF_ENDPOINT
环境变量:
在终端中设置 HF_ENDPOINT
环境变量,指向 Hugging Face 镜像站点。
export HF_ENDPOINT=https://hf-mirror.com
这告诉 huggingface_hub
库使用 https://hf-mirror.com
作为 Hugging Face Hub 的替代端点。
2. 使用 huggingface_hub
库下载模型:
由于无法使用 git clone
命令,需要使用 huggingface_hub
库中的 snapshot_download
函数来下载模型。
首先,需要创建一个 Python 脚本(例如 download_model.py
),并在其中使用 snapshot_download
函数:
from huggingface_hub import snapshot_download
model_id = "deepseek-ai/deepseek-llm-7b-chat" # 模型 ID
local_dir = "./deepseek-llm-7b-chat" # 本地保存目录 (可选)
local_dir_use_symlinks = False # 是否使用符号链接 (可选)
try:
snapshot_download(
repo_id=model_id,
local_dir=local_dir,
local_dir_use_symlinks=local_dir_use_symlinks,
cache_dir="./.cache" # 设置缓存目录 (可选)
)
print(f"模型 {model_id} 成功下载到 {local_dir}")
except Exception as e:
print(f"下载模型时出错: {e}")
print("请检查你的网络连接和 HF_ENDPOINT 环境变量。")
print("如果问题仍然存在,请尝试使用其他镜像站点或代理服务器。")
注意:
- 请将
model_id
替换为你想要下载的deepseek模型的实际 ID。 - 根据需要修改
local_dir
和local_dir_use_symlinks
参数。
3. 运行 Python 脚本:
在终端中运行 Python 脚本:
python download_model.py
结果展示:
成功下载模型,可进行后续部署操作: