首页 > 其他分享 >聊聊大模型的微调实现及其应用

聊聊大模型的微调实现及其应用

时间:2024-03-15 14:22:39浏览次数:27  
标签:基于 训练 模型 微调 开源 聊聊 数据

转载请备注出处: https://www.cnblogs.com/zhiyong-ITNote

微调框架概述

模型的微调有多种方式,对于入门的来说,一般都是基于官方的文档微调;最近发现很多开源库,其目的就是支持应用多种微调策略来微调模型,简化模型的微调门槛。比如 ChatGLM-Efficient-TuningLLaMA-Factory。其架构逻辑如下:

最近试玩了这两个框架,个人觉得蛮好的,先不说实际的调试效果,这取决于多种因素,总的来说还是很方便快捷的。方便快捷的基于多种微调策略调试LLM;同时支持多种数据集类型。

LLaMA-Factory

这个开源库相比较其余的库,更全面,更方便。有如下几点我是比较喜欢的。

  1. 训练方法
    1. 如图,多种训练方法都支持,很全面。不过这里的预训练,我理解为是增量预训练;即准备大量的文本数据训练。
    2. 支持全参数、部分参数、LoRA等策略微调。
    3. 降低门槛,一键训练。对于学习来说,可以增加知识面及使用。

image.png

  1. 数据集
    1. 支持多种数据集:增量预训练数据集、指令微调数据集、偏好数据集;在官方文档都是有说明的。
    2. 每次微调前,我都需要斟酌数据集的准备、格式等;但开源库已经准备的很齐全而且各种场景的数据格式都有,直接参考即可;比如单轮对话、多轮对话、指令格式等等。这就极大的方便了数据集的准备。
  2. 其它
    1. 当然还有分布式训练、web界面操作等等

ChatGLM-Finetuning

Finetuning 是专门基于GLM系列的微调库,我个人也试用,还是很方便快速的,而且文档比较清晰,只是在部署时比较简陋,但对于要学习了解微调及LLM一些原理来说,还是很适合入门钻研的。

应用

目前绝大多数的大模型都是基于基座模型(GLM、QWen、LlaMa、BaiChuan)等微调训练而来,不过实现的逻辑却是有多种,要么基于官方的微调文档,要么基于开源微调库实现。CareGPT 就是基于开源微调库LLaMA-Factory实现的医疗领域大模型。其架构设计如下:

在其架构设计中,有两个部分比较值得关注:

  1. 微调框架的集成
    1. 通过集成了微调框架,调用底层具备的能力,准备多种格式的数据集微调模型。
  2. 数据开放
    1. 基于开源医疗数据集,准备增量预训练预料、指令监督预料、SFT预料等等;扩充基座模型的领域知识能力。

总结

基于个人使用及学习的角度,介绍了微调框架的概述及其应用。在这里面的道道还是蛮多的,有一定的大模型知识再基于这些库去做参考去做应用,将极大的降低LLM的应用门槛。更有甚者可以了解底层的实现逻辑。

转载请备注出处: https://www.cnblogs.com/zhiyong-ITNote

首发于个人公众号
image

标签:基于,训练,模型,微调,开源,聊聊,数据
From: https://www.cnblogs.com/zhiyong-ITNote/p/18075297

相关文章

  • 【译】Based:简单线性注意力语言模型平衡召回-吞吐量权衡
    原文:hazyresearch.stanford.edu/blog/2024-03-03-based全体团队:Simran,Sabri,Michael*,Aman,Silas,Dylan,James,Atri,ChrisArxiv:arxiv.org/abs/2402.18668代码:github.com/HazyResearch/based在ICLR论文(以及博客文章)中,我们在去年年底分享了一个发现,许多高效的架构(例如Mamba,RWKV,Hyena......
  • 在Windows电脑上本地部署Llama2大型语言模型
    在Windows电脑上本地部署Llama2大型语言模型需要一系列具体的步骤。下面,我将详细指导你完成这个过程,并附上相关链接和具体的输入代码或命令行。一、准备环境安装Python:首先,确保你的Windows电脑上已经安装了Python。你可以从Python的官方网站(https://www.python.org/downl......
  • 大模型应用开发-大模型token等基本概念及参数和内存的关系
    大模型相关目录大模型,包括部署微调prompt/Agent应用开发、知识库增强、数据库增强、知识图谱增强、自然语言处理、多模态等大模型应用开发内容从0起步,扬帆起航。大模型应用向开发路径及一点个人思考大模型应用开发实用开源项目汇总大模型问答项目问答性能评估方法大模型......
  • 大模型应用开发-华为大模型生态规划
    大模型相关目录大模型,包括部署微调prompt/Agent应用开发、知识库增强、数据库增强、知识图谱增强、自然语言处理、多模态等大模型应用开发内容从0起步,扬帆起航。大模型应用向开发路径及一点个人思考大模型应用开发实用开源项目汇总大模型问答项目问答性能评估方法大模型......
  • 使用Nginx将大模型Web应用部署到公网
    使用Nginx将大模型Web应用部署到公网大模型训练完毕后,我们可以用SWIFT快速构建一个WebDemo大模型Web应用,本文将介绍如何使用Nginx将大模型Web应用部署到公网。在进行后续步骤之前,先按照搭建一个大模型API服务中的方法安装好SWIFT框架,并激活到你的conda环境。启动大模型Web应用......
  • MATLAB用GARCH-EVT-Copula模型VaR预测分析股票投资组合
    全文链接:http://tecdat.cn/?p=30426原文出处:拓端数据部落公众号对VaR计算方法的改进,以更好的度量开放式基金的风险。本文把基金所持股票看成是一个投资组合,引入Copula来描述多只股票间的非线性相关性,构建多元GARCH-EVT-Copula模型来度量开放式基金的风险,并与其他VaR估计方法的预......
  • 【论文阅读】Vision Mamba:双向状态空间模型的的高效视觉表示学习
    文章目录VisionMamba:双向状态空间模型的的高效视觉表示学习摘要介绍相关工作用于视觉应用的状态空间模型方法准备视觉MambaVim块结构细节高效分析计算效率实验图片分类语义分割目标检测和实例分割消融实验双向SSM分类设计总结和未来工作论文地址:VisionMam......
  • 8分SCI | 揭示随机森林的解释奥秘:探讨LIME技术如何提高模型的可解释性与可信度!
    一、引言LocalInterpretableModel-agnosticExplanations(LIME)技术作为一种局部可解释性方法,能够解释机器学习模型的预测结果,并提供针对单个样本的解释。通过生成局部线性模型来近似原始模型的预测,LIME技术可以帮助用户理解模型在特定样本上的决策过程,提高模型的可解......
  • 一文看懂 关系模型-完整性约束
            关系模型中有三类完整性约束:实体完整性、参照完整性和用户自定义的完整性。其中实体完整性和参照完整性是关系模型必须满足的完整性约束,被称为关系的两个不变性,由关系系统自动支持。      实体完整性详解:    若属性A是基本关系R的主属性,则A不......
  • 【聆思CSK6语音大模型AI开发套件试用】增加对语音控制电梯功能的显示
    目录任务简介图形界面功能的实现添加LVGL控件添加显示楼层的函数系统字体的使用完整代码下载演示效果任务简介在上一篇博文中,我们介绍了在聆思CSK6语音大模型AI开发套件的开发板实现对云平台返回的结果进行处理,我们已经通过日志文件看到了数据的正确接收和解析。今......