书生浦语训练营第三次课笔记:XTuner 微调 LLM:1.8B、多模态、Agent

news2024/12/23 18:58:01

Finetune 简介

在这里插入图片描述
两种Finetune范式:增量预训练微调、指令跟随微调
在这里插入图片描述

微调数据集

在这里插入图片描述
在这里插入图片描述
上述是我们所期待模型回答的内容,在训练时损失的计算也是基于这个。
训练数据集看起来是这样,但是真正喂给模型的,是经过对话模板组装后的

下图中: <|System|>|<User>|等对话模板
在这里插入图片描述
在这里插入图片描述
对话模板的作用:为了让大语言模型知道什么时候开始一段对话,什么时候结束一段对话。
在这里插入图片描述
在这里插入图片描述

微调方案 LoRA & QLoRA


LoRA: 通过在原本模型的Linear旁新增一个旁路分支Adapter(两个连续的小Linear层)。可以简单的理解LoRA文件就是两个层的参数保存下来的东西。

在这里插入图片描述
全参数微调:整个模型加载到显存中,所有模型参数的优化器也要加载到显存中。非常吃显存
LoRA微调:整个模型加载到显存中,对于参数优化器,只需要保存LoRA部分的参数优化器,大大减小了显存的占用。
QLoRA微调:把模型本身加载到显存中时,就已经是使用4bit量化的方式加载。从而由节省了显存开销。

XTuner 介绍

在这里插入图片描述
在这里插入图片描述
在不同量级的模型上,训练速度都是比LLaMa-Factory显著的更快
在这里插入图片描述
与LLaMa-Factory相比,同样是LLaMa2 70B超大参数量的模型,在不同的数据长度下,Xtuner的表现也是比LLaMa-Factory更好
在这里插入图片描述
XTunner对性能优化和显存优化做的更好!

8GB显存玩转LLM

在这里插入图片描述
chat标记的模型是经过指令跟随微调后的模型,无chat就是基座模型
在这里插入图片描述
pack_to_max_length参数,比如说有一张24GB的显卡,如果不修改配置文件,只能占用8GB进行训练,20小时完成。这时就可以调整这个参数,使其占用满24GB
evaluation_inputs接受list,里面可以添加多个问题。
在这里插入图片描述

微调生成出来的结果是一个Adapter文件(保存QLoRA参数)
如果想与微调后的模型进行对话,则需要指定Adapter的路径

在这里插入图片描述
还支持工具类模型的调用

对于各种格式不一样的开源数据集,XTunner加载时写好了映射参数,可以自动变成统一的对话格式
在这里插入图片描述

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

InternLM2 1.8B 模型

在这里插入图片描述
Xtunner中内置的两种加速方式:Flash Attention、DeepSpeed ZeRO

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

多模态LLM微调

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

LLaVA方案:文本问题+图片作为输入,文本回答作为输出

在这里插入图片描述
Finetune阶段是指令跟随阶段,可以让大模型了解到我们想问什么,从而根据我们的问题回答。
这个过程和之前所说的:增量预训练+指令微调类似
在这里插入图片描述

Pretrain阶段数据集:图片+描述

在这里插入图片描述
Finetune阶段的数据:不仅有问题描述图片,还有很多个关于图片的一问一答的问答对。

动手实战环节

在这里插入图片描述

在这里插入图片描述
没有经过Finetune,只经过Pretrain阶段的模型,只会对图片进行打标签
在这里插入图片描述
根据Finetune后会根据图像回答问题了

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

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

相关文章

tomcat+nginx 动静分离

一、单机反向代理 7-1 7-2 测试 二、多机反向代理 1. 环境准备 机器IP地址服务7-1172.168.1.11nginx7-2172.168.1.12tomcat7-3172.168.1.13tomcat 2. 配置7-1 Nginx 服务器 vim /apps/nginx/conf/nginx.confhttp:upstream tomcat {server 172.168.1.12:8080;server …

优化理论复习——(三)

本篇介绍无约束优化的问题&#xff0c;通过四种算法来进行求解的过程和思路&#xff0c;也是最优化方法中的最重要的一类问题。 无约束优化问题主要是通过迭代搜索算法来切结&#xff0c;比线性规划的计算量都小一点。 目录 无约束优化问题最优性条件最速下降法牛顿法共轭梯度…

Vue踩坑,less与less-loader安装,版本不一致

无脑通过npm i less -D安装less之后&#xff0c;继续无脑通过npm i less-loader -D安装less-loader出现如下错误&#xff1a; 解决方法&#xff1a; 1) npm uninstall less与 npm uninstall less-loader 2) 直接对其版本&#xff1a; npm i less3.0.4 -D npm i less-loader…

渠道管控治理思路建议

品牌在做控价时&#xff0c;一定要有渠道一体化的治理想法&#xff0c;不能只能打击某一家店铺为想法进行治理&#xff0c;比如只打击非授权&#xff0c;只不去管理授权体系的经销商店铺&#xff0c;这显然是不行的&#xff0c;管理非授权的同时&#xff0c;授权也要管理好&…

QT+网络调试助手+TCP客户端

一、网络调试助手UI界面 编程主要思路&#xff1a; 首先将水平的控件 水平布局 &#xff0c;然后相对垂直的控件 垂直布局 &#xff0c;哪怕是底下的groupBox也需要和里面的内容 水平布局&#xff0c;然后最后框选全部 栅格布局。如果需要界面自适应窗口大小&#xff0c…

基于TL431的线性可调恒压恒流电源的Multisim电路仿真设计

1、线性电源的工作原理 在我们日常应用里&#xff0c;直流电是从市电或电网中的交流电获取的。例如15V直流电压源、24V直流电压源等等。交流电变为直流电的过程大概分为一下几步&#xff1a; 首先&#xff0c;交流电通过变压器降低其电压幅值。接着&#xff0c;经过整流电路进…

【Axure高保真原型】拖动穿梭选择器

今天和大家分享拖动穿梭选择器的原型模板&#xff0c;我们可以拖动两个选择器里的选项标签&#xff0c;移动到另外一个选择器里。那这个原型模板是用中继器制作的&#xff0c;所以使用也很方便&#xff0c;只需要在中继器表格里填写选项信息&#xff0c;即可自动生成交互效果&a…

SiteServer 插件之 用户登录插件-用户注册

1、请确保已经安装了“用户登录插件”,如下图。 2、 显示管理->包含文件管理->include/header.html->编辑,如下图。 3、代码如下。 <header><div class="wrap"><div class="top-box clearfix"><div class="left-box…

【AI】openai-quickstart 运行Jupyter Lab

openai-quickstart/openai_api /README-CN.md 【AI】指定python3.10安装Jupyter Lab 可以安装3.10版本的jupyter lab 但是直接输入命令无法启动 突然发现自己电脑2023年安装过anaconda3 C:\ProgramData\anaconda3\python.exe C:\ProgramData\anaconda3\cwp.py C:\ProgramData…

、、、、、

、、 、 transient 关键字总结 1&#xff09;transient修饰的变量不能被序列化&#xff1b;2&#xff09;transient只作用于实现 Serializable 接口&#xff1b;3&#xff09;transient只能用来修饰普通成员变量字段&#xff1b;4&#xff09;不管有没有 transient 修饰&…

ESP32-C3 Wi-Fi STA模式打通(1)

本文内容参考&#xff1a; ESP32 (WIFI)-AP、STA模式(14)_wifi接口 wifi_ap_channel_set-CSDN博客 【ESP-IDF】ESP32利用wifi联网&#xff08;STA模式&#xff09;_esp32ap和sta-CSDN博客 Wi-Fi 库 - ESP32 - — ESP-IDF 编程指南 latest 文档 特此致谢&#xff01; 一、概…

西奥机电食品质构仪与米饭软硬度的口感探秘

西奥机电食品质构仪与米饭软硬度的口感探秘 米饭&#xff0c;作为日常餐桌上的主角&#xff0c;其口感的好坏往往决定了整个用餐体验。其中&#xff0c;米饭的软硬度更是决定其口感的关键。今天&#xff0c;我们将借助西奥机电的食品质构仪&#xff0c;一同探秘米饭软硬度的口…

【mysql】深入探索mysql中的各种约束条件

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…

AI大模型探索之路-训练篇15:大语言模型预训练之全量参数微调

系列篇章&#x1f4a5; AI大模型探索之路-训练篇1&#xff1a;大语言模型微调基础认知 AI大模型探索之路-训练篇2&#xff1a;大语言模型预训练基础认知 AI大模型探索之路-训练篇3&#xff1a;大语言模型全景解读 AI大模型探索之路-训练篇4&#xff1a;大语言模型训练数据集概…

.Net 8.0 下的新RPC,IceRPC之如何创建连接connection

作者引言 很高兴啊&#xff0c;我们来到了IceRPC之如何创建连接connection,基础引导&#xff0c;让自已不在迷茫&#xff0c;快乐的畅游世界。 如何创建连接connection 学习如何使用IceRPC&#xff0c;创建和接受连接。 连接有什么用途&#xff1f; 连接在 IceRPC 中发挥着核心…

深度学习中的注意力机制一(Pytorch 15)

一 简介 灵长类动物的视觉系统接受了大量的感官输入&#xff0c;这些感官输入远远超过了大脑能够完全处理的程度。然而&#xff0c; 并非所有刺激的影响都是相等的。意识的聚集和专注使灵长类动物能够在复杂的视觉环境中将注意力引向感 兴趣的物体&#xff0c;例如猎物和天敌。…

Baidu Comate智能代码助手-高效代码编程体验

关于Baidu Comate智能代码助手 智能代码助手简介 代码助手可以快速的帮我们补充代码&#xff0c;修改代码&#xff0c;添加注释&#xff0c;翻译中英文&#xff0c;起变量函数名字等操作&#xff0c;十分的友好&#xff0c;这类代码助手现阶段有较多的产品&#xff0c;比如&a…

深度学习-线性回归+基础优化算法

目录 线性模型衡量预估质量训练数据参数学习训练损失最小化损失来学习参数显式解 总结基础优化梯度下降选择学习率 小批量随机梯度下降选择批量大小 总结线性回归的从零开始实现实现一个函数读取小批量效果展示这里可视化看一下 线性回归从零开始实现线性回归的简洁实现效果展示…

【C++】学习笔记——vector_3

文章目录 七、vector3. vector的模拟实现4. vector实现代码整合 未完待续 七、vector 3. vector的模拟实现 上篇文章我们讲解了非常 玄幻 的拷贝构造函数&#xff0c;同样的方法&#xff0c;我们也能用这种方法来实现 赋值重载函数 。 void swap(vector<T>& v) {s…

哈尔滨等保测评模拟题

《中华人民共和国网络安全法》中规定计算机信息系统安全保护等级共分为五级。&#xff08; t &#xff09;2019年&#xff0c;随着标准GB/T22239的更新&#xff0c;等级保护进入2.0时代。&#xff08; t&#xff09;某单位信息系统的等级定义为S2A3G2&#xff0c;根据取高原则…