ModelScope 说明文档
开发环境安装与配置
本节整理 ModelScope 模型训练、推理和数据集管理所需的环境安装与配置。
基础支持与环境要求
- 功能支持:ModelScope Library 支持模型/数据集的获取与管理,以及基于 PyTorch、TensorFlow 等框架的训练与推理。
- 版本兼容:推荐 Python 3.8+、PyTorch 1.11+、TensorFlow 2.x。
- 特殊说明:大部分语音模型需在 Linux 环境下运行(推荐 python3.8 + tf2.13.0 + torch2.0.1);少部分旧模型依赖 TensorFlow 1.15.0。
官方 Docker 镜像(推荐)
为免去繁琐的环境配置,官方提供了多种预置镜像,涵盖 CPU/GPU/AMD GPU 及大模型训练场景:
- 最新镜像 (v1.39.0):基于 Ubuntu 22.04 + Python 3.12 + Torch 2.10.0。
- GPU 版:CUDA 12.8.1,适用于大模型、Diffusers、Megatron、FunASR 等。
- 小模型兼容:若需运行 BERT/YOLO 等小模型,请使用 Torch 2.3.1 + CUDA 12.1.0 的低版本镜像。
- AMD GPU:提供 ROCm 7.2.3 专用镜像。
- SWIFT 训练镜像:集成 ms-swift、vLLM 及 Megatron-SWIFT 依赖,专为大模型训练设计。
- 历史镜像:提供了从 Python 3.7 到 3.11、Torch 1.11 到 2.9.1 等多个历史版本,以兼容旧模型。
本地 Python 环境安装
若不使用 Docker,可通过以下步骤手动配置:
- 环境创建:推荐使用 Anaconda (
conda create -n modelscope python=3.12)。
- Library 安装:
- 仅下载模型/命令行工具:
pip install modelscope
- 完整框架能力(数据集加载等):
pip install modelscope[framework]
- 深度学习框架:根据需求安装 PyTorch 或 TensorFlow。国内用户建议配置清华源或阿里云镜像加速。
- 分领域依赖安装:针对不同模态提供独立安装选项(需配合
-f 参数指定依赖源):
- NLP / CV / Audio / Multi-modal / Science
- 特殊依赖注意:
- 语音:Linux 下需手动安装
libsndfile1。
- CV:部分模型依赖
mmcv-full (1.x 版本),切勿安装 2.0+。
安装验证
安装完成后可通过一行代码验证环境是否正常,例如运行中文分词任务:
python -c "from modelscope.pipelines import pipeline;print(pipeline('word-segmentation')('今天天气不错,适合 出去游玩'))"
SWIFT 框架安装
针对大模型(LLM & SD)训练推理,推荐使用官方框架 SWIFT:
- Wheel 包:
pip install ms-swift -U
- 源码安装:克隆仓库后执行
pip install -e .
Notebook 在线环境
ModelScope 官网提供免费 GPU 算力(A10 显卡),用户登录后可在“我的Notebook”中直接开启实例,无需本地部署即可体验平台模型。
模型下载、推理、微调与部署
本节按模型下载、推理、微调和部署的顺序梳理使用流程。
环境安装
- 在线体验:推荐使用社区预装的 Notebook 环境,提供一定额度的免费 GPU 和不限时长的免费 CPU 算力,且已预置大部分依赖。
- 本地开发:推荐通过
pip install modelscope 安装 SDK,并建议同时安装 Git 和 Git LFS 以支持模型管理。
模型下载
提供了三种主要下载方式,均支持断点续传和高速下载:
- 命令行工具:适合高带宽机器,使用
modelscope download 命令指定模型和本地目录。
- Python SDK:使用
snapshot_download 函数在代码中下载。
- Git Clone:在安装 Git LFS 后直接克隆仓库。
模型加载与推理
- 加载方式:
- AutoModel:兼容 Transformers/Diffusers,支持
AutoModelForCausalLM 等接口加载大语言模型。
- Pipeline:ModelScope 原生推理接口,开箱即用,适合多种模态任务(如语音识别、分词等)。
- 推理示例:文档提供了大语言模型(Qwen2.5)的对话生成代码、语音识别 Pipeline 调用代码,以及未原生集成模型(如 SDXL-Turbo)结合 Diffusers 库进行文生图的完整示例。
模型微调
- 核心工具:使用
ms-swift 框架,支持 500+ 大模型和 200+ 多模态模型的训练、评测、量化与部署。
- 技术支持:涵盖 LoRA、QLoRA、DoRA 等轻量化训练技术,以及 DPO、GRPO、PPO 等人类对齐方法;支持 vLLM/LMDeploy 加速及多种量化技术。
- 操作方式:提供了基于 Qwen2.5-7B-Instruct 的 LoRA 微调脚本及训练后的推理命令,并配备 Gradio Web-UI。
模型部署
- 云端一键部署:使用 SwingDeploy 将模型部署至云资源,部分大模型支持直接提供 OpenAI API 兼容接口。
- 本地/自有 GPU 部署:推荐使用 vLLM,需设置环境变量
VLLM_USE_MODELSCOPE=True。v0.6+ 版本支持内置工具调用功能。
Notebook 环境与资源管理
本节整理 ModelScope Notebook 的环境、存储、使用流程和资源限制。
产品简介
ModelScope Notebook 是一款基于 Jupyter Notebook 的云端机器学习开发 IDE,适用于不同水平的 AI 开发者。它通过与阿里云 PAI-DSW 合作,提供开箱即用的限时免费算力,实现了模型开发环境与 CPU/GPU 计算资源的无缝连接,并支持 Web-IDE (VS-Code) 在线开发。
核心特性与存储
- 环境预置:已预装魔搭模型开发包及算法库,支持自定义安装第三方库。
- 计算资源:支持 GPU,CPU 规格为 8核32G,默认拥有 Root 权限。
- 持久化存储:提供免费 100G 存储空间,挂载于
/mnt/workspace/ 目录。注意:仅该目录下的数据在实例关闭后会保留,其他路径数据会被清除;平台不提供 SLA 保障,请勿存储敏感或重要数据,需自行备份。账号超过 365 天无活动可能会清除数据。
- 网络限制:外网访问受限(包括 HuggingFace 等)。
开发流程范例
文档提供了基于 ModelScope 生态的完整开发示例:
- 推理:使用
pipeline 函数快速加载模型进行任务处理(如中文分词),支持单条或批量输入。
- 数据加载:通过
MsDataset 接口标准加载数据集。
- 预处理与训练:框架自动读取 modelcard 配置完成预处理实例化;通过
build_trainer 构建训练器并调用 train() 接口进行训练。
- 评估:训练完成后调用
evaluate() 函数即可完成模型评估。
免费资源与获取方式
- 资源规格:新用户可获得 CPU 环境(8核32G,长期使用)和 GPU 环境(8核32G内存+24G显存,免费限额36小时)。
- 获取步骤:需登录 ModelScope 账号并授权绑定阿里云账号(需勾选全部选项)方可获得初始额度。
使用限制与注意事项
- 合规性:用户对算力使用的合法合规性负责。
- 时长限制:单次运行最长不超过 10 小时;空闲超过 1 小时会自动关闭以节省额度。
- 额度用尽处理:
- 切换至免费的 CPU 环境继续开发。
- 导出文件至本地 IDE 开发。
- 前往阿里云控制台购买 Notebook 商业版(PAI-DSW)付费使用。