记录Linux上安装LLaMA Factory v0.8.3 增量预训练/监督微调

序:SFT 和 PT 的区分 

sft(Supervised Fine-Tuning,监督微调)
  • 定义:sft是一种基于监督学习的微调方法,它使用标记好的数据(即带有输入、指令和期望输出的数据集)来进一步训练已经预训练好的模型。这种方法允许模型针对特定任务或领域进行优化,以提高其性能。
  • 数据格式:如图片文字文本所述,sft通常基于一种特定的数据格式,其中每个样本包含三个主要部分:input(输入内容)、instruction(指令或任务描述)和output(期望的输出)。这种格式使得模型能够学习如何根据给定的指令处理输入并生成相应的输出。
  • 应用场景:sft在NLP领域特别有用,因为它允许模型针对如文本生成、机器翻译、问答系统等具体任务进行定制和优化。
pt(Pre-Training,预训练)
  • 定义:pt是指在大规模未标记的数据集上对模型进行初步训练的过程。预训练的目的是让模型学习到语言的通用表示,这些表示可以在后续的任务中用作起点,通过微调来适应特定任务。
  • 任务类型:pt通常涉及自回归任务(autoregressive tasks),这类任务要求模型根据前面的内容预测接下来的内容。在NLP中,这通常意味着模型需要学习如何根据给定的文本序列预测下一个单词或句子。
  • 与sft的区别
    • 数据需求:pt主要依赖于大规模未标记的数据集,而sft则需要标记好的数据集。
    • 目标:pt的目标是学习到语言的通用表示,而sft的目标是根据特定任务或领域进一步优化这些表示。
    • 初始化:在继续预训练(即从预训练模型出发进行更多训练)和从零开始预训练之间,主要区别在于模型的初始化。继续预训练使用已经预训练好的模型参数作为起点,而从零开始预训练则随机初始化模型参数。

1、LLaMA Factory 安装

1.1 LLaMA Factory 源码下载
方法一:Git
git clone https://github.com/hiyouga/LLaMA-Factory.git
方法二:下载压缩包源码,解压
#下载命令
wget https://github.com/hiyouga/LLaMA-Factory/archive/refs/tags/v0.8.3.tar.gz  

#解压命令
tar -xzvf v0.8.3.tar.gz
1.2 LLaMA Factory 环境配置
conda create -n llama_factory python=3.10 #配置镜像源看上篇文章内容
conda activate llama_factory    #进入conda环境
cd LLaMA-Factory-0.8.3/    #进入文件
pip install -e .[metrics]    #安装所需包
1.3 LLaMA Factory 启动
export CUDA_VISIBLE_DEVICES=0 
python src/webui.py 

服务器启动结果如下:

访问服务器地址+端口即可,webui成功如下,

遇到的错误:

但是当前python环境是3.10,可能因为在Docker部署的,有其他的包,显示一直用的python3.8,最后重新执行了下环境部署,再运行可以。。。

2、LLaMA Factory 模型下载

方法一:从页面选中模型后,自动下载,类似Xinference,设置下载源即可。
export USE_MODELSCOPE_HUB=1  
方法二:自己下载模型,把下载后的模型存放路径放入上面webui的模型路径即可,例如从魔搭下载:魔搭社区
#模型下载
from modelscope import snapshot_download
model_dir = snapshot_download('模型')

官网下载方法蛮多,可以去试试看。

默认会下载到/.cache/modelscope/hub中,如果需要修改下载目录,可以更改:

export MODELSCOPE_CACHE==/xxx/xxx/xxx/

 3、LLaMA Factory 数据集

3.1 使用内置数据集

llama_factory中的 data文件夹提供了蛮多的数据集,开源的。

3.2 配置自己的数据集

将json数据集放到data文件夹下,然后修改 data/dataset_info.json 文件即可,

vim data/dataset_info.json
 "myselfdata": {
    "file_name": "数据集名字.json"
  },

4、LLaMA Factory 训练

最新版本功能蛮丰富了,几乎包含所有,在下图标注的训练阶段,选择即可,包括PT、SFT、PPO、DPO、KTO、Reward Modeling,其他的一些参数看个人配置。

附录官网上的一些操作指令,https://github.com/hiyouga/LLaMA-Factory/tree/main/examples

可以在预览命令那,保存执行脚本,存成 .sh 文件,不用每次都启动页面。

  • 34
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值