这篇适合谁,读完能做到什么
适合刚开始跑开源大模型、在国内网络环境下下载模型权重总是失败或很慢的读者。读完你能选出一种适合自己的下载方式,用几行 Python 或命令把模型下到本地,并把 pip 和 conda 的默认源换成国内镜像,让后续安装依赖也快一些。
有哪些下载方式
Datawhale 的开源教程 self-llm 在「通用设置」一章里列出了五种方法:Hugging Face 官方命令行工具 huggingface-cli、Hugging Face 镜像、ModelScope、git-lfs 和 OpenXLab[1]。它们的区别在于下载的来源和操作方式:前两种都从 Hugging Face 的仓库拉取,区别只是有没有走镜像;ModelScope 和 OpenXLab 是国内的模型平台;git-lfs 则直接 git clone 模型仓库。
准备工作
先安装 Hugging Face 的命令行工具:
pip install -U huggingface_hub这里用的是 huggingface-cli 这个命令行工具,安装 huggingface_hub 之后即可使用[1]。下面的 ModelScope 方法还需要安装 modelscope 和 transformers,OpenXLab 需要 openxlab,都是通过 pip 安装的。
方法一:用 huggingface-cli 下载
把下面的脚本保存为一个 Python 文件并运行即可。示例用 internlm/internlm-chat-7b 作为模型名,your_path 需要换成你自己的本地目录:
import os
# 下载模型
os.system('huggingface-cli download --resume-download internlm/internlm-chat-7b --local-dir your_path')两个参数要注意。--resume-download 表示断点续下,下载中断后再次运行会接着下,不用从头开始。--local-dir 是本地存储路径,在 Linux 下需要填写绝对路径[1]。
方法二:走 Hugging Face 镜像下载
镜像下载和上面的方法相同,只是在下载前设置环境变量 HF_ENDPOINT,把地址指向镜像站:
import os
# 设置环境变量
os.environ['HF_ENDPOINT'] = 'https://hf-mirror.com'
# 下载模型
os.system('huggingface-cli download --resume-download internlm/internlm-chat-7b --local-dir your_path')建议用 HF Mirror(hf-mirror.com)网站查看更多镜像用法[1]。
方法三:用 ModelScope 下载
ModelScope 的做法是调用 modelscope 包里的 snapshot_download 函数,第一个参数是模型名称,cache_dir 参数指定下载目录。cache_dir 最好写绝对路径[1]。示例代码如下:
import torch
from modelscope import snapshot_download, AutoModel, AutoTokenizer
import os
model_dir = snapshot_download('Shanghai_AI_Laboratory/internlm-chat-7b', cache_dir='your path', revision='master')运行前先执行 pip install modelscope 和 pip install transformers[1]。这种方式不需要访问 Hugging Face 的域名。
方法四:用 git-lfs 克隆仓库
git-lfs 的步骤是:到 git-lfs 官网下载安装包并安装,然后在终端执行 git lfs install,之后就可以克隆模型仓库了。示例命令是:
git clone https://huggingface.co/internlm/internlm-7b这条路需要一点「Magic」(网络上常用的说法,指要有办法访问境外网站)[1]。如果网络条件不允许,建议直接用前面的方法。
方法五:用 OpenXLab 下载
OpenXLab 可以通过指定模型仓库地址、模型名称和输出位置,直接下载权重文件[1]。先安装客户端,再调用 download 函数:
pip install -U openxlabfrom openxlab.model import download
download(model_repo='OpenLMLab/InternLM-7b', model_name='InternLM-7b', output='your local path')怎么给 pip 换源
下载模型之外,依赖包的安装也常常很慢。推荐的是国内的 MirrorZ 镜像源(mirrors.cernet.edu.cn)[2]。
如果只想临时用镜像装一个包,在命令里加上 -i 参数即可:
pip install -i https://mirrors.cernet.edu.cn/pypi/web/simple some-package如果想设成默认源,先把 pip 升级到 10.0.0 或更新的版本,再执行配置命令[2]:
python -m pip install --upgrade pip
pip config set global.index-url https://mirrors.cernet.edu.cn/pypi/web/simple如果 pip 默认源本身连接很差,连升级 pip 都困难,可以通过镜像来升级:python -m pip install -i https://mirrors.cernet.edu.cn/pypi/web/simple --upgrade pip[2]。
怎么给 conda 换源
镜像站提供 Anaconda 仓库,也提供 conda-forge、msys2、pytorch 等第三方源。配置方法是修改用户目录下的 .condarc 文件。Linux 和 macOS 的路径是 ${HOME}/.condarc,Windows 的路径是 C:\Users\<YourUserName>\.condarc[2]。
Windows 用户要注意:不能直接新建一个名为 .condarc 的文件。做法是先执行 conda config --set show_channel_urls yes 生成这个文件,然后再修改它[2]。
下面这条快速配置命令会直接写入清华 TUNA 镜像的地址:
cat <<'EOF' > ~/.condarc
channels:
- defaults
show_channel_urls: true
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
EOF这条命令会覆盖已有的 ~/.condarc,如果你已经有自己的配置,先备份再执行。
常见问题
模型下到一半断了怎么办? 用 --resume-download 参数重新运行同一条命令,已下载的部分会接着下[1]。
**--local-dir 填相对路径行不行?** Linux 下要求填写绝对路径,写绝对路径最省心[1]。
换了镜像,pip 还是慢? 检查 pip 的配置是否生效,或者用 -i 参数临时指定镜像地址[2]。
限制
镜像站是第三方提供的服务,地址、同步速度和覆盖范围都可能变化。示例使用的模型名是 internlm-chat-7b,你要下载的模型名称请以模型页面为准。另外,ModelScope 和 Hugging Face 上的同一个模型,文件组织方式和配置细节不一定完全相同,遇到加载报错时要对照你下载的那个仓库去看。
下一步
下载好模型后,可以参考 Hugging Face Transformers 或 ModelScope 的文档去加载和运行它。具体的推理部署,见本站关于 vLLM 与 Ollama 的实践文章。
本文改编自 Datawhale 开源项目 self-llm 的「模型下载」与「pip、conda 换源」两篇教程[1][2],原文以 Apache-2.0 许可证发布。
来源
- 1模型下载Datawhale self-llm (Apache-2.0)
- 2pip、conda 换源Datawhale self-llm (Apache-2.0)
引用本页: 国内怎么下载大模型:ModelScope 与 HF 镜像. TellWorld, https://www.tellworld.net/zh/practice/practice-model-download-mirror. 更新于 2026-11-14