目录
- 社区
-
- [Hugging Face](#Hugging Face)
-
- 核心功能
- 如何拉取(下载)模型
-
- [1. 使用 Python 代码下载](#1. 使用 Python 代码下载)
- [2. 使用 CLI 命令行下载](#2. 使用 CLI 命令行下载)
- [3. 使用 Git LFS (Git Large File Storage)](#3. 使用 Git LFS (Git Large File Storage))
- ModelScope (魔搭社区)
-
- 社区相关知识
- 如何拉取(下载)模型
-
- [1. 安装 SDK](#1. 安装 SDK)
- [2. 使用 Python 代码下载](#2. 使用 Python 代码下载)
- [3. 使用 CLI 命令行下载](#3. 使用 CLI 命令行下载)
- 总结
社区
Hugging Face
Hugging Face 是一个开源模型、数据集和 Demo 的交流社区,被誉为 AI 领域的 GitHub。它为机器学习爱好者、研究人员和开发者提供了一个协作平台,致力于推动人工智能的民主化。
核心功能
- Models(模型库): 收录了数以万计的预训练模型,覆盖 NLP(自然语言处理)、CV(计算机视觉)、Audio(音频处理)等多个领域。
- Datasets(数据集): 提供了丰富的数据集供模型训练和评测使用,支持多种数据格式和加载方式。
- Spaces(空间): 允许用户托管和展示机器学习应用的 Demo,基于 Streamlit 或 Gradio 构建,方便分享和体验。
如何拉取(下载)模型
在 Hugging Face 上下载模型通常使用 huggingface_hub 库或 transformers 库,非常便捷。
1. 使用 Python 代码下载
这是最常用的方式,transformers 库会自动处理缓存和加载。
python
# 使用 transformers 库自动下载并加载模型
from transformers import AutoModel, AutoTokenizer
model_name = "bert-base-uncased"
# 第一次运行时会自动下载模型权重和配置文件
model = AutoModel.from_pretrained(model_name)
tokenizer = AutoTokenizer.from_pretrained(model_name)
如果你只想下载文件而不加载:
python
from huggingface_hub import snapshot_download
# 下载整个仓库
snapshot_download(repo_id="bert-base-uncased")
2. 使用 CLI 命令行下载
适合在服务器或终端环境中快速获取模型文件。
bash
# 安装 CLI 工具
pip install -U "huggingface_hub[cli]"
# 下载模型
huggingface-cli download bert-base-uncased
3. 使用 Git LFS (Git Large File Storage)
如果你习惯使用 Git 来管理代码,可能会尝试直接 git clone 模型仓库。但需要注意的是,Hugging Face 上的模型文件(如 .gguf、.bin、.safetensors 等)通常非常大,因此它们是通过 Git LFS 存储的。
注意事项:
如果未安装或配置 LFS 直接执行 git clone,你下载到的将只是非常小的指针文件 (Pointer file)(通常仅 1KB - 4KB),里面只包含文件的元数据链接,而不是真实的文件内容。
安装与使用:
首先,使用 homebrew (MacOS) 或其他包管理器安装 Git LFS:
bash
# 安装 git-lfs
brew install git-lfs
# 初始化 lfs
git lfs install
然后就可以正常 clone 仓库了,LFS 会自动拉取大文件:
bash
git clone https://huggingface.co/bert-base-uncased
ModelScope (魔搭社区)
社区相关知识
- 网络友好: 部署在国内节点,模型下载速度极快,无需特殊网络环境。
- 中文特色: 汇聚了大量优秀的国产大模型(如通义千问 Qwen、百川 Baichuan、智谱 ChatGLM 等)以及针对中文优化的开源模型。
- 模型即服务 (MaaS): 倡导将模型作为一种服务来使用,提供了统一的推理 pipeline 接口。
- 创空间: 类似于 Hugging Face 的 Spaces,提供可视化的模型体验环境。
如何拉取(下载)模型
ModelScope 提供了专门的 Python SDK modelscope 来管理和下载模型。
1. 安装 SDK
bash
pip install modelscope
2. 使用 Python 代码下载
ModelScope 的 snapshot_download 接口可以轻松将模型下载到本地。
python
from modelscope.hub.snapshot_download import snapshot_download
# 下载模型到本地缓存目录
# model_id: 模型在社区的 ID,例如 'qwen/Qwen-7B-Chat'
# revision: 指定版本号,推荐指定以保证稳定性
model_dir = snapshot_download('qwen/Qwen-7B-Chat', revision='v1.0.0')
print(f"模型已下载至: {model_dir}")
3. 使用 CLI 命令行下载
ModelScope 也提供了命令行工具,方便脚本化操作。
bash
# 下载整个模型仓库
modelscope download --model qwen/Qwen-7B-Chat
当然也可以用git clone下载
总结
无论是 Hugging Face 还是 ModelScope,它们都极大地促进了 AI 技术的开源和共享。开发者可以根据网络环境和项目需求(如对中文的支持程度)灵活选择使用这两个社区的资源。国内建议使用ModelScope,下载速度能快非常多