SWIFT环境配置及大模型微调实践

SWIFT环境配置及大模型微调实践

SWIFT介绍参考: 这里

SWIFT环境配置

基础配置

bash 复制代码
conda create -n swift python=3.8

pip install ms-swift[all] -U

# 下载项目
git clone https://github.com/modelscope/swift

增量配置

如果是运行qwen-audio,需要安装ffmpeg

bash 复制代码
apt-get update
apt-get install ffmpeg

SWIFT Qwen_audio_chat大模型微调实践

也可以参考https://zhuanlan.zhihu.com/p/665300386

微调代码

bash 复制代码
cd swift/examples/pytorch/llm
nohup bash scripts/qwen_audio_chat/lora/sft.sh > qwen_audio_chat_sft_20240320.log &

问题1:

复制代码
   第一次跑,发现使用的是cpu,经过检查,发现pytorch版本对应的cuda版本较高,于是重新安装pytorch。
bash 复制代码
conda install --use-local pytorch-1.13.0-py3.8_cuda11.6_cudnn8.3.2_0.tar.bz2.tar.bz2
复制代码
    但是,在训练的时候会出现问题,如下。

问题2:

cannot import name 'LRScheduler' from 'torch.optim.lr_scheduler

问题定位

这个问题定位了很久,最后确定了是版本兼容问题。

具体的:pytorch 2.0.0以上的版本是LRScheduler,以下的版本是_LRScheduler。

解决方法

卸载掉之前安装的版本,重新手动安装pytorch 2.0.0以上版本。

手动安装pytorch

  1. 从该网址下载对应包:https://download.pytorch.org/whl/torch_stable.html
    (pytorch的版本号,cuda版本号,python版本号都对应好。)
  2. 使用pip手动安装
    pip install some_package.whl
相关推荐
姜太公钓鲸23318 小时前
ROM就是程序存储器,实际的存储介质是Flash闪存。上述描述中的程序存储器是什么意思?
开发语言·javascript·ecmascript
Java后端的Ai之路18 小时前
【JDK】-JDK 21 新特性内容
java·开发语言·后端·jdk·jdk21
wjs202418 小时前
JavaScript 作用域
开发语言
m0_5312371719 小时前
C语言-指针终阶
c语言·开发语言
散峰而望19 小时前
C++ 启程:从历史到实战,揭开命名空间的神秘面纱
c语言·开发语言·数据结构·c++·算法·github·visual studio
易辰君19 小时前
【Python爬虫实战】正则:中文匹配与贪婪非贪婪模式详解
开发语言·爬虫·python
普通网友19 小时前
PHP语言的正则表达式
开发语言·后端·golang
黎雁·泠崖20 小时前
Java常用类核心详解(七):正则表达式 Regex 从入门到实战
java·开发语言·正则表达式
PingdiGuo_guo20 小时前
C++数据类型、变量常量
开发语言·c++
多恩Stone20 小时前
【C++ debug】在 VS Code 中无 Attach 调试 Python 调用的 C++ 扩展
开发语言·c++·python