llamafactory微调

1.启动llamafactory可视化页面选择模型

docker部署完成后

bash 代码解读复制代码#运行此命令进入容器内部

docker exec -it llamafactory /bin/bash

启动可视化页面

llamafactory-cli webui

然后在本机访问localhost:7860

语言和需要的模型,在此选择后,模型路径会自动填充,启动训练时会自动向huggingface下载base模型,但由于国内原因,可能无法访问到huggingface,可以选择设置魔搭下载地址

set USE_MODELSCOPE_HUB=1

或者使用本地地址,这边是使用了本地地址 首先在魔搭社区选择需要的文件git 拉取到本地

第一次需要安装git-lfs

git lfs install

后选择需要的模型地址git clone即可

文件映射

由于我们使用的是docker部署的llamafactory,因此调用模型前,需要将本地的模型文件夹映射到docker镜像中,建议一并设置多个路径用以存放微调后的模型文件,命令行中输入多个映射对即可

bash 代码解读复制代码docker run -v <本地存放目录>:<容器目录> <镜像名称> <本地存放目录>:<容器目录> <镜像名称>

然后在模型路径中填写该文件在docker镜像的地址

继续选择参数

数据集设置

提示模板一定要选取,不同模型对应的模板也是不尽相同的,如果有自定义格式文件,可导入到镜像中,然后在data_info.json中进行注册,否则无法在列表选择

然后是比较关键的几个参数,对训练结果影响巨大

选择数据集后,学利率可以选择默认5e-5

bash 代码解读复制代码#学习率

#学习率越低,训练越准确,相应的时间会更长

#对于llama3.1-8b 选择低一点的学习率比较好

#轮数

#训练轮次

#最大样本数

#即为'训练时在提供的每个数据集最多提取多少个样子进行训练'

#数据集较多的情况下建议适当设置更小的参数

训练轮数(!!!)

轮数的设置

目前没有更好的办法,全凭经验对新手是不友好的,比较推荐的方案是设置一个相当大的轮数,在训练过程中关注loss曲线,当曲线越趋近于平滑,说明训练已经接近完成,此时应手动停止训练以避免过拟合

当然也支持命令行调用训练的方式

测试和导出

切换chat Tab

补全上次训练的检查点路径加载,即可发起对话,此时您可以初步判断训练效果了(留坑,后续更新ragas评估)

切换export Tab ,选择上次训练的检查点,填写导出目录(注意:需填写docker镜像内部目录),如果您目录已经映射本地,则可以在本地文件中查看到训练后的safetensors文件

llamafactory就到此完成,后续会更新借助llama.cpp的量化和ollama部署

相关推荐
王上上2 小时前
# 【机器学习-20】-数值计算误差、逻辑回归/Softmax的数值稳定性优化、以及TensorFlow实现细节
机器学习·tensorflow·逻辑回归
人工智能AI酱2 小时前
【AI深究】逻辑回归(Logistic Regression)全网最详细全流程详解与案例(附大量Python代码演示)| 数学原理、案例流程、代码演示及结果解读 | 决策边界、正则化、优缺点及工程建议
人工智能·python·算法·机器学习·ai·逻辑回归·正则化
爱喝可乐的老王2 小时前
机器学习监督学习模型--逻辑回归
人工智能·机器学习·逻辑回归
Ao0000002 小时前
机器学习——逻辑回归
人工智能·机器学习·逻辑回归
ZTLJQ2 小时前
深入理解逻辑回归:从数学原理到实战应用
开发语言·python·机器学习
一段佳话^cyx2 小时前
详解逻辑回归(Logistic Regression):原理、推导、实现与实战
大数据·算法·机器学习·逻辑回归
码农三叔3 小时前
(10-5-03)大模型时代的人形机器人感知:基于RoboBrain大模型的人形机器人通用智能感知系统(3)模型训练
人工智能·机器学习·机器人·人形机器人
PhotonixBay8 小时前
共聚焦显微镜的结构组成与应用
人工智能·算法·机器学习
佚名ano10 小时前
支持向量机SVM的简单推导过程
算法·机器学习·支持向量机
lisw0510 小时前
用于实时数据处理的边缘计算!
人工智能·机器学习·边缘计算