AI探索 | 基于LLaMA-Factory的Deepseek模子微调

[复制链接]
发表于 2025-5-8 04:52:59 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
基于LLaMA-Factory的Deepseek微调
在人工智能的海潮下,大模子的应用愈发广泛,而如何对预训练模子举行高效微调,使其更贴合特定任务,成为研究与应用的关键。本期AI探索将围绕LLaMA-Factory,体系解说基于LLaMA-Factory的Deepseek模子的微调流程,包罗底子概念、情况设置、数据集预备、网页端与终端命令行训练、模子归并等内容。
1. 底子概念:知识库与微调
大模子(如GPT、BERT)在海量数据上举行预训练,学习了丰富的通用知识,可视为一个“知识库”。然而,对于某些特定领域(如医疗、法律),这些模子的知识可能存在局限性。因此,微调的本质,就是在原有知识库的底子上,针对特定任务举行优化,以提升模子在特定领域的表现。
类比解释:
1.学生开卷测验(知识库):学生查阅资料后回答问题,类似于大模子直接调用已有的知识。
2.学者储备知识(微调):学生对已掌握的问题有独到见解的回答,类似于对模子举行微调,使其在特定任务上表现更优。
2. LLaMA-Factory简介
LLaMA-Factory是一个开源工具,其目标是整合主流的各种高效训练微调技术,适配市场主流开源模子,形成一个功能丰富,适配性好的训练框架。项目提供了多个高层次抽象的调用接口,包含多阶段训练,推理测试,benchmark评测,API Server等,可以让开发者开箱即用。同时借鉴了 Stable Diffsion WebUI相干内容,提供了基于gradio的网页版工作台,方便初学者可以迅速上手使用,开发出自己的第一个模子。
3.实战演练:从情况设置到训练
训练顺遂运行必要包含4个必备条件:
1.呆板本身的硬件和驱动支持(包含显卡驱动,网络情况等);
2.本项目及相干依靠的python库的正确安装(包含CUDA, Pytorch等);
3.目标训练模子文件的正确下载;
4.训练数据集的正确构造和设置。

(1)硬件情况校验
显卡驱动和CUDA的安装,网络教程有许多,可使用以下命令做最简单的校验:
nvidia-smi
如何根据自己的设备选择模子,模子参数与GPU大小关系如图1所示。


图1 硬件依靠图

(2)安装LLaMA-Factory
安装好python和anaconda后,下载Llama Factory源码和情况依靠,在终端执行:
git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git
conda create -n llama_factory python=3.10
conda activate llama_factory
cd LLaMA-Factory
pip install -e ".[torch,metrics]"
如碰到包辩论,可执行:
pip install --no-deps -e .

(3)模子下载
项目支持通过模子名称直接从huggingface 和modelscope下载模子,但这样不容易对模子文件举行同一管理,这个步骤建议在huggingface官网找到自己所需的模子手动下载,后续使用时使用绝对路径来控制使用模子。
以DeepSeek-R1-Distill-Qwen-1.5B 为例,通过huggingface 下载
git clone https://huggingface.co/deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B
下载的过程中可能由于网络原因文件会不完整,下载完成后与huggingface的文件对比检查。随后在官方readme里提供的原始推理demo验证模子文件的正确性和transformers库等软件的可用性。

(4)命令行参数先容
llamafactory-cli 是后续训练紧张的入口指令, 其通过差别的参数控制实现相应的功能,具体参数如表1所示,如果想使用网页端训练,那么输入指令:
llamafactory-cli webui

表1 llamafactory-cli的相干参数先容



(5)数据集预备
在LLaMA Factory\data\路径下有各类数据集的格式,按照想训练的方式调解对数据集的格式。

以Alpaca格式为例,整个数据集是一个json对象的list。在data\ alpaca_zh_demo.json中的数据集格式如下。
[ 
  { 
    "instruction": "用户指令(必填)", 
    "input": "用户输入(选填)", 
    "output": "模子回答(必填)", 
    "system": "体系提示词(选填)", 
    "history": [ 
      ["第一轮指令(选填)", "第一轮回答(选填)"], 
      ["第二轮指令(选填)", "第二轮回答(选填)"] 
    ] 
  } 
]

具体参数补充内容例子如下:
[
  {
    "instruction": "请简述中国水利水电科学研究院水资源所。",
    "input": "",
    "output": "中国水利水电科学研究院水资源研究所成立于1956年,前身是水文研究所,自成立以来一直致力于水资源和水利建设古迹,颠末发展,已经形成了一支理论水平高、技术方法先进、实践经验丰富、年富力强、富于创新、团联合作、生机蓬勃、有竞争力的科技团队,已经成为一支理论水平高,技术全面,气力雄厚的知识型竞争性的科技团队,已经成为中国水资源及水利建设领域中的生力军,是在国内外较有良好信誉的科研机构之一。"
  }
]

预备好自己的数据集之后,则必要调用自己的数据集。LLaMA-Factory必要调用data/dataset_info.json 中数据集信息举行训练,因此必要在文件中添加如下形貌:
{
  "dataset_name": {
    "file_name": "data.json", #文件名称
  }
}

(Tip:若想添加数据集的其他参数,具体信息可在LLaMA Factory的data目次下dataset_info.json文件中检察)
4. 模子训练方式



到目前为止数据集一切预备工作已经完成,训练的方式可分为网页端训练和终端命令行训练。

(1)网页端训练
预备好数据集后使用Web UI举行可视化使用:
llamafactory-cli webui
进入训练界面后,该界面可分为三个模块,底子参数模块、功能选择模块和训练控制模块。
底子参数模块包罗语言选择,模子名称,模子路径和微调方法等参数选择。底子参数部门页面如图2所示。



图2 底子参数页面

功能选择模块包罗训练、评估&预测、对话和导出四个功能。本期只先容训练功能,训练功能页面中包含选择数据集和调解训练的底子参数,如轮数、学习率等,其页面如图3所示。


图3 功能选择模块图



图4 训练控制模块图



图5 全部参数预览

点击开始训练后能在页面日志日志大概自己的终端看到训练的过程。终端训练过程如图6所示,在图中可以观察到训练的参数和训练的进度。


图6 终端训练过程图

(2)终端命令行训练
可在当地终端快速开始,其中yaml中的参数可在当地提前设置好:
llamafactory-cli train examples/train_lora/llama3_lora_sft.yaml #模子训练
llamafactory-cli chat examples/inference/llama3_lora_sft.yaml #模子推理
llamafactory-cli export examples/merge_lora/llama3_lora_sft.yaml #模子归并
5. 模子归并与推理



归并训练后模子的指令:
llamafactory-cli export examples/merge_lora/llama3_lora_sft.yaml
终端模子推理的指令:
llamafactory-cli chat examples/inference/llama3_lora_sft.yaml
在Web UI中测试模子效果,可以再次使用指令llamafactory-cli webui进入可视化界面,在前端页面中chat模块测试训练的模子。其测试结果如图7所示。



图7 推理结果图
6. 小结



LLaMA-Factory 提供了丰富的工具链,使得Deepseek模子微调变得更加高效便捷。无论是网页端训练照旧源码训练,都可以根据差别需求选择合适的方式。联合LoRA、PPO、DPO、QLoRA等先进技术,我们可以在有限的资源下,高效训练并优化大模子。

 如何体系的去学习大模子LLM ?

大模子时代,火爆出圈的LLM大模子让程序员们开始重新评估自己的本事。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。
事实上,抢你饭碗的不是AI,而是会使用AI的人。
继科大讯飞、阿里、华为等巨头公司发布AI产品后,许多中小企业也连续进场!超高年薪,挖掘AI大模子人才! 现在大厂老板们,也更倾向于会AI的人,普通程序员,另有应对的机会吗?
与其焦虑……

不如成为「掌握AI工具的技术人」,究竟AI时代,谁先尝试,谁就能占得先机!
但是LLM相干的内容许多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习本钱和门槛很高。
基于此,我用做产品的心态来打磨这份大模子教程,深挖痛点并连续修改了近70次后,终于把整个AI大模子的学习门槛,降到了最低!
在这个版本当中:

第一您不必要具备任何算法和数学的底子
第二不要求预备高设置的电脑
第三不必懂Python等任何编程语言
您只必要听我讲,跟着我做即可,为了让学习的道路变得更简单,这份大模子教程已经给大家整理并打包,现在将这份 LLM大模子资料 分享出来:包罗LLM大模子书籍、640套大模子行业报告、LLM大模子学习视频、LLM大模子学习路线、开源大模子学习教程等,
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表