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

LLaMA-Factory 微调训练

LLaMA-Factory 微调训练

该框架功能,标注-微调-导出-合并-部署,一整条流程都有,而且训练时消耗的gpu算力也会小一些

一,安装(推荐在linux中训练,win可以用wsl+docker)

git clone https://github.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory# 根据cuda版本选择安装pytoch版本
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
# 提前把gpu版本的torch安装好
pip install -e .[torch,metrics]# 遇到包冲突时,使用 pip install --no-deps -e . 解决
# 测试torch是否可用gpu
命令行输入pythonimport torch
print(torch.cuda.is_available())  #返回True则说明torch可用gpu

二,训练
1,数据集的准备和配置
参考:https://github.com/hiyouga/LLaMA-Factory/blob/main/data/README_zh.md

# 我自己使用的是 角色对话 的数据集格式[{"conversations": [{"from": "human","value": "人类指令"},{"from": "gpt","value": "模型回答"}],"system": "系统提示词(选填)",}
]

需要同步修改 dataset_info.json 中的配置(开始训练时会根据这个文件去找定义好的存放数据的json文件)

 "yi_6b_chat": {"file_name": "yi_6b_chat_520_24000.json","formatting": "sharegpt", # 表示数据使用的格式"tags": { # 和数据集中的格式一一对应 "role_tag": "from","content_tag": "value","user_tag": "human","assistant_tag": "gpt"}},

2,训练,启动web ui界面(ui 界面训练只支持单卡,多卡只能通过命令行训练)

训练命令:

CUDA_VISIBLE_DEVICES=0 GRADIO_SHARE=1 llamafactory-cli webui

三,vllm部署(不一定是llama3的模型,自己根据 llama3_vllm.yaml 配置修改就行,配置文件中也可用修改用huggingface部署)
1,vllm安装很多坑,pytorch版本和cuda版本必须保持一致兼容,使用pytoch的docker镜像可用省事很多,先看pytorch的版本,pytorch版本11.8,12.1,最好是cuda11.8版本的cuda和torch
2,vllm启动会预先分配一定的显存,也可用自行修改,如还有其他应用要启动,可用调低一些

启动命令:

CUDA_VISIBLE_DEVICES=0,1 API_PORT=8000 llamafactory-cli api examples/inference/llama3_vllm.yaml

相关文章:

LLaMA-Factory 微调训练

LLaMA-Factory 微调训练 该框架功能,标注-微调-导出-合并-部署,一整条流程都有,而且训练时消耗的gpu算力也会小一些 一,安装(推荐在linux中训练,win可以用wsldocker) git clone https://githu…...

阿里云ECS服务器怎么设置时区

在自己部署在阿里云服务器上的应用中,控制台打印的日志时间和本地不一致,于是决定修改阿里云服务器的时区为Asia/Shanghai。 具体操作如下: 第一步:连接服务器 通过finalshell等连接工具通过公网IP连接到服务器。 第二步&#…...

【698协议】帧校验算法

698协议,帧校验算法 帧格式 帧校验范围 校验算法 #include "fcs16.h" /* * u16 represents an unsigned 16-bit number. Adjust the typedef for * your hardware. * Drew D. Perkins at Carnegie Mellon University. * Code liberally borrowed from M…...

FileZilla“服务器发回了不可路由的地址,使用服务器地址代替

问题:在宝塔创建的FTP无法使用,提示“服务器回应不可路由的地址。使用服务器地址代替 第一种解决办法:由于宝塔把FTP被动模式端口范围设置成了39000-40000,所以只需要把阿里云服务器上相应的端口范围开放即可。 第二种解决办法&am…...

【路径规划】基于遗传算法GA实现最短距离 多起点多终点多旅行商问题求解附Matlab代码

基于遗传算法GA实现最短距离 多起点多终点多旅行商问题求解 研究背景:研究步骤:研究方法和技术路线:代码研究背景: 多起点多终点多旅行商问题是旅行商问题(TSP)的一个扩展,该问题要求确定多个旅行商从各自的起点出发,分别经过一系列目标点最终回到各自的终点,使得总路…...

计算机毕业设计 | springboot+vue房屋租赁管理系统(附源码)

1,绪论 1.1 课题来源 随着社会的不断发展以及大家生活水平的提高,越来越多的年轻人选择在大城市发展。在大城市发展就意味着要在外面有一处安身的地方。在租房的过程中,大家也面临着各种各样的问题,比如需要费时费力去现场看房&…...

重大活动网络安全保障建设及运营指南

在当今高度数字化的社会中,各类重大活动如会议、展览、赛事及庆典等正面临着日益复杂和严峻的网络安全威胁。这些威胁不限于网络入侵或数据泄露,更涉及到对基础设施、关键信息系统和公众舆论的复杂攻击,需要国际社会的密切合作和长期关注。因…...

基于信号分解方法的机械故障诊断方法存在的问题

一方面,由于结构共振、测试噪声的干扰,为了确保分解精度,需要给定准确的参数初值(例如,瞬时频率)。研究人员通常认为零部件特征频率与通过传动比和驱动转速计算的理论值基本吻合,并基于理论值设置参数初值。事实上&…...

faster_whisper语音识别

faster_whisper语音识别 检测可用设备:list_available_devices()函数 我这边usb摄像头带麦克风的,所以 DEV_index 8 1 使用 pyaudio 打开音频设备 2 从音频设备读取数据,传递给 faster_whisper 识别 按键 r 录制 s 停止 q退出 test.py #…...

Java锁的策略

White graces&#xff1a;个人主页 &#x1f649;专栏推荐:Java入门知识&#x1f649; &#x1f649; 内容推荐:<多线程案例(线程池)>&#x1f649; &#x1f439;今日诗词:"你我推心置腹, 岂能相负"&#x1f439; 目录 锁的策略 乐观锁和悲观锁 轻量级锁…...

521源码-免费代码基础学习-PHP如何运用变量教程

更多网站源码学习教程&#xff0c;请点击&#x1f449;-521源码-&#x1f448;获取最新资源 为什么要学习PHP&#xff1f;“我可以用JavaScript来实现程序编写。”但JavaScript的能力是有限的&#xff0c;JavaScript通常运行在浏览器&#xff08;客户端&#xff09;&#xff0…...

单选或者多选的知识问题调研系统,怎么使用Neo4j的图数据库来实现

为了使用Neo4j的图数据库实现单选或多选的知识问题调研系统&#xff0c;你需要设计和实现以下几个步骤&#xff1a; 设计节点和关系插入数据定义查询和更新逻辑开发前端和后端应用来与Neo4j进行交互 1. 设计节点和关系 节点类型 Question&#xff1a;表示一个问题&#xff…...

【微机原理及接口技术】可编程并行接口芯片8255A

【微机原理及接口技术】可编程并行接口芯片8255A 文章目录 【微机原理及接口技术】可编程并行接口芯片8255A前言一、8255A的内部结构和引脚1.与外设接口&#xff08;数据端口&#xff09;2.与处理器接口 二、8255A的工作方式三、8255A的编程1. 写入方式控制字&#xff1a;控制字…...

第3天 Web源码拓展_小迪网络安全笔记

1.关于web源码目录结构 #数据库配置文件 后台目录 模板目录 数据库目录 1.1数据库配置文件: 1.1就拿wordpress来说,先到官网下载源码:Download – WordPress.org,解压源码之后: 2.2找到目录下名为 wp-config-sample.php的文件,这就是数据库配置文件: 设想: 我们在渗透…...

基于物联网技术的智能家居实训教学解决方案

引言 随着信息技术的飞速发展&#xff0c;&#xff0c;物联网&#xff08;IoT&#xff09;已深入至我们生活的每一个角落&#xff0c;从智能家居、智能健康、智能交通到智慧城市&#xff0c;无所不在。物联网技术已成为推动社会进步和产业升级的重要力量。智能家居作为物联网技…...

K-近邻算法(KNN)基础详解

K-近邻算法(K-Nearest Neighbors,简称KNN)是机器学习中一种简单而有效的监督学习方法,用于分类和回归任务。其核心思想基于“物以类聚,人以群分”的原则,通过计算待分类对象与已知数据集中的样本点之间的距离,找出距离最近的K个邻居,然后根据这些邻居的类别或数值来预测…...

spring aop 内部引用失效分析

背景 用了spring retry 发现在有些场景下失效&#xff0c;也让我想起了之前看spring 事务时会有一些场景下失效的这个问题 代码 接口public interface UserService {public void start() ;public void stop(); }实现类 Service public class UserServiceImpl implements User…...

IEDA常用快捷键(后续更新ing)

1. 快速生成语句 1.快速生成main()方法 psvm或者main回车 2.快速生成输出语句 sout,回车 3.快速生成for循环 fori或者itar,回车 2.快捷键 含义操作查找文本CtrlF替换文本CtrlR单行注释Ctrl/多行注释CtrlShift/格式化CtrlAltL复制当前内容至下一行CtrlD补全代码Alt/快速生成…...

Day03—flask与react实现交互(解决跨域问题)

flask &#xff1a;默认的端口为 http://127.0.0.1:5000 react &#xff1a;默认端口为 http://localhost:3000 两个项目运行起来之后&#xff0c;没有实现前后端交互调用 弄了半天&#xff0c;是因为没有给flask 配置跨域 解决办法&#xff1a; pip install flask-cors from …...

JavaScript中的闭包

闭包 闭包是什么 内部函数(嵌套函数)能够访问其外部函数(父函数)的变量&#xff0c;即使外部函数执行完毕后&#xff0c;这些变量仍会保留在内存中&#xff0c;因为内部函数保持着对它们的引用&#xff0c;从而防止了垃圾回收机制回收这些变量。闭包是函数与其词法环境(包括外…...

Cinnamon修改面板小工具图标

Cinnamon开始菜单-CSDN博客 设置模块都是做好的&#xff0c;比GNOME简单得多&#xff01; 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...

【论文笔记】若干矿井粉尘检测算法概述

总的来说&#xff0c;传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度&#xff0c;通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...

VTK如何让部分单位不可见

最近遇到一个需求&#xff0c;需要让一个vtkDataSet中的部分单元不可见&#xff0c;查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行&#xff0c;是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示&#xff0c;主要是最后一个参数&#xff0c;透明度…...

大数据学习(132)-HIve数据分析

​​​​&#x1f34b;&#x1f34b;大数据学习&#x1f34b;&#x1f34b; &#x1f525;系列专栏&#xff1a; &#x1f451;哲学语录: 用力所能及&#xff0c;改变世界。 &#x1f496;如果觉得博主的文章还不错的话&#xff0c;请点赞&#x1f44d;收藏⭐️留言&#x1f4…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难&#xff0c;相信大家会学的很愉快&#xff0c;当然对于有后端基础的朋友来说&#xff0c;本期内容更加容易了解&#xff0c;当然没有基础的也别担心&#xff0c;本期内容会详细解释有关内容 本期用到的软件&#xff1a;yakit&#xff08;因为经过之前好多期…...

VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP

编辑-虚拟网络编辑器-更改设置 选择桥接模式&#xff0c;然后找到相应的网卡&#xff08;可以查看自己本机的网络连接&#xff09; windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置&#xff0c;选择刚才配置的桥接模式 静态ip设置&#xff1a; 我用的ubuntu24桌…...

【笔记】WSL 中 Rust 安装与测试完整记录

#工作记录 WSL 中 Rust 安装与测试完整记录 1. 运行环境 系统&#xff1a;Ubuntu 24.04 LTS (WSL2)架构&#xff1a;x86_64 (GNU/Linux)Rust 版本&#xff1a;rustc 1.87.0 (2025-05-09)Cargo 版本&#xff1a;cargo 1.87.0 (2025-05-06) 2. 安装 Rust 2.1 使用 Rust 官方安…...

MySQL 8.0 事务全面讲解

以下是一个结合两次回答的 MySQL 8.0 事务全面讲解&#xff0c;涵盖了事务的核心概念、操作示例、失败回滚、隔离级别、事务性 DDL 和 XA 事务等内容&#xff0c;并修正了查看隔离级别的命令。 MySQL 8.0 事务全面讲解 一、事务的核心概念&#xff08;ACID&#xff09; 事务是…...

三分算法与DeepSeek辅助证明是单峰函数

前置 单峰函数有唯一的最大值&#xff0c;最大值左侧的数值严格单调递增&#xff0c;最大值右侧的数值严格单调递减。 单谷函数有唯一的最小值&#xff0c;最小值左侧的数值严格单调递减&#xff0c;最小值右侧的数值严格单调递增。 三分的本质 三分和二分一样都是通过不断缩…...

怎么让Comfyui导出的图像不包含工作流信息,

为了数据安全&#xff0c;让Comfyui导出的图像不包含工作流信息&#xff0c;导出的图像就不会拖到comfyui中加载出来工作流。 ComfyUI的目录下node.py 直接移除 pnginfo&#xff08;推荐&#xff09;​​ 在 save_images 方法中&#xff0c;​​删除或注释掉所有与 metadata …...