为了构建法律领域的垂直应用大模型,从本文起记录使用LLaMA-Factory微调大模型的过程,以期UU们可以复刻与应用。大语言模型统一高效微调框架(LLaMA-Factory)的详解介绍可见:LLaMA-Factory/README_zh.md at main · hiyouga/LLaMA-Factory · GitHub
LLaMA-Factory框架旨在简化大型语言模型的微调过程,提供了一套完整的工具和接口,使得用户能够轻松地对预训练的模型进行定制化的训练和调整,以适应特定的应用场景。
LLaMA-Factory的优点:
- 多种模型:LLaMA、LLaVA、Mistral、Mixtral-MoE、Qwen、Yi、Gemma、Baichuan、ChatGLM、Phi 等等。
- 集成方法:(增量)预训练、(多模态)指令监督微调、奖励模型训练、PPO 训练、DPO 训练、KTO 训练、ORPO 训练等等。
- 多种精度:16 比特全参数微调、冻结微调、LoRA 微调和基于 AQLM/AWQ/GPTQ/LLM.int8/HQQ/EETQ 的 2/3/4/5/6/8 比特 QLoRA 微调。
- 先进算法:GaLore、BAdam、DoRA、LongLoRA、LLaMA Pro、Mixture-of-Depths、LoRA+、LoftQ、PiSSA 和 Agent 微调。
- 实用技巧:FlashAttention-2、Unsloth、RoPE scaling、NEFTune 和 rsLoRA。
- 实验监控:LlamaBoard、TensorBoard、Wandb、MLflow 等等。
- 极速推理:基于 vLLM 的 OpenAI 风格 API、浏览器界面和命令行接口。
一、Python环境搭建
本文及后续所使用的操作系统均为: Ubuntu 22.04.4 LTS;显卡为:NVIDIA A40-48GB GPU。
大模型的开发依赖于Python语言,为了实现有效的版本控制,避免环境错乱,需搭建conda环境。Anaconda是一个用于科学计算的Python发行版本。它包含了一系列常用的数据科学工具和库,自带Conda的包管理系统可以帮助用户快速安装和管理Python包和依赖项,而无需担心版本冲突和依赖关系。它还可以创建与不同项目相关的虚拟环境,使得不同项目之间的依赖项隔离开来。
Anaconda下载地址:【根据使用的操作系统选择】
Index of / (anaconda.com)https://repo.anaconda.com/archive/
此后,使用Xftp将安装包上传至服务器。Xftp是文件传输软件,用于在本地计算机和远程服务器之间安全地传输文件。通过用户界面,可快捷浏览和管理远程服务器上的文件和文件夹。同时支持多种文件传输协议,包括SFTP、FTP和SCP。
安装Anaconda【安装过程中一直enter】
此处选择yes
此处yes完成安装
而后需激活conda,使用如下命令【其中<用户名>需替换为自己的】
source /home/<用户名>/anaconda3/bin/activate
激活之后,查看python的版本,如果可以显示,则表明安装成功
python -V
二、安装CUDA
CUDA(Compute Unified Device Architecture)是由NVIDIA推出的一种并行计算平台和应用程序编程接口。它允许开发人员使用CUDA C/C++语言来利用NVIDIA的GPU进行高性能计算。在大模型训练中CUDA不可或缺。
首先查看是否安装CUDA以及显卡支持的CUDA最高的版本信息
nvcc --version
nvidia-smi
【注意】Ubuntu提示使用sudo apt install nvidia-cuda-toolkit 去安装CUDA库。但采用此命令默认安装的是CUDA11.5,建议不使用该命令安装。
如图所示,本机支持的CUDA 最高version为12.2,此后访问NVIDIA官方,输入系统信息,获取安装指令。
按照上图中的命令逐步安装,安装过程耗时较短。
安装完成后,查看版本信息命令若打印如下信息即证明安装成功。
nvcc -V
默认的CUDA11.5难以匹配后续的大模型部署与训练,若已经安装,相应的卸载可参考此篇博文。
三、安装CUDNN
CUDNN(CUDA Deep Neural Network Library)是由NVIDIA开发的针对深度学习任务的加速库。它是基于CUDA架构的深度神经网络加速库,提供了高性能的GPU加速的深度神经网络的实现。CUDNN主要目标是加速深度学习任务的训练和推理。它提供了一系列的GPU加速算法和优化策略。CUDNN的下载链接为:
https://developer.nvidia.com/rdp/cudnn-downloadhttps://developer.nvidia.com/rdp/cudnn-download
选择与CUDA版本匹配的CUDNN,推荐使用cuDNN 9.2.1。
而后按照安装命令完成,最后一步依据自身的CUDA版本选择对应的指令。
四、虚拟环境搭建与PyTorch安装
LLaMA-Factory的软件依赖如下图所示,按照推荐,本文搭建python环境3.11,PyTorch2.3.0的基本环境。
指定Python版本为3.11,创建名称为LLM的虚拟环境
conda create -n LLM python=3.11
而后激活LLM虚拟环境
conda activate LLM
PyTorch是由Facebook AI Research Lab开发的一个开源机器学习框架。它是基于Python的科学计算包NumPy和深度学习库Torch的组合,提供了高级的功能和灵活性,使得开发者可以更加方便地构建深度学习模型。下载地址为:
Start Locally | PyTorchhttps://pytorch.org/get-started/locally/进入PyTorch官网找到匹配cuda版本的pytorch版本安装命令
使用pip安装时,可使用清华镜像源加速
pip3 install torch torchvision torchaudio -i https://pypi.tuna.tsinghua.edu.cn/simple
安装完成后进入Python环境,使用如下代码进行验证
import torch
print(torch.__version__)
print(torch.cuda.is_available())
验证结果如下图则表明torch已安装成功
小结
至此大语言模型统一高效微调框架(LLaMA-Factory)的基础环境已在 Ubuntu 22.04.4 LTS操作系统、NVIDIA A40-48GB GPU显卡服务器上搭建成功。基础环境的配置核心在于版本控制和解决依赖冲突,为后续的模型训练提供支撑。
下文【02】LLaMA-Factory微调大模型——LLaMA-Factory搭建,将在本机上部署LLaMA-Factory框架,欢迎您持续关注,如果本文对您有所帮助,感谢您一键三连,多多支持!
标签:01,模型,微调,Factory,CUDA,LLaMA,安装 From: https://blog.csdn.net/H66778899/article/details/140443322