零基础零成本 体验模型微调,手把手教你搞定微调全流程!

大模型向量数据库机器学习

教育孩子和训练AI的共同真相:没有一蹴而就的‘完美’,只有持续迭代的‘更好’

Hello,大家好~~

许久不见,现在大热的 AI 学习中,总是手痒忍不住也想实操各项技术玩一把,今天就从微调开始吧!

总在各类文章中听到讲“微调”,那么“微调”的到底是啥?怎么调教的?

我们用魔搭+ LLaMa Factory,0 成本,体验一个微调的全流程,无需考虑自己的电脑配置,全部 云上微调,最后再将微调的模型引入本地直接体验对话(这次使用一个简单的数据集,所以结局有反转惊喜)

01

什么是“微调”?

首先,我们先大致了解一下,什么是微调?常规大模型语言模型的训练路径分为以下几个阶段:

picture.image

简单的说,以我们养娃来打个比方:

1. 预训练(通识教育)

  • 模型 :通过自监督学习(如阅读海量文本),掌握基础语言规则,但还不会针对具体问题回答。
  • 比喻 :就像孩子上学前大量听大人说话、读绘本,积累了词汇和常识,但还不会完整表达观点。

2. 微调(专项训练)

  • 模型 :用Q&A对训练,教会它如何组织语言、精准回答问题。
  • 比喻 :类似家长或老师通过“问答练习”教孩子:
  • :“天空为什么是蓝色的?”
  • :“因为阳光散射…”。
    → 孩子会使用专业的术语,清晰高效的表达。

3. RLHF(品德教育)

  • 模型 :根据人类反馈调整回答,符合社会偏好(如更友善、更严谨)。
  • 比喻 :当孩子说“因为天空喜欢蓝色!”,家长纠正:
  • “答案要有科学依据哦!”
    → 孩子学会“不仅回答,还要回答得靠谱”。

那么,聪明的你,一定会明白了,大模型什么时候需要微调呢?一般会在输出要求严格的垂直场景,或者希望更效率的任务,快速输出结果。在企业的 Ai 落地过程中,还是较为广泛,那么,我们如何微调呢?下面跟着我们的步骤开始吧!

02

免费构建微调的实例环境

  1. 打开魔搭构建实例

打开:https://modelscope.cn/my/mynotebook/preset

关联你的阿里云账号,选第二个gpu环境👇

注意这个实例免费,但是过一段时间就会释放,别怕搞错什么东西!

picture.image

两三分钟后,点击查看notebook

picture.image

这些大图标就是你的软件,侧边栏就是文件夹,下面的$符号logo,就是终端。相当于在云端给你装了个电脑。

picture.image

点击终端,进入后,我们就可以开始配置相关的环境啦

2、下载模型、创建模型文件夹

接着下载LLaMA-Factory代码。

我们只用复制不带#的代码就可以了。

安装依赖的环节会等待大概20分钟,不用怀疑,只要输入的指令没有反馈,就耐着性子,继续等待~~千万别急。

  
# 克隆LLaMA Factory 开源框架  
git clone https://github.com/hiyouga/LLaMA-Factory.git  
  
# 进入项目的目录  
cd LLaMA-Factory  
  
#创建虚拟环境  
python -m venv .venv  
  
#激活虚拟环境  
source .venv/bin/activate  
  
# 安装依赖(这一步很漫长,如果出错用下面环境冲突的指令)  
pip install -e ".[torch,metrics]"  
  
# 如果报错,环境冲突用改用这个解决   
pip install --no-deps -e .  

过程中如果缺少什么依赖,或者提醒做什么升级,照做就是!

会看到已经开始下载了,左边也多了一个文件夹。

picture.image

持续安装等待到这个状态:

picture.image

创建一个新的文件夹,命名为 newmodels,并下载模型,为了减少等待时间,以 Qwen2.5-0.5-instruct为例,这是一个最低参数的模型。

  
git clone https://www.modelscope.cn/Qwen/Qwen2.5-0.5B-Instruct.git

3、训练数据集准备

我们同样前往魔搭的数据集中,随便下载一个不到 300 行的数据集(数量少,速度快)下载:https://modelscope.cn/datasets/meadhu/taobao-positive-sentence/files

picture.image

下载后我们注意格式是 csv,用于训练需要是 json格式,这里我们需要预处理,可以让勤劳的ds写一个处理脚本运行即可,保存文件名为train_converted.json 。

|

|

⚠️⚠️⚠️这里不会处理的小伙伴可以留言,我私相关的提示词,获取完整代码,在这里就不赘述了~~

因为系统自带dataset_info.json,从目录中找到它,这是一个数据集的索引。我们需要将新创建好的数据集train_converted.json再此注册,直接把数据集名称写入dataset_info.json文件即可。

picture.image

03

一切就绪,开始训练

返回到我们的训练LLaMA-Factory 文件夹

  
  
## 回到LLaMA-Factory 文件夹,如果你已经在LLaMA-Factory 文件夹,就不要用这个指令了  
cd ..  
  
# 打开训练的 webui  
llamafactory-cli webui  

picture.image

点击这里反馈的网址,即可进入,设置自己的相关信息路径

picture.image

设置好后,就可以开始让它为你训练啦!

picture.image

一通操作猛如虎,你会看到你的终端咔咔干活儿,

picture.image

你在自己的 webui 上也可以看到最终的结果:

picture.image

这里模型损就是失衡量预测与真实值的误差,训练目标是最小化损失;但并非越小越好,太小就会是我们所说的“过拟合”。现在我们这个数据这样的结果就算是不错~

04

本地测试聊天,看看它的表现如何

我们切换到chat,试试模型有没有记住我们刚才提供的数据。

点击检查点路径👉chat👉加载模型

picture.image

接着我们就可以看到它的回答是基于我们的训练数据的(咱们这个模型因为基础参数小,加上训练的数据集少,所以不怎么聪明的样子,正常会是一个相关的回答,我这个数据集因为写文章训练了多轮,所以它主键走向了魔幻……)

picture.image

总体上,我们就认为训练成功啦~~

05

导出模型

1、 创建导出目录

导出目录命名为outputmodel

picture.image

导出成功后再看notebook就会发现多了一个文件夹

picture.image

2、 转化模型格式,安装 GGUF库

回到终端,LLaMA-Factory路径下,执行以下命令

  
## 新打开一个终端  
## 不管你在哪,运行这个指令回到根目录  
cd /mnt/workspace/LLaMA-Factory  
git clone https://github.com/ggerganov/llama.cpp.git  
cd llama.cpp/gguf-py  
pip install --editable .

执行完之后,就会发现目录多出一个 cpp 的文件夹

picture.image

首先会到LLaMA-Factor下面创建一个叫megred-model-path的文件夹

然后回到llma.cpp文件路径下,一次性复制下面三行代码运行转换格式

3、 转换格式

  
#再回到llama.cpp文件下  
cd ..  
#然后运行Python 代码,路径改成你的其中有两个路径:  
# 第一个路径`/mnt/workspace/LLaMA-Factory/outputmodel`改成你刚刚导出的模型路径  
# 第二个路径`--outfile /mnt/workspace/LLaMA-Factory/megred-model-path`是导出 GGUF 文件的路径,可以提前创建一个  
#下面三行全复制,粘贴到终端一次运行  
python convert_hf_to_gguf.py /mnt/workspace/LLaMA-Factory/outputmodel \  
 --outfile /mnt/workspace/LLaMA-Factory/megred-model-path \  
 --outtype q8_0

他就会直接将训练好的模型,为你保存到/mnt/workspace/LLaMA-Factory/llama.cpp

这个gguf就是常用的大模型格式,你粗略理解成大佬梁文峰老师天天忙的就是gguf这些。点击下载~

picture.image

06

使用模型,检验效果

最方便简单的方式,打开 https://jan.ai/ ,它可以直接使用模型

setting—— Molde Provider——import一下就可以了

picture.image

导入刚才下载的 GGUF 文件,点击 start,前往对话中,问个问题,嗯,是自己亲生打造的傻孩子没错了~~

picture.image

如果你有 ollama 的客户端,也可以将文件再次转换后,导入到 ollama 中,进而被 dify 或者 cherrystudio 调用使用,我这里在 cherrystudio 中尝试了之后,发现傻孩子变成了疯孩子,一发不可收拾

picture.image

怀疑可能和默认系统提示词导致的,或者是在文件转换时出问题了。这里就不再赘述啦~~

ok,这就是我们模型预训练最最最简单的一个最简单的一个流程体验。都有工程师为你完成😄😄~

这是第一篇笔记,希望对大家有帮助,并激励我继续坚持下去,我们下期再见!

往期推荐

1、抛砖引玉 | 为什么DeepSeek-R1是推理模型?(万字长文)

2、爽爆!一句话,AI全自动写脚本并剪辑出成片的企业级项目教程!

3、手把手教你免费把AI大模型接入小米音箱,无需任何代码基础,小白级基础详细操作教程!

4、二次元女友陪你上班是种什么体验?手把手教你用AI打破次元壁!

0
0
0
0
关于作者
关于作者

文章

0

获赞

0

收藏

0

相关资源
大规模高性能计算集群优化实践
随着机器学习的发展,数据量和训练模型都有越来越大的趋势,这对基础设施有了更高的要求,包括硬件、网络架构等。本次分享主要介绍火山引擎支撑大规模高性能计算集群的架构和优化实践。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论