书生·浦语大模型实战营-学习笔记4

这篇具有很好参考价值的文章主要介绍了书生·浦语大模型实战营-学习笔记4。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

XTuner 大模型单卡低成本微调实战

书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp

Finetune简介

常见的两种微调策略:增量预训练、指令跟随
书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp
书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp

指令跟随微调

数据是一问一答的形式
对话模板构建
书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp
每个开源模型使用的对话模板都不相同
书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp

指令微调原理:
由于只有答案部分是我们期望模型来进行回答的内容,所以我们只对答案部分进行损失的计算
书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp

增量预训练微调

数据都是陈述句,没有问答形式
书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp
书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp

LoRA & QLoRA

XTuner中使用的微调原理:LoRA & QLoRA
如果我们要对整个模型的所有参数都进行调整的话,需要非常大的显存才能够进行训练,但是用LoRA的方法就不需要这么大的显存开销了

LoRA: Low-Rank Adaptation
书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp
比较:全参数微调、LoRA、QLoRA

全参数微调:整个模型都要加载到显存中,所有模型参数的优化器也都要加载到显存中,显存不够根本无法进行。

LoRA:模型也是要先加载到显存中,但是我们只需要保存LoRA部分的参数优化器,大大减小了显存占用。

QLoRA:加载模型时就使用4bit量化的方式加载(相当于不那么精确的加载),但是可以节省显存开销,QLoRA部分的参数优化器,还可以在GPU和CPU之间进行调度【这是Xtunner进行整合的功能 】,显存满了就自动去内存中去跑。

书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp

XTuner介绍

书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp

书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp

XTuner快速上手

  1. 安装
pip install xtuner
  1. 挑选配置模版
xtuner list-cfg -p internlm_20b
  1. 一键训练
xtuner train internlm_20b_qlora_oasst1_512_e3
  1. Config 命名规则
模型名 internlm_20b ( 无 chat 代表是基座模型 )
使用算法 qlora
数据集 oasst1
数据长度 512
Epoch e3, epoch 3

书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp
自定义训练(微调):

  1. 拷贝配置模板
  2. 修改配置文件
  3. 启动训练
  4. 配置模板中的常用超参数
    书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp
    对话:
    训练完成后得到了Adapter文件(LoRA文件),我们就需要在加载底座模型的基础上,同时加载这个Adapter,来进行模型的对话与测试。
  5. Float 16模型对话
  6. 4bit量化模式模型对话
  7. 加载Adapter模型对话
    书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp
    XTuner还支持工具类模型的对话,类似于GPT里面的plugin
    书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp
    XTunner具有强大的数据处理引擎,对于这种格式化的问答对,进行了统一的数据指定。对于开源数据集进行了映射函数的内置,可以方便的在很多流行的开源数据集上进行一键启动。
    这样开发者可以专注于数据内容,不必花费精力处理复杂的数据格式。
    书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp

书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp
XTunner支持多数据的样本拼接,如果使用XTunner的默认配置,它只需要6GB或者8GB的显存消耗。如果有更大显存的显卡,为了利用更大显存,就需要增加运行效率,进行多数据样本拼接,将多条数据拼接到一起后,输入模型,然后统一的进行梯度的传播,增加并行性,充分利用GPU资源。
书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp
自定义数据集建议使用json格式
书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp

8GB显卡玩转LLM

XTuner默认开启了Flash Attention的加速方式,可以加速训练,同时也集成了deepspeed_zero的优化方法,也可以在训练在训练的过程中更快。

deep speed不是默认启动的
书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp
书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp
优化前优化后,不同计算卡上的显存占用情况
书生·浦语大模型实战营-学习笔记4,大模型,学习,笔记,自然语言处理,chatgpt,nlp

动手实战环节

https://github.com/InternLM/tutorial/blob/main/xtuner/README.md文章来源地址https://www.toymoban.com/news/detail-813463.html

到了这里,关于书生·浦语大模型实战营-学习笔记4的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

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

    哈哈到这才想起来写笔记 倒回去看发现要求将不要葱姜蒜换成自己的名字和昵称! 好好好我就是不配玩(换成管理员也不行!) 诶怎么能进这个环境?要进双系统ubuntu? 现在看视频发现原来是我进入成功了,可以接着往下做omygod!!!! 但是 还是看看视频吧 微调是在海量

    2024年01月20日
    浏览(36)
  • 书生·浦语大模型实战营第五节课笔记及作业

    1.1 模型部署及大模型特点 1.2 大模型部署挑战及方案 2.1 核心功能-量化 2.2 核心功能-推理引擎TurboMind 2.1 核心功能-推理服务api server 按照文档LMDeploy 的量化和部署中的步骤在InternStudio中的 A100(1/4) 机器上一步步操作即可! 3.1 基础作业 使用 LMDeploy 以本地对话、网页Gradio、API服

    2024年01月19日
    浏览(30)
  • 书生·浦语大模型实战营:Ch1-书生·浦语大模型全链路开源体系

    视频链接:(1)书生·浦语大模型全链路开源体系_哔哩哔哩_bilibili 以语言模型和大语言模型为的检索记录呈指数级上升; 以ChatGPT为代表的大语言模型技术成果引起了广泛的使用兴趣。 深度学习与强化学习模型在许多特定领域建立了许多富有成效的专用模型,用于解决特

    2024年02月01日
    浏览(40)
  • 书生.浦语大模型实战一

    从专用模型到通用大模型 书生.万卷1.0 文本 图像-文本 视频数据 OpenDataLab开放平台 图像:ImageNet tokens语料:WikiQA 音频 视频:MovieNet 3D模型 增量续训 使用场景:让基座模型学习到一些新知识,如某个垂类领域知识 训练数据:文章、书籍、代码等 有监督微调 使用场景:让模型

    2024年01月16日
    浏览(34)
  • 书生·浦语大模型开源体系(四)笔记

    💗💗💗欢迎来到我的博客,你将找到有关如何使用技术解决问题的文章,也会找到某个技术的学习路线。无论你是何种职业,我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章,也欢迎在文章下方留下你的评论和反馈。我期待着与你分享知识、互

    2024年04月28日
    浏览(22)
  • 书生·浦语大模型开源体系(二)笔记

    💗💗💗欢迎来到我的博客,你将找到有关如何使用技术解决问题的文章,也会找到某个技术的学习路线。无论你是何种职业,我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章,也欢迎在文章下方留下你的评论和反馈。我期待着与你分享知识、互

    2024年04月09日
    浏览(70)
  • 书生·浦语大模型--第二节课笔记

    大模型 定义:参数量巨大、拥有庞大计算能力和参数规模的模型 特点:大量数据训练、数十亿甚至千亿数据、惊人性能 InternLM系列 InternLM:轻量级训练框架 Lagent:轻量级、开源的基于大语言模型得到智能体框架,将大语言模型转变为多种智能体 浦语灵笔:视觉语言大模型,

    2024年01月22日
    浏览(31)
  • [书生·浦语大模型实战营]——XTuner 大模型单卡低成本微调

    在未经过微调的pretrained LLM中,模型只会尽量去拟合你的输入,也就是说模型并没有意识到你在提问,因此需要微调来修正。 1.1常用的微调模式 LLM的下游应用中, 增量预训练 和 指令跟随 是经常会用到的两种的微调模式。 增量预训练微调 使用场景:让基座模型学习到一些新知

    2024年01月20日
    浏览(70)
  • 书生·浦语大模型全链路开源体系【大模型第2课-笔记】

    1.1 什么是大模型?   大模型通常指的是机器学习或人工智能领域中参数数量巨大、拥有庞大计算能力和参数规模的模型。这些模型利用大量数据进行训练,并且拥有数十亿甚至数千亿个参数。大模型的出现和发展得益于增长的数据量、计算能力的提升以及算法优化等因素

    2024年01月19日
    浏览(85)
  • 第二节课 书生·浦语大模型趣味 Demo笔记及作业

    书生·浦语大模型InternLM-Chat-7B 智能对话 Demo:https://blog.csdn.net/m0_49289284/article/details/135412067 书生·浦语大模型Lagent 智能体工具调用 Demo:https://blog.csdn.net/m0_49289284/article/details/135426100 使用 InternLM-Chat-7B 模型生成 300 字的小故事 使用 huggingface_hub python 包,下载 InternLM-20B 的 conf

    2024年01月19日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包