书生·浦语大模型实战营第四次课堂笔记

2024-01-20 01:52

本文主要是介绍书生·浦语大模型实战营第四次课堂笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

先来看看参考作业

哈哈到这才想起来写笔记
在这里插入图片描述
在这里插入图片描述
倒回去看发现要求将不要葱姜蒜换成自己的名字和昵称!
在这里插入图片描述
在这里插入图片描述

好好好我就是不配玩(换成管理员也不行!)
诶怎么能进这个环境?要进双系统ubuntu?
现在看视频发现原来是我进入成功了,可以接着往下做omygod!!!!
在这里插入图片描述
但是
在这里插入图片描述
还是看看视频吧
微调是在海量的文本内容的基础上以无监督或半监督的方式进行训练的
在这里插入图片描述
qlora是对lora的一种改进~感觉就是更高级点的工具
在这里插入图片描述
对话模版~

在这里插入图片描述
在这里插入图片描述
XTuner介绍~
在这里插入图片描述
XTuner快速上手:
1.安装(指定版本,在这之前需要创建conda环境

pip install xtuner

2.挑选配置模板

xtuner list-cfg -p internlm_20b

3.一键训练

xtuner train interlm_20b_qlora_512_e3

Config 命名规则
模型名 internlm_20b 无chat代表是基座模型
使用算法 qlora
数据集 oasst1
数据长度 512
Epoch e3,epoch 3

自定义微调
1.拷贝配置模版

xtuner copy-cfg internlm_20b_qlora_oasst1_512_e3 ./

2.修改配置模版

vi internlm_20b_qlora_oasst1_512_e3_copy.py

3.启动训练

xtuner train internlm_20b_qlora_oasst1_512_e3_copy.py

常用超参:

data_path   数据路径或HuggingFace 仓库名
max_length  单条数据最大Token数,超时则截断
pack_to_max_length  是否将多条短数据拼接到max_length,提高GPU利用率
accumulative_counts  梯度累积,每多少backward更新一次参数
evaluation_inputs 训练过程中,会根据给定的问题进行推理,便于观测训练状态
evaluation_freq Evaluation的评测间隔iter

训练完成之后
我们就得到了这个Adapter文件就是所谓的lora文件,我们就需要在加载底座模型的基础上同时加载这个Adapter也就是lora来进行与模型的对话与测试。

为了便于开发者查看训练效果,Xtuner提供了一键对话接口
Float 16模型对话

xtuner chat internlm/internlm-chat-20b

4bit模型对话

xtuner chat internlm/internlm-chat-20b --bits 4

加载Adapter模型对话

xtuner chat internlm/internlm-chat-20b --adapater $ADAPTER_DIR

在这里插入图片描述
deepspeed不是默认启动,需要加默认参数

xtuner train internlm_20b_qlora_oasst1_512_e3\ --deepspeed deepspeed_zero3

在这里插入图片描述
通过问不要葱姜蒜大佬知道了它通过ssh连接的话还是在开发机上也不会下载到本地yes太好了我还能玩~

进入:tmux attach -t finetune
退出:ctrl+b 然后再按d
可以关机让它在后台训练~
在这里插入图片描述
要敲两次回车!看得出来有点慢哈哈
再来写一遍作业
在这里插入图片描述
啊这是为啥失败了嘛
原来是需要训练!!!是小罗的助手啦~
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
还在加载中
在这里插入图片描述

在这里插入图片描述
到46%了感觉我的网速有点慢啊~
在这里插入图片描述
好好好发现自己
在这里插入图片描述

算啦算啦其实差不多了

这篇关于书生·浦语大模型实战营第四次课堂笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/624438

相关文章

Python版本信息获取方法详解与实战

《Python版本信息获取方法详解与实战》在Python开发中,获取Python版本号是调试、兼容性检查和版本控制的重要基础操作,本文详细介绍了如何使用sys和platform模块获取Python的主... 目录1. python版本号获取基础2. 使用sys模块获取版本信息2.1 sys模块概述2.1.1

Python爬虫HTTPS使用requests,httpx,aiohttp实战中的证书异步等问题

《Python爬虫HTTPS使用requests,httpx,aiohttp实战中的证书异步等问题》在爬虫工程里,“HTTPS”是绕不开的话题,HTTPS为传输加密提供保护,同时也给爬虫带来证书校验、... 目录一、核心问题与优先级检查(先问三件事)二、基础示例:requests 与证书处理三、高并发选型:

Linux五种IO模型的使用解读

《Linux五种IO模型的使用解读》文章系统解析了Linux的五种IO模型(阻塞、非阻塞、IO复用、信号驱动、异步),重点区分同步与异步IO的本质差异,强调同步由用户发起,异步由内核触发,通过对比各模... 目录1.IO模型简介2.五种IO模型2.1 IO模型分析方法2.2 阻塞IO2.3 非阻塞IO2.4

Oracle Scheduler任务故障诊断方法实战指南

《OracleScheduler任务故障诊断方法实战指南》Oracle数据库作为企业级应用中最常用的关系型数据库管理系统之一,偶尔会遇到各种故障和问题,:本文主要介绍OracleSchedul... 目录前言一、故障场景:当定时任务突然“消失”二、基础环境诊断:搭建“全局视角”1. 数据库实例与PDB状态2

Git进行版本控制的实战指南

《Git进行版本控制的实战指南》Git是一种分布式版本控制系统,广泛应用于软件开发中,它可以记录和管理项目的历史修改,并支持多人协作开发,通过Git,开发者可以轻松地跟踪代码变更、合并分支、回退版本等... 目录一、Git核心概念解析二、环境搭建与配置1. 安装Git(Windows示例)2. 基础配置(必

MyBatis分页查询实战案例完整流程

《MyBatis分页查询实战案例完整流程》MyBatis是一个强大的Java持久层框架,支持自定义SQL和高级映射,本案例以员工工资信息管理为例,详细讲解如何在IDEA中使用MyBatis结合Page... 目录1. MyBATis框架简介2. 分页查询原理与应用场景2.1 分页查询的基本原理2.1.1 分

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可

从原理到实战解析Java Stream 的并行流性能优化

《从原理到实战解析JavaStream的并行流性能优化》本文给大家介绍JavaStream的并行流性能优化:从原理到实战的全攻略,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的... 目录一、并行流的核心原理与适用场景二、性能优化的核心策略1. 合理设置并行度:打破默认阈值2. 避免装箱