前言

如今也是出现了各种各样的大模型,如果想要针对性的让他扮演某个角色我们通常采用的是给他输入prompt(提示词)。

但是如果遇到一些"思想钢印"较深的大模型,使用提示词洗脑可能效果并不好。

那我们有没有其他方法来解决这个问题?

当然有,那就是自行微调一个大模型!

本篇文章,就带大家走一遍微调大模型的全流程

所用项目

LLaMA-Factory:https://github.com/hiyouga/LLaMA-Factory

qwen2.5:7b:https://huggingface.co/Qwen

(因为目前LLaMA-Factory支持的模型有限,所以并没有采用腾讯开源的混元模型,但总体教程是一样的)

所用设备

因为涉及到模型训练,所需要的算力也比较大,同时,因为模型训练过程中也会产生许多其他文件,所以内存和存储也尽量大一些

本次使用的是腾讯云的HAI服务器

本次选择的显存大小为32G(实际显卡型号为v100)

如果你的显存过小,训练过程中需要使用qlora进行训练

这里地区选择可以根据自己需要选择,因为目前国内部分地区也有学术加速,不会说在下部分文件的时候出现无法下载的情况

开启学术加速(非必需)

服务器创建后,在控制台首页右侧会有一个学术加速按钮,我们点击,选择对应地区即可开启

安装LLaMA-Factory(必须)

服务器创建完成后,我们点击算力连接,我们这里使用cloud studio进行演示

进入后首先建一个终端

conda环境创建

因为是自带conda的,我们直接创建我们需要的环境即可

官方是推荐使用python3.11的,我们直接在终端输入下面命令

代码语言:txt

复制

conda create -n LLaMa python=3.11

随后就会自动开始安装我们所需要的东西

完成后,我们输入

代码语言:txt

复制

conda activate LLaMa   

即可进入我们这个虚拟环境

LLaMA-Factory安装

我们按照官方给的文档,依次输入下面三条指令

代码语言:txt

复制

git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory
pip install -e ".[torch,metrics]"

第一条为下载github仓库内的代码,如果遇到网络不畅,可以尝试下载到本地然后手动上传到云端,或者将官方地址替换为镜像站地址

完成后我们进入文件夹安装依赖

此过程需要下载大量文件还请耐心等待~

如果不显示报错,并且和图示一样即可证明安装完成

自定义数据集(非必需)

我们本次训练的主要是LLM模型的自我认识(身份),其数据集格式为下

代码语言:txt

复制

  {
    "instruction": "",
    "input": "",
    "output": ""
  },

你可以在程序的data文件夹下找到这个文件

如果你需要使用其他数据集,可以根据这个格式进行编辑

我们这里创建一个zhongerbing.json文件,用它来进行训练模型的自我认知

注:

使用自定义数据集时,请更新data/dataset_info.json文件。

请务必注意路径不要错误

模型下载(必须)

在魔搭官网,我们在模型右侧可以看到模型下载教程

如果您是国内用户,我们推荐使用魔搭进行模型下载

如果您是海外用户,我们推荐使用hugging face进行模型下载

模型移动(非必需)

因为默认下载路径为/root/.cache/modelscope/hub/

我们可以把它移动到方便修改的路径,可以使用下面这个指令

代码语言:txt

复制

sudo mv /root/.cache/modelscope/hub/Qwen/ /workspace/qwen

训练模型

启动webui

在控制台输入

代码语言:txt

复制

llamafactory-cli webui

即可启动webui

我们根据自己服务器的ip,和输出的对应端口,使用浏览器即可进入

进入后我们选择对应的模型,填写好路径

验证模型路径是否正确(非必需)

我们点击chat,选择加载模型,如果没有报错可以正常出现内容即为正常

另外,如果您选择了量化,可能需要手动配置部分依赖,具体情况请看控制台报错

使用完毕后记得点击卸载模型,否则会一直占用显存

开始训练

我们返回train,选择我们需要的数据集(你可以点击预览查看数据集)然后我们下滑直接点击开始训练即可

开始训练后,我们稍等片刻可以看到训练进度

右侧为loss,loss尽量低一些,但同时也不能过低,过低会出现过拟合的情况,适得其反

我们也可以适当添加训练次数,每次完成后通过chat验证一下效果

模型训练不是不是越多越好,需根据具体情况分析

单次训练完成后会出现如图提示

验证训练结果

训练完成后,我们在上方检查点选择我们的一个数据

随后在chat处加载我们的模型,进行对话

然后我们进行问答,就可以得到想要的结果

右侧参数可以根据自己需要进行调整

我们可以将训练好的检查点,融入到模型之中,可以在其他地方使用

LLaMA-Factory支持的模型

模型名 模型大小 Template
Baichuan 2 7B/13B baichuan2
BLOOM/BLOOMZ 560M/1.1B/1.7B/3B/7.1B/176B
ChatGLM3 6B chatglm3
Command R 35B/104B cohere
DeepSeek (Code/MoE) 7B/16B/67B/236B deepseek
Falcon 7B/11B/40B/180B falcon
Gemma/Gemma 2/CodeGemma 2B/7B/9B/27B gemma
GLM-4 9B glm4
Index 1.9B index
InternLM2/InternLM2.5 7B/20B intern2
Llama 7B/13B/33B/65B
Llama 2 7B/13B/70B llama2
Llama 3-3.2 1B/3B/8B/70B llama3
LLaVA-1.5 7B/13B llava
LLaVA-NeXT 7B/8B/13B/34B/72B/110B llava_next
LLaVA-NeXT-Video 7B/34B llava_next_video
MiniCPM 1B/2B/4B cpm/cpm3
Mistral/Mixtral 7B/8x7B/8x22B mistral
OLMo 1B/7B
PaliGemma 3B paligemma
Phi-1.5/Phi-2 1.3B/2.7B
Phi-3 4B/7B/14B phi
Pixtral 12B pixtral
Qwen (1-2.5) (Code/Math/MoE) 0.5B/1.5B/3B/7B/14B/32B/72B/110B qwen
Qwen2-VL 2B/7B/72B qwen2_vl
StarCoder 2 3B/7B/15B
XVERSE 7B/13B/65B xverse
Yi/Yi-1.5 (Code) 1.5B/6B/9B/34B yi
Yi-VL 6B/34B yi_vl
Yuan 2 2B/51B/102B yuan

硬件需要

估算值

方法 精度 7B 13B 30B 70B 110B 8x7B 8x22B
Full AMP 120GB 240GB 600GB 1200GB 2000GB 900GB 2400GB
Full 16 60GB 120GB 300GB 600GB 900GB 400GB 1200GB
Freeze 16 20GB 40GB 80GB 200GB 360GB 160GB 400GB
LoRA/GaLore/BAdam 16 16GB 32GB 64GB 160GB 240GB 120GB 320GB
QLoRA 8 10GB 20GB 40GB 80GB 140GB 60GB 160GB
QLoRA 4 6GB 12GB 24GB 48GB 72GB 30GB 96GB
QLoRA 2 4GB 8GB 16GB 24GB 48GB 18GB 48GB

零基础入门AI大模型

今天贴心为大家准备好了一系列AI大模型资源,包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

有需要的小伙伴,可以点击下方链接免费领取【保证100%免费

点击领取 《AI大模型&人工智能&入门进阶学习资源包》

1.学习路线图

在这里插入图片描述

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

2.视频教程

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己整理的大模型视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

在这里插入图片描述

在这里插入图片描述

(都打包成一块的了,不能一一展开,总共300多集)

3.技术文档和电子书

这里主要整理了大模型相关PDF书籍、行业报告、文档,有几百本,都是目前行业最新的。
在这里插入图片描述

4.LLM面试题和面经合集

这里主要整理了行业目前最新的大模型面试题和各种大厂offer面经合集。
在这里插入图片描述

👉学会后的收获:👈

• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集

5.免费获取

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码或者点击以下链接都可以免费领取【保证100%免费】

点击领取 《AI大模型&人工智能&入门进阶学习资源包》

在这里插入图片描述

Logo

在这里,我们一起交流AI,学习AI,用AI改变世界。如有AI产品需求,可访问讯飞开放平台,www.xfyun.cn。

更多推荐