PaddlePaddle AiStudio Torch 配置 百度训练平台

PaddlePaddle AiStudio Torch 配置 百度训练平台

PaddlePaddle AiStudio 平台提供 V100 GPU,然而默认只有 PaddlePaddle 百度自有框架,Conda 环境不独立,使用 external-libraries 文件夹存在路径缺陷,所以这里记录改环境到 Torch 的过程,包含一些语音处理包的安装。

目标环境:Python 3.11 + Torch 2.5.1 cu118

准备 whl 文件

包名 (Package) 版本 (Version) 下载链接
torch 2.5.1 torch-2.5.1+cu118-cp311-cp311-linux_x86_64.whl
torchvision 0.20.1 torchvision-0.20.1+cu118-cp311-cp311-linux_x86_64.whl
torchaudio 2.5.1 torchaudio-2.5.1+cu118-cp311-cp311-linux_x86_64.whl
fairseq 0.12.3.1 fairseq-0.12.3.1-cp311-cp311-linux_x86_64.whl

从外部提前准备 whl,实例网络访问 pytorchgithub 困难

下载完毕后逐个传递到实例内

初始化和换源

conda init

注册 conda 到 bashrc,重新启动终端。由于 ~/.local 会被重置,需要配置 env 路径后安装环境:

conda config --add envs_dirs /home/aistudio/envs
conda create -n au python=3.11
conda activate au

为 pip 换源,替换 baidu 源,如下为测速:

(au) aistudio@jupyter:~/work$ ./chsrc-x64-linux set python
[chsrc 提醒] 将同时更换4个包管理器 pip, Poetry, PDM, uv 的源,若需要独立换源,请独立运行 chsrc set <pkg-manager>
[chsrc 检查] x 命令 poetry 不存在
[chsrc 检查] ✓ 命令 pdm 存在
[chsrc 检查] x 命令 uv 不存在
[chsrc 测速] 测速中

^ 上游默认源 (https://pypi.org/simple) [精准测速] ... 3.36 KByte/s
- 校园网联合镜像站(MirrorZ) [精准测速] ... 0.00 Byte/s | HTTP码 302
- 北京外国语大学开源软件镜像站 [精准测速] ... 35.11 MByte/s
- 兰州大学开源社区镜像站 [精准测速] ... 25.66 MByte/s
- 吉林大学开源镜像站 [精准测速] ... 139.00 Byte/s | HTTP码 404
- 上海交通大学致远镜像站 [精准测速] ... 102.06 KByte/s | HTTP码 404
- 清华大学开源软件镜像站 [精准测速] ... 35.64 MByte/s
- 阿里巴巴开源镜像站(公网) [精准测速] ... 16.89 MByte/s
- 南京大学开源镜像站 [精准测速] ... 16.40 KByte/s
- 北京大学开源镜像站 [精准测速] ... 32.74 MByte/s
- 腾讯软件源(公网) [精准测速] ... 5.00 MByte/s
- 华为开源镜像站 [精准测速] ... 10.00 MByte/s
- 华中科技大学开源镜像站 [精准测速] ... 0.00 Byte/s | HTTP码 000

最快镜像站: 清华大学开源软件镜像站
选中镜像站: TUNA (tuna)

实际使用上 TUNA 源在实例内较快,BFSU 速度波动显著(存在低值 50kb/s 甚至停止)

由于 .config 会被清理,在可持久目录配置 ~/work/pip_backup.conf

[global]
user = false
index-url = https://mirror.baidu.com/pypi/simple/
extra-index-url = https://pypi.tuna.tsinghua.edu.cn/simple

覆写这一配置到 ~/.config/pip/pip.conf

mkdir -p /home/aistudio/.config/pip
cp /home/aistudio/work/pip_backup.conf /home/aistudio/.config/pip/pip.conf

在安装依赖包时,需要 --no-user 来避免写入到 .local,放入 envs 避免被擦除。示例安装顺序如下:

第一部分:Torch + fairseq (whl)

pip install --no-user numpy==1.26.4
pip install --no-user *.whl

第二部分:流程工具包

pip install --no-user transformers tensorboard lightning

第三部分:Ipy 核心和小工具

pip install --no-user SoundFile librosa torchcrepe torchfcpe tqdm \
ipykernel ipython ipywidgets ipython-genutils ipyparallel ipyevents \
pyworld click scienceplots

此时完成环境部署

使用环境

部署内容均在 /home/aistudio/envs/au 中,含有解释器、依赖包,支持 jupyter,每次启动,需要首次加载步骤

conda init

首先初始化,重启终端

unset PYTHONUSERBASE
conda config --add envs_dirs /home/aistudio/envs
cp /home/aistudio/work/pip_backup.conf /home/aistudio/.config/pip/pip.conf

清理环境变量和录入虚拟环境路径,(可选)复制 pip 源配置

首次加载步骤结束。之后为切换环境

conda activate au

激活环境,此时可正常安装包(pip install --no-user)、运行脚本与 Ipynb。