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

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并行处理实战之如何使用ProcessPoolExecutor加速计算

《Python并行处理实战之如何使用ProcessPoolExecutor加速计算》Python提供了多种并行处理的方式,其中concurrent.futures模块的ProcessPoolExecu... 目录简介完整代码示例代码解释1. 导入必要的模块2. 定义处理函数3. 主函数4. 生成数字列表5.

详解如何使用Python从零开始构建文本统计模型

《详解如何使用Python从零开始构建文本统计模型》在自然语言处理领域,词汇表构建是文本预处理的关键环节,本文通过Python代码实践,演示如何从原始文本中提取多尺度特征,并通过动态调整机制构建更精确... 目录一、项目背景与核心思想二、核心代码解析1. 数据加载与预处理2. 多尺度字符统计3. 统计结果可

Java Spring 中的监听器Listener详解与实战教程

《JavaSpring中的监听器Listener详解与实战教程》Spring提供了多种监听器机制,可以用于监听应用生命周期、会话生命周期和请求处理过程中的事件,:本文主要介绍JavaSprin... 目录一、监听器的作用1.1 应用生命周期管理1.2 会话管理1.3 请求处理监控二、创建监听器2.1 Ser

Apache 高级配置实战之从连接保持到日志分析的完整指南

《Apache高级配置实战之从连接保持到日志分析的完整指南》本文带你从连接保持优化开始,一路走到访问控制和日志管理,最后用AWStats来分析网站数据,对Apache配置日志分析相关知识感兴趣的朋友... 目录Apache 高级配置实战:从连接保持到日志分析的完整指南前言 一、Apache 连接保持 - 性

SpringBoot整合Sa-Token实现RBAC权限模型的过程解析

《SpringBoot整合Sa-Token实现RBAC权限模型的过程解析》:本文主要介绍SpringBoot整合Sa-Token实现RBAC权限模型的过程解析,本文给大家介绍的非常详细,对大家的学... 目录前言一、基础概念1.1 RBAC模型核心概念1.2 Sa-Token核心功能1.3 环境准备二、表结

MQTT SpringBoot整合实战教程

《MQTTSpringBoot整合实战教程》:本文主要介绍MQTTSpringBoot整合实战教程,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录MQTT-SpringBoot创建简单 SpringBoot 项目导入必须依赖增加MQTT相关配置编写

JavaScript实战:智能密码生成器开发指南

本文通过JavaScript实战开发智能密码生成器,详解如何运用crypto.getRandomValues实现加密级随机密码生成,包含多字符组合、安全强度可视化、易混淆字符排除等企业级功能。学习密码强度检测算法与信息熵计算原理,获取可直接嵌入项目的完整代码,提升Web应用的安全开发能力 目录

Redis迷你版微信抢红包实战

《Redis迷你版微信抢红包实战》本文主要介绍了Redis迷你版微信抢红包实战... 目录1 思路分析1.1hCckRX 流程1.2 注意点①拆红包:二倍均值算法②发红包:list③抢红包&记录:hset2 代码实现2.1 拆红包splitRedPacket2.2 发红包sendRedPacket2.3 抢

springboot项目redis缓存异常实战案例详解(提供解决方案)

《springboot项目redis缓存异常实战案例详解(提供解决方案)》redis基本上是高并发场景上会用到的一个高性能的key-value数据库,属于nosql类型,一般用作于缓存,一般是结合数据... 目录缓存异常实践案例缓存穿透问题缓存击穿问题(其中也解决了穿透问题)完整代码缓存异常实践案例Red

Spring Boot拦截器Interceptor与过滤器Filter深度解析(区别、实现与实战指南)

《SpringBoot拦截器Interceptor与过滤器Filter深度解析(区别、实现与实战指南)》:本文主要介绍SpringBoot拦截器Interceptor与过滤器Filter深度解析... 目录Spring Boot拦截器(Interceptor)与过滤器(Filter)深度解析:区别、实现与实