博主用的华为昇腾910b服务器,所以生态偏华为。

swift官方文档地址:SWIFT安装 — swift 3.9.0.dev0 文档

一、安装miniconda到个人目录并配置

miniconda官网地址:Installing Miniconda - Anaconda

(选择Linux,记得修改路径为个人目录,否则容易污染服务器)

# 进入个人目录
cd /个人文件夹路径

# 创建miniconda文件夹
mkdir -p /个人目录路径/miniconda3

# 下载miniconda
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O /个人目录路径/miniconda3/miniconda.sh

# 安装到个人目录
bash /个人目录路径/miniconda3/miniconda.sh -b -u -p /个人目录路径/miniconda3

# 删除安装脚本
rm /个人目录路径/miniconda3/miniconda.sh

# 添加到您的 bashrc(配置环境变量)
echo 'export PATH="/个人目录路径/miniconda3/bin:$PATH"' >> /个人目录路径/.bashrc
source /个人目录路径/.bashrc

# 验证安装
conda --version

二、创建conda虚拟环境

# 创建名为 my_swift 的环境,指定 Python 3.10
conda create -n swift_py310 python=3.10 -y

#激活环境
conda activate swift_py310

以下是博主个人笔记,旨在区分python虚拟机和conda虚拟机,不用键入:

#以下是博主个人笔记,旨在区分python虚拟机和conda虚拟机,不用键入

#使用系统python创建虚拟环境
python3.10 -m venv msswift_env

#激活环境
source msswift_env/bin/activate

#验证激活(命令行前应该显示msswift_env)
python --version
pip --version

附上虚拟环境删除指令,以备需要:

#先退出虚拟环境
conda deactivate

#再删除
conda remove -n swift_py310 --all -y

三、安装PyTorch和torch_npu

昇腾社区pytorch安装文档:

安装前准备-Ascend Extension for PyTorch7.1.0-昇腾社区

我的环境配置是:

CANN 8.2.RC1 + python 3.10+AArch64架构+Driver 25.2 + torch/torch-npu 2.5.1

#下载torch和torch_npu
/你的conda虚拟环境路径/bin/pip install torch==2.5.1 torch_npu==2.5.1

#验证npu
python -c "
import torch
print('=== 安装验证 ===')
print('PyTorch版本:', torch.__version__)
print('NPU支持:', hasattr(torch, 'npu'))
if hasattr(torch, 'npu'):
    print('NPU可用:', torch.npu.is_available())
    print('NPU设备数:', torch.npu.device_count())
"

这里可能会遇到很多依赖缺失的问题,按照报错下载依赖就好。

四、msswift安装(这里用的源代码安装)

快速开始 — swift 3.2.0.dev0 文档

git clone https://github.com/modelscope/ms-swift.git
cd ms-swift
python -m pip install -e . -i https://repo.huaweicloud.com/repository/pypi/simple/

验证安装成功:

python -c "import swift; print('=== swift 安装成功 ===')"

如果用pip install -e .可能有缺失包报错,可以用华为镜像手动下载一下:

(把attrdict替换成对应的包名就行)

pip install attrdict -i https://repo.huaweicloud.com/rep
ository/pypi/simple/

五、qwen3-vl-8b模型下载

通义千问3-VL-8B-Instruct · 模型库

#安装 ModelScope(必须)
python -m pip install modelscope -i https://pypi.tuna.tsinghua.edu.cn/simple

#下载完整模型库
modelscope download --model Qwen/Qwen3-VL-8B-Instruct

#下载单个文件到指定本地文件夹(以下载README.md到当前路径下“dir”目录为例)
modelscope download --model Qwen/Qwen3-VL-8B-Instruct README.md --local_dir ./dir

六、测试样例

#创建测试脚本(esc + :wq保存退出)
vi test.sh
#脚本内容
export ASCEND_RT_VISIBLE_DEVICES=1

swift sft \
--model /root/.cache/modelscope/hub/models/Qwen/Qwen3-VL-8B-Instruct \
--train_type lora \
--dataset ./test_mini.json \
--max_length 256 \
--torch_dtype float16 \
--num_train_epochs 0.0001 \
--output_dir ./output/qwen3vl_test \
--dataloader_num_workers 0 \
--per_device_train_batch_size 1 \
--logging_steps 1

#创建数据集
cat > test_mini.json << 'EOF'
[
    {"instruction": "你好", "input": "", "output": "你好!"},
    {"instruction": "1+1等于几", "input": "", "output": "等于2"}
]
EOF

#授权
chmod +x test.sh

#运行
./test.sh

七、查看训练过程

# 启动 TensorBoard 查看训练过程
tensorboard --logdir 你的输出文件路径,例如output/qwen3vl_test/v0-20251021-122337/runs

主要看下列指标(测试样例很小,没有曲线很正常):

✅ train/loss      - 应该持续下降
✅ eval/loss       - 应该同步下降(如果有)
✅ learning_rate   - 按预期调度

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐