当前位置: 首页 > news >正文

LLaMA-Factory微调大模型

LLaMA-Factory安装

github 下载 LLaMA-Factory项目
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

创建虚拟环境

conda create -n  llama_factory python==3.10 

激活

 activate llama_factory

torch 安装

conda install pytorch==2.3.1 torchvision==0.18.1 torchaudio==2.3.1 pytorch-cuda=12.1 -c pytorch -c nvidia

依赖安装

pip install requirements.txt

在这里插入图片描述
解决方案:

pip install -r F:\conda_work\LLaMA-Factory-main\requirements.txt

在这里插入图片描述
在这里插入图片描述

pip install -e .[metrics]

在这里插入图片描述

检测 llamafactory 命令有哪些

llamafactory-cli train -h 

在这里插入图片描述

启动

llamafactory-cli webui

如果要开启 gradio的share功能,或者修改端口号

// 改端口 改IP 端口默认是7860  GRADIO_SHARE是允许远程访问 USE_MODELSCOPE_HUB设为1,表示模型来源是ModelScope
USE_MODELSCOPE_HUB=1 CUDA_VISIBLE_DEVICES=0 GRADIO_SHARE=1 GRADIO_SERVER_PORT=7860 

在这里插入图片描述
在这里插入图片描述
设置中文语言
在这里插入图片描述

下载模型

下载开源模型

在这里插入图片描述
在这里插入图片描述

微调数据集

偏好数据
sft微调一般用alpaca格式,dpo优化的偏好数据一般用sharegpt 格式

DPO优化偏好数据集
下面是DPO优化偏好数据集示例:
https://huggingface.co/datasets/hiyouga/DPO-En-Zh-20k/viewer/zh?row=5

HelpSteer2
英伟达开源的HelpSteer2
https://huggingface.co/datasets/nvidia/HelpSteer2
论文:https://arxiv.org/pdf/2406.08673

数据集注册
数据集格式
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
自定义数据集
创建 dataset_info.json 文件,这个文件需要放到 LLaMA-Factory-main\data 目录下

在这里插入图片描述

我们用longgeai的甄嬛数据集进行测试
我们先下载alpaca格式的 huanhuan.json数据集
可以在这儿下载数据集进行测试:https://www.modelscope.cn/datasets/longgeai3x3/huanhuan-chat/files
在这里插入图片描述
将下载的 huanhuan.json文件放到data目录

在这里插入图片描述
然后打开 dataset_info.json 文件,将 huanhuan.json 注册进去

    "huanhuan_chat": {
    "file_name": "huanhuan.json"
  },

在这里插入图片描述
保存之后在界面上就可以找到
在这里插入图片描述
点击预览数据集可以查看数据集的格式
在这里插入图片描述

微调

对话模版 选择 qwen 是因为我这里的底座模型选择的是qwen系列的
微调方法:一般选择lora ,显卡的要求较低
量化等级:如果 Qlora 这里就要选择量化等级
训练阶段:做私有知识库就选sft
数据集:可以选择自定义的,后文会介绍如何自定义
批处理大小:是根据显卡发小以及数据集的大小进行调整的
计算类型:老显卡不支持bf16

在这里插入图片描述

在这里插入图片描述
中断继续训练
中断之后继续训练,可以使用下面命令,训练步数也会从保存的checkpoint处开始,比如checkpoint保
存点是400步,但是在450步中断,会从400步开始继续

/workspace/checkpoint/codellama34b_5k_10epoch/checkpoint-4000
--output_dir new_dir
#--resume_lora_training #这个可以不设置
#如果不需要换output_dir,另外两条命令都不加,脚本会自动寻找最新的 checkpoint
--output_dir /workspace/checkpoint/codellama34b_5k_10epoch

当然使用命令训练,没有用webui看loss那么直观,需要加一个命令

--plot_loss # 添加此参数以生成loss图

如果可以通过添加命令,从检查点开始继续训练,但训练集会从头开始训练,适合用新数据集继续训练

#lora的保存路径在llama-factory根目录下,如saves\Qwen2-7B-int4-Chat\lora\train_2024-
07-17-15-56-58\checkpoint-500
--adapter_name_or_path lora_save_patch

相关文章:

  • 网络爬虫-4:jsonpath+实战
  • 一个轻量级的 SQLite ORM 工具包
  • c++测试题
  • C# 反射(Reflection)详解
  • Java EE(16)——网络原理——TCP协议解析二
  • 深度解析历年蓝桥杯算法题,助力提升编程技能
  • ngx_http_core_server_name
  • 文献分享: ColXTR——将ColBERTv2的优化引入ColXTR
  • [动手学习深度学习]28. 批量归一化
  • AF3 Rotation类的map_tensor_fn 方法解读
  • Oracle 23ai Vector Search 系列之1 架构基础
  • RT-Thread CI编译产物artifacts自动上传功能介绍
  • python socket模块学习记录
  • KPMG 与 SAP Joule:引领 AI 驱动咨询的新时代
  • 什么情况下spring的事务会失效
  • 私域电商的进化逻辑与技术赋能:基于开源AI大模型与S2B2C商城的创新融合研究
  • C#设计模式快速回顾
  • C语言- 工厂模式详解与实践
  • 常见中间件漏洞攻略-Apache篇
  • datetime“陷阱”与救赎:扒“时间差值”证道
  • 视频丨美国两名男童持枪与警察对峙,一人还试图扣动扳机
  • 牛市早报|中美日内瓦经贸会谈联合声明公布
  • 这些网红果蔬正在收割你的钱包,营养师:吃了个寂寞
  • 外交部就习近平主席将出席中拉论坛第四届部长级会议开幕式介绍情况
  • 1至4月全国铁路完成固定资产投资1947亿元,同比增长5.3%
  • 中国科协发声:屡禁不止的奇葩论文再次敲响学风建设警钟