0.LLamaFactory
LLaMA-Factory 是一个开源的低代码大模型训练与微调框架,旨在简化大规模语言模型(LLM)的微调、评估和部署流程,帮助开发者和研究人员更高效地定制和优化模型。
1.安装部署
1.1克隆仓库
bash
git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git
克隆成功如下图所示
1.2切换目录
bash
cd LLaMA-Factory

1.3通过conda创建python环境
bash
conda create -n llama-factory python=3.10

1.4激活虚拟环境
bash
conda activate llama-factory

1.5在conda环境中安装LLama-Factory相关依赖
bash
pip install -e ".[torch,metrics]" --no-build-isolation
安装过程如下
2.启动LLama-Factory可视化微调界面(由 Gradio 驱动)
bash
llamafactory-cli webui

3.在浏览器输入服务器ip+端口
启动成功如下图所示
4.从Hugging-Face上面下载基座模型
4.1创建一个文件夹统一存放所有基座模型
bash
mkdir Hugging-Face
4.2修改 HuggingFace 镜像源(加速下载)
bash
export HF_ENDPOINT=https://hf-mirror.com

4.3修改模型默认下载位置
bash
export HF_HOME=/data/Hugging-Face

NOTES:
4.2和4.3的做法是在临时会话中生效,如果想要永久化生效,如下操作:
(1)打开配置文件
bash
sudo vi ~/.bashrc
(2)写入以下内容
bash
export HF_ENDPOINT=https://hf-mirror.com
export HF_HOME=/data/Hugging-Face

(3)配置生效
bash
source ~/.bashrc

(4)验证生效即可
bash
echo $HF_HOME
echo $HF_ENDPOINT
如下图所示
4.4安装HuggingFace官方下载工具
bash
pip install -U huggingface_hub
NOTES:
1.pip install
Python 包管理工具的标准安装命令。
2.-U
参数
--upgrade
的简写,表示强制升级到最新版本(若已安装则更新)。
3.huggingface_hub
HuggingFace 官方提供的 Python 库,用于:
•访问 Hub 上的模型/数据集
•管理仓库和文件
•集成 Transformers/Diffusers 等库
执行成功如下
4.5执行下载命令
bash
huggingface-cli download --resume-download deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B
下载哪个模型到HuggingFace官网上面搜索即可
下载成功截图
模型位置
5.在LLamaFactory可视化页面上加载模型,检验是否加载成功
5.1选择模型

NOTES:
这里的模型路径不是整个模型文件夹,而是精确到模型特定快照的唯一哈希值snapshots
路径如下所示
5.2执行测试
5.2.1 分别点击chat->加载模型,出现如下界面即为成功
5.2.2 聊天测试
下图即为成功
6.准备用于训练的数据集并添加到指定位置
6.1到LLamaFactory官网看标准数据集的格式
如下图所示
6.2选择合适的数据集格式并制作自己的dataset
我这里选的是下面这个
6.3按照格式制作我的数据集
我的数据集如下图所示,如果有想要的可以在文章结尾自取(用于测试讲解的数据集 )
6.4将数据集添加到指定位置
6.4.1将数据集Hututu.json
文件放到LLamaFactory->data目录下面
由于是服务器,所以你需要使用scp把文件推上去,也就是说:通过scp命令,将win11系统上文件传输到ubuntu22上
bash
scp D:\Users\an\下载\Hututu.json ubuntu@10.66.101.2:/home/ubuntu/LLaMA-Factory/data
NOTES:
文件路径根据实际情况而定,是否用绝对路径看自己
传输成功截图
在服务器上查看存在
6.5修改dataset_info.json
文件,使其可以找到咱们的数据集Hututu.json
打开dataset_info.json
文件
bash
vi dataset_info.json
写入以下内容并保存退出
bash
"Hututu": {
"file_name": "Hututu.json"
},
如下图所示
保存退出
bash
:wq!
6.6在LLamaFactory前端页面上填写数据集路径
如下图所示
NOTES:
这个要根据自己的实际路径填写