LLaMA Factory多卡微调的实战教程(持续更新)

news2024/11/24 18:48:55

  大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法行业就业。希望和大家一起成长进步。

  本文主要介绍了LLaMA Factory多卡微调的实战教程(持续更新),希望对学习大语言模型的同学们有所帮助。需要说明的是,本篇是LLaMA Factory发生重大更新后的迭代版本,所以会持续进行更新。

文章目录

  • 1. 前言
  • 2. 配置环境
    • 2.1 安装虚拟环境
    • 2.2 安装依赖库
    • 2.3 模型选型与下载
    • 2.4 配置多卡环境
  • 3. 运行代码
    • 3.1 构建训练数据
    • 3.2 修改配置文件
    • 3.3 微调
      • 3.3.1 zero3微调
      • 3.3.2 启动API
      • 3.3.3 模型测试

1. 前言

  在之前博客中介绍了LLaMA Factory单机微调的实战教程,但模型参数量大了以后,必须就要使用多卡进行微调和训练了。尤其最近新出了几个效果很不错的开源大模型,比如Qwen 2-72B-Chat、Qwen1.5-72B-Chat、Command R+(104B),所以即使是A100 80G,也需要多卡进行微调。

  一般来说,是使用deepspeed进行多卡微调的。但是配置环境却并不是那么一帆风顺的。为了帮助同学们加快多卡微调的进度,最终将逐步的操作过程总结如下。希望能对遇到同样需求的同学们有所帮助。

在这里插入图片描述

2. 配置环境

  需要说明的是以下两点:

  1. 本文是在Centos 7+C

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1819131.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PC微信逆向) 定位微信浏览器打开链接的call

首发地址: https://mp.weixin.qq.com/s/Nik8fBF3hxH5FPMGNx3JFw 前言 最近想写一个免费的微信公众号自动采集的工具,我看公众号文章下载需求还挺多的。搜了下github,免费的工具思路大多都是使用浏览器打开公众号主页获取到需要的请求参数,例…

vue+java实现简易AI问答组件(基于百度文心大模型)

一、需求 公司想要在页面中加入AI智能对话功能,故查找免费gpt接口,最终决定百度千帆大模型(进入官网、官方文档中心); 二、主要功能列举 AI智能对话;记录上下文回答环境;折叠/展开窗口&#…

从0到1搭建MCU芯片上操作系统环境。开发都需要哪些环节和准备

MCU芯片环境搭建与操作系统上载步骤 1. 硬件准备 选择合适的MCU芯片,例如STM32、GD32等。 准备开发板,用于硬件连接和实验。 准备必要的外围设备,如电源适配器、USB转串口模块等。 2. 软件环境搭建 安装编程语言环境,如C/C编译…

2024年中漫谈

不知不觉,2024年已来到了6月,博主不禁感叹时光易逝,岁月的车轮滚滚向前,永不止步,此刻无关贫穷与富裕,伟大与平凡。 于是乎,宇宙(时空)看似毫无终点,一望无垠…

for循环结构

循环: 循环是一个重复执行一个代码的结构。只要满足循环的条件,会一直执行这个代码。 循环条件:在一定范围之内,按照指定的次数来执行循环。 循环体:在指定的次数内,执行的命令序列。只要条件满足&#…

【深度优先搜索 广度优先搜索】297. 二叉树的序列化与反序列化

本文涉及知识点 深度优先搜索 广度优先搜索 深度优先搜索汇总 图论知识汇总 LeetCode297. 二叉树的序列化与反序列化 序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也可以通过网络传…

GUI初步开始(matlab)

GUI初步开始(matlab) (自用笔记) 打工人艰辛速成,花几个小时从零到能用,记录下details and problems: 甲方要求:GUI界面,读下位机,找到解码后格式中所需要的…

GGML简单介绍

GGML是一个用于机器学习的张量库,可以在商用硬件上实现大型模型和高性能。它被llama.cpp和whisper.cpp使用 C语言编写 16位浮点支撑 整数量化支持(如4位、5位、8位) 自动分化 内置优化算法(如ADAM, L-BFGS) 针对苹果芯片进行优化 在x86架构上利用AVX / AVX2的内在特…

人工智能:项目管理的新视角与未来影响

随着科技的飞速发展,人工智能(AI)已经从科幻小说中的概念变为现实生活中的强大工具。作为一名工作多年的项目管理人员,我深感AI在项目管理领域中的潜力和影响。在这篇文章中,我将从项目管理人员的角度,探讨…

晶圆代工市占洗牌,中芯跃居第三名 | 百能云芯

市场研究机构集邦咨询(TrendForce)最新发布的调查显示,今年第1季前五大晶圆代工厂第1季排名出现明显变动,除了台积电(TSMC)继续蝉联第一名,中芯国际(SMIC)受惠消费性库存…

视频媒介VS文字媒介

看到一篇蛮有思考意义的文章就摘录下来了,也引起了反思 目录 一、视频的定义 二、”视频媒介“与”文字媒介”作对比 1.形象 VS 抽象 2.被动 VS 主动 三、视频的缺点-【更少】的思考 1.看视频为啥会导致【更少的思考】 2.内容的【浅薄化】 3.内容的【娱乐化…

一文讲清:bom管理系统是什么?在生产管理中有什么作用?

在制造业中,物料清单(Bill of Materials,简称BOM)扮演着至关重要的角色。物料清单(BOM)是制造或维修产品所需的材料、组件和零件的结构化综合列表,以及所需材料的数量、名称、描述和成本。简而言…

【代码随想录】【算法训练营】【第36天】[452]用最少数量的箭引爆气球 [435]无重叠区间 [763]划分字母区间

前言 思路及算法思维,指路 代码随想录。 题目来自 LeetCode。 day 36,周三,最难坚持的一天~ 题目详情 [452] 用最少数量的箭引爆气球 题目描述 452 用最少数量的箭引爆气球 解题思路 前提:区间可能重叠 思路:…

对接钉钉Stream模式考勤打卡相关事件的指南

钉钉之前的accessToken是公司级别的,现在的accessToken是基于应用的,接口的权限也是基于应用的。所以第一步是在钉钉开放平台(https://open-dev.dingtalk.com/)创建一个应用。 创建好应用之后,因为我们后续还需要调用钉…

分布式事务seata之AT与TCC模型

1. seata分布式事务简介 seata是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。 Seata提供了AT、TCC、SAGA和XA事务模型,为用户打造一站式的分布式解决方案。 简单来说,Seata就是针对主流事务解决方案的封装…

Unity:Text-TextMeshPro 不显示中文

共计四步: 一、去C盘复制一份字体: C:\Windows\Fonts二、粘贴到你的项目里(任意文件位置),得到“MSYH”: 三、右键字体文件,依次点击create–>TextMeshPro–>FontAsset: …

visdom使用时所遇的问题及解决方法

最近在用visdom进行可视化的过程中,虽然可有效的避免主机拒绝访问(该问题的解决方法,请参考深度学习可视化工具visdom使用-CSDN博客)即在终端输入python -m visom.server 1.训练过程中visdom出现ValueError: too many file descr…

科技项目验收测试必须进行吗?软件测试公司推荐

科技项目验收测试是指在科技项目开发周期中,对项目完成后进行的一种测试和评估工作。它的目的是验证项目是否达到预期的要求,并确保项目交付给客户前达到预期的质量标准。 一、科技项目验收测试的必要性   科技项目验收测试是项目管理中不可或缺的一个…

5.5 Python 迭代器与生成器

文章目录 1. 三元表达式1.1 格式1.2 示例1.3 嵌套 2. 生成式2.1 列表生成式2.2 字典生成式2.3 集合生成式2.4 元组生成式 3. 可迭代对象4. 迭代器4.1 迭代器的优缺点4.2 迭代器的惰性机制4.3 生成迭代器4.4 文本IO包装器4.5 字符串迭代器4.6 列表迭代器4.7 字典键迭代器4.8 元组…

怎么改图片尺寸更方便?在线图片改大小的使用方法

图片怎么快速改尺寸呢?在网上传图或者做其他用途时,经常会对图片的尺寸有要求,当拍摄或者制作的图片太大或者太小时,都会导致图片的无法正常使用,那么就需要按照规定将图片改大小之后才能正常使用。 在遇到图片修改大…