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

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实现这一功能吧... 目录简介1. 二进制文件搜索概述2. python二进制模式文件读取(rb)2.1 二进制模式与文本

Django调用外部Python程序的完整项目实战

《Django调用外部Python程序的完整项目实战》Django是一个强大的PythonWeb框架,它的设计理念简洁优雅,:本文主要介绍Django调用外部Python程序的完整项目实战,文中通... 目录一、为什么 Django 需要调用外部 python 程序二、三种常见的调用方式方式 1:直接 im

SpringBoot整合 Quartz实现定时推送实战指南

《SpringBoot整合Quartz实现定时推送实战指南》文章介绍了SpringBoot中使用Quartz动态定时任务和任务持久化实现多条不确定结束时间并提前N分钟推送的方案,本文结合实例代码给大... 目录前言一、Quartz 是什么?1、核心定位:解决什么问题?2、Quartz 核心组件二、使用步骤1

SpringBoot整合AOP及使用案例实战

《SpringBoot整合AOP及使用案例实战》本文详细介绍了SpringAOP中的切入点表达式,重点讲解了execution表达式的语法和用法,通过案例实战,展示了AOP的基本使用、结合自定义注解以... 目录一、 引入依赖二、切入点表达式详解三、案例实战1. AOP基本使用2. AOP结合自定义注解3.

Java 队列Queue从原理到实战指南

《Java队列Queue从原理到实战指南》本文介绍了Java中队列(Queue)的底层实现、常见方法及其区别,通过LinkedList和ArrayDeque的实现,以及循环队列的概念,展示了如何高效... 目录一、队列的认识队列的底层与集合框架常见的队列方法插入元素方法对比(add和offer)移除元素方法

Spring Boot基于 JWT 优化 Spring Security 无状态登录实战指南

《SpringBoot基于JWT优化SpringSecurity无状态登录实战指南》本文介绍如何使用JWT优化SpringSecurity实现无状态登录,提高接口安全性,并通过实际操作步骤... 目录Spring Boot 实战:基于 JWT 优化 Spring Security 无状态登录一、先搞懂:为什

C++11中的包装器实战案例

《C++11中的包装器实战案例》本文给大家介绍C++11中的包装器实战案例,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录引言1.std::function1.1.什么是std::function1.2.核心用法1.2.1.包装普通函数1.2.

Nginx概念、架构、配置与虚拟主机实战操作指南

《Nginx概念、架构、配置与虚拟主机实战操作指南》Nginx是一个高性能的HTTP服务器、反向代理服务器、负载均衡器和IMAP/POP3/SMTP代理服务器,它支持高并发连接,资源占用低,功能全面且... 目录Nginx 深度解析:概念、架构、配置与虚拟主机实战一、Nginx 的概念二、Nginx 的特点

Spring IOC核心原理详解与运用实战教程

《SpringIOC核心原理详解与运用实战教程》本文详细解析了SpringIOC容器的核心原理,包括BeanFactory体系、依赖注入机制、循环依赖解决和三级缓存机制,同时,介绍了SpringBo... 目录1. Spring IOC核心原理深度解析1.1 BeanFactory体系与内部结构1.1.1

Redis 命令详解与实战案例

《Redis命令详解与实战案例》本文详细介绍了Redis的基础知识、核心数据结构与命令、高级功能与命令、最佳实践与性能优化,以及实战应用场景,通过实战案例,展示了如何使用Redis构建高性能应用系统... 目录Redis 命令详解与实战案例一、Redis 基础介绍二、Redis 核心数据结构与命令1. 字符