ModelScope (魔搭) 避坑指南:环境持久化与第三方库管理全攻略
在 ModelScope (魔搭社区) 使用 Notebook (PAI-DSW) 开发时,最让开发者头疼的问题就是:实例一旦关机重启,之前安装的环境和包就全丢了。
本文将为你详解如何利用 /mnt/workspace/ 持久化目录实现“环境永存”,并同步分享官方推荐的第三方库管理规范。
🚀 核心技巧:将虚拟环境装进持久化目录
ModelScope 默认的系统盘(根目录)在重启后会重置,但 /mnt/workspace/ 是挂载的云盘,数据不会丢失。
1. 下载并安装 Miniconda
我们需要手动指定安装路径到持久化目录:
# 下载安装包
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
# 授权并安装到指定路径 /mnt/workspace/miniconda3
chmod +x Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh -b -p /mnt/workspace/miniconda3
2. 初始化与激活
ModelScope 默认通常使用 zsh,安装后需要初始化:
# 初始化 zsh 配置
/mnt/workspace/miniconda3/bin/conda init zsh
# 使配置立即生效
source ~/.zshrc
💡 重启小贴士: 由于
~/.zshrc在重启后也会恢复默认,下次开机后,你只需要再次运行上面的conda init zsh && source ~/.zshrc即可快速找回你的 Conda 权限。
Miniconda 基础操作指南
- 常用命令速查
这些是日常必备的核心命令:
| 操作 | 命令 | 说明 |
|---|---|---|
| 创建环境 | conda create -n <env_name> python=3.10 | 可指定 Python 版本 |
| 查看环境列表 | conda env list | 检查环境存储路径 |
| 激活环境 | conda activate <env_name> | 进入目标工作环境 |
| 退出环境 | conda deactivate | 返回基础环境 |
| 删除环境 | conda remove -n <env_name> --all | 彻底清理环境 |
- 环境持久化验证
安装时若指定了-p /mnt/workspace/miniconda3,请通过conda env list确认路径正确性。正常输出应显示:
# conda environments:
#
base * /mnt/workspace/miniconda3
mymodelscope /mnt/workspace/miniconda3/envs/mymodelscope
只要路径以 /mnt/workspace/ 开头,环境数据就会持久保存。
🛠️ ModelScope 专项优化
- 国内镜像配置(加速下载)
替换默认源为国内镜像提升下载速度:
# 配置清华镜像源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
- 包管理优先级
遵循原则:
- 优先使用 conda 安装
- conda 不可用时再用 pip
注意事项:
- 在激活的 conda 环境中使用 pip 会正确安装到当前环境
- 避免升级系统级 pip,所有操作应在虚拟环境中进行
📦 三方库安装与管理规范
ModelScope 提供了丰富的预设环境(Python、PyTorch、TensorFlow 等组合)。在自定义环境时,请遵循以下操作规范:
1. 查看第三方库
在 Terminal 中,你可以随时查看当前环境已安装的包:
pip list
2. 安装与更新(避坑指南)
对于普通库,直接 pip install 即可。但对于 TensorFlow-GPU 等核心框架,请注意:
- 禁止升级系统 pip:升级系统级 pip 可能导致路径冲突,导致后续无法安装。
- 更新特定版本:建议使用
--user参数并指定与 CUDA 兼容的版本。
# 示例:更新 tensorflow-gpu 到指定版本
pip install --upgrade --user tensorflow-gpu=<versionNumber>
3. 卸载第三方库
你可以卸载自己安装的库,但系统预装的基础库建议保留以维持环境稳定性:
pip uninstall <your-library-name>
❓ 常见问题 FAQ
Q1: 创建环境报错 CondaToSRejectedError?
现象: 提示 1 channel Terms of Service rejected。
原因: Anaconda 更新了服务条款,需要手动同意。
解决: 运行以下命令即可修复:
conda tos accept --override-channels --channel https://repo.anaconda.com/pkgs/main
Q2: 为什么推荐自己装 Miniconda 而不是用系统自带环境?
系统环境的库安装在 /usr/ 或 /root/ 下,重启即消失。将整个 Conda 及其 envs 放在 /mnt/workspace/,能确保你安装的数个 GB 的深度学习依赖(如 vLLM、Transformers)在下次开机时无需重新下载,开机即用。
📝 总结
- 持久化存储:所有环境和重型工具链都放
/mnt/workspace/。 - 规范管理:不随意升级系统 pip,确保框架版本与 CUDA 兼容。
- 快速恢复:重启后记得
conda init。
更多推荐


所有评论(0)