大模型学习之书生·浦语大模型4——基于Xtuner大模型微调实战

news2025/1/11 18:34:02

在这里插入图片描述

基于Xtuner大模型微调实战

在这里插入图片描述

Fintune简介

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

  • 海量数据训练的base model
  • 指令微调Instructed LLM

增量预训练微调

在这里插入图片描述
增量数据不需要问题,只需要答案,只需要陈述类的数据

指令跟随微调

在这里插入图片描述

  • 指定角色
  • 指定问题给对应的user
  • 指定答案给assistant

在这里插入图片描述

  • LIaMa2
  • InternLM
    不同的模型有不同的模板

在这里插入图片描述
只对答案部分进行损失计算

LoRA & QLoRA

在这里插入图片描述

  • LoRA在原本模型旁新增两个小的分支,旁路分支的参数Adapter
  • 参数远远小于原本模型的参数

在这里插入图片描述

  • 全参数训练:加载到显存中会占用大量的内存
  • LoRA:只加载部分参数
  • QLoRA:先进行量化再加载

XTuner

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

快速上手

在这里插入图片描述

自定义训练

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
训练好之后得到Adapter参数文件,在启动的时候,既要加载原始基座模型,同时也要加载训练好的Adapter模型文件

在这里插入图片描述

  • 类似于gpt中的Plugin,专业的工具类模型

数据处理引擎

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

  • 集成了很多映射函数,省掉开发的很多工作

在这里插入图片描述

  • 支持数据拼接,增强并行性,充分利用大显存

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

  • json格式数据集

8GB显存玩转LLM

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

  • 默认开启Flash Attention
  • 集成了DeepSpeed

在这里插入图片描述

动手实践环节

在这里插入图片描述

创建服务器

在这里插入图片描述
并配置本地公钥

创建虚拟环境

在这里插入图片描述

微调

准备配置文件

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

  • 采用qlora_oasst1_e3
模型下载

在这里插入图片描述

数据集下载

在这里插入图片描述

修改配置文件

在这里插入图片描述

  • 修改模型路径
  • 修改数据集路径
  • max_epochs = 1 节省时间及算力
超参

在这里插入图片描述

开始微调

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

  • 训练非常耗时
  • 可以使用deepspeed加速
  • 可以使用tmux起训练,避免中断
将得到的模型文件转换成HuggingFace模型

在这里插入图片描述

部署与测试

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

  • 注意不同的模型有不同的template
Demo
  • 修改模型文件
    在这里插入图片描述
    在这里插入图片描述
  • 对比微调前和微调后的模型
    在这里插入图片描述
  • 启动参数

自定义微调在这里插入图片描述

  • 数据集 Medication QA
准备数据

在这里插入图片描述

转化为XTuner数据格式

在这里插入图片描述

  • 可以利用gpt帮忙写代码
    在这里插入图片描述
    在这里插入图片描述
划分训练集和测试集

在这里插入图片描述

开始自定义微调

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

  • 修改配置文件:模型文件路径,数据集路径

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

  • 启动训练
  • 加入deepspeed加速
  • 将得到的模型转成huggface格式

用MS-Agent赋予LLM Agent能力

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
MS-Agent包含大量这样的数据,可以基于这样的数据训练具有这样能力的LLM
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 下载Adapter
    在这里插入图片描述
  • 添加请求服务的API插件
    在这里插入图片描述
  • 俩模型可以merge
  • 也可以adapter参数
    在这里插入图片描述
    在这里插入图片描述
  • 注释掉该语句

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

  • API调用有问题

参考

  • Xtuner

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1373371.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【大数据】NiFi 中的处理器(二):PutDatabaseRecord

NiFi 中的处理器(二):PutDatabaseRecord 1.基本介绍2.属性配置3.连接关系4.应用场景 1.基本介绍 PutDatabaseRecord 处理器使用指定的 RecordReader 从传入的流文件中读取(可能是多个,说数组也成)记录。这…

最实用的 8 个免费 Android 数据恢复软件

如果您正在寻找最好的免费 Android 数据恢复软件,那就不用再犹豫了,因为我已经列出了最好的软件。不可否认,智能手机和平板电脑等 Android 设备正在与技术一起发展。与以前相比,它们也更加融入了我们的日常生活。 Android 智能手…

Jenkins-Pipeline语法总结大全

这里写目录标题 pipeline的组成1、pipeline最简单结构1.1、pipeline1.2、stages1.3、stage1.4、steps1.5、agent 2、post3、pipeline支持的命令3.1、environment3.2、tools3.3、input3.4、options3.5、parameters3.6、parallel3.7、triggers3.8、when pipeline的组成 1、pipel…

Django 框架添加管理员,完成对普通用户信息管理

前情回顾:Django框架 完成用户登录注册 文章目录 1.创建管理员2.完善管理员功能2.1增加管理员登录功能2.2完善展示用户信息功能2.3完善修改用户信息功能2.4完善删除用户信息功能 1.创建管理员 一般管理员都是直接指定,不开放页面注册,可以直…

论文阅读1---OpenCalib论文阅读之factory calibration模块

前言 该论文的标定间比较高端,一旦四轮定位后,可确定标定板与车辆姿态。以下为本人理解,仅供参考。 工厂标定,可理解为车辆相关的标定,不涉及传感器间标定 该标定工具不依赖opencv;产线长度一般2.5米 Fa…

羌族特色民居----碉楼

羌族是四川的一个少数民族,他们独具特色的民居就是----碉楼。在羌语中,碉楼被称为“邓笼”,意为美丽、高贵的房子,羌族人有“依山而居,垒石为屋,高者十余丈”的习俗。碉楼的高度在十米至三十米之间。用于御…

基于Java的 人才管理系统的设计与实现

当前企业人才招揽的方式更多是通过传统的线下招聘会或职业介绍所来实现的,其不但受众具有很大的局限性,而且往往不可能在短时间内招聘的需要的人才。而互联网的普及为企业人才招聘和管理的方式带来了翻天覆地的改变。通过互联网将人才信息统一管理起来成…

【sklearn练习】模型评估

一、交叉验证 cross_val_score 的使用 1、不用交叉验证的情况: from __future__ import print_function from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split from sklearn.neighbors import KNeighborsClassifieriris…

Abp 创建一个模版demo并运行

Demo效果 :简单的单表crud后台服务。不包含UI 项目类型是模块ABP。生成的结构和 多应用/单应用 有差异。 结合文档以及git的源码分享一下demo的理解 abp文档:API/Auto API Controllers | Documentation Center | ABP.IO 前置准备: Net8 环境…

【Linux】Linux系统编程——Linux目录结构

Linux的文件系统呈现为一种树状结构,以根目录/为最顶层,其下分布着各种不同的子目录,每个目录都有其特定的用途和功能。下面是Linux目录结构的详细介绍: 1. 根目录 / 根目录是整个文件系统的基础。所有的目录和文件都从这里开始…

智能制造与MES:推动制造业转型升级的关键

随着科技的迅猛发展,智能制造已经成为推动制造业转型升级的重要手段。而制造执行系统(MES)作为智能制造的核心管理系统,在提高生产效率、优化生产流程、实现数字化转型等方面发挥着重要作用。 一、智能制造的概念与特点 智能制造…

极狐 GitLab 冷知识:使用 Email 也可以创建 Issue?

前言 在使用 GitLab 时,创建 Issue 和 Merge Request 的方法,除了常规的使用 GitLab Web UI 进行操作和通过 API 调用操作,还有一些比较好玩的,比如使用 Email 来创建。 Incoming email 如果是 Self-Manager 的 GitLab 用户&am…

少儿编程 2023年12月中国电子学会图形化编程等级考试Scratch编程三级真题解析(判断题)

2023年12月scratch编程等级考试三级真题 判断题 19、下列两段程序的运行效果相同 答案:对 考点分析:考查积木综合使用,重点考查循环积木的使用;左边属于有条件的循环,由变量的值控制,当变量值大于50时,循环停止,而变量始终为零,不满足条件,所以一直循环,和右边的…

市场复盘总结 20240110

仅用于记录当天的市场情况,用于统计交易策略的适用情况,以便程序回测 短线核心:不参与任何级别的调整,采用龙空龙模式 昨日主题投资 连板进级率 33% 二进三: 进级率低 50% 最常用的二种方法: 方法一&…

观成科技-加密C2框架EvilOSX流量分析

工具简介 EvilOSX是一款开源的,由python编写专门为macOS系统设计的C2工具,该工具可以利用自身释放的木马来实现一系列集成功能,如键盘记录、文件捕获、浏览器历史记录爬取、截屏等。EvilOSX主要使用HTTP协议进行通信,通信内容为特…

Android可换行的RadioGroup

Android可换行的RadioGroup,有时候需要换行显示的单选列表,当然可以有多种实现方式,比如recycleview或者listview实现,本文采用的是RadioGrouprediobutton方式实现。 一、首先自定义view public class WrapRadioGroup extends RadioGroup {pr…

领域专家精心讲解AI视频生成

大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的…

初识 Elasticsearch 应用知识,一文读懂 Elasticsearch 知识文集(2)

🏆作者简介,普修罗双战士,一直追求不断学习和成长,在技术的道路上持续探索和实践。 🏆多年互联网行业从业经验,历任核心研发工程师,项目技术负责人。 🎉欢迎 👍点赞✍评论…

PPT插件-大珩助手-快速构建自己的图形

绘图板-快速构建自己的图形 通过手绘的方式,快速构建自己的想法和创意,通过在PPT中插入绘图,植入背景透明的绘图,点击画笔可切换橡皮擦,可以清空画板重新绘制。 素材库-存储图形 通过素材库存储自己的图形 图形调整…

【Emgu.CV教程】4.4、无缝融合应用之TextureFlattening()纹理扁平化

这是无缝融合应用的最后一篇,TextureFlattening()函数,专门用于对图像指定部位进行纹理扁平化的。这个功能现在讲起来有点太早了,应该放到《图像的空间滤波--平滑》这一章节中才合适。因为它就是用Sobel算子进行平滑,也就是在保留…