nlp|微调大语言模型初探索(1),LLaMA-Factory
- 开源代码
- 2025-09-06 13:39:02

前言
微调模型通常比从零开始训练一个模型的技术要求低。公司不需要拥有大量的深度学习专家,利用现有的开源工具和库(如Hugging Face的Transformers等),中小型公司可以轻松地使用和微调大型模型,从而快速实现AI能力的集成。因此,学会微调大模型就很有必要。
1.微调方法 1.1 全参数微调全参数微调是指预训练模型的所有参数进行调整和优化,以使模型能够适应特定任务。具体来说,就是通过训练数据对预训练模型的所有参数(包括权重和偏置等)进行微调,使其更好地执行目标任务。
1.2 部分参数微调 1.2.1 低秩适配(Low-Rank Adaptation, LoRA)LoRA方法通过引入低秩矩阵来代替全连接层中的权重更新。它通过对模型中的部分权重矩阵进行低秩分解,从而减少需要微调的参数量。
1.2.2 适配器方法(Adapters)适配器方法通过在预训练模型中插入小型的适配器模块,保持大部分原始模型的参数不变,只微调适配器模块。这种方法显著减少了需要微调的参数数量,同时保持了迁移能力。
1.2.3 Prompt Tuning(提示微调)Prompt Tuning是通过优化输入的“提示”或“前缀”来适应新任务,而不是微调模型的所有参数。这种方法特别适用于自然语言处理任务,在不修改模型本身的情况下,通过改变输入格式来提高模型的任务适应性。 具体部分参数微调方法还有很多,感兴趣的可以自己去探索。
2.实践!!网上得来终觉浅,绝知此事要躬行,光看理论不实践,这不是耍流氓吗??!! 推荐实践项目:LLaMA-Factory 按照官网教程去安装:
2.1 安装环境官网推荐的环境:
git clone --depth 1 github /hiyouga/LLaMA-Factory.git cd LLaMA-Factory conda create -n llama-lora python=3.10 conda activate llama-lora pip install -e ".[torch,metrics]"如果嫌太慢的话,可以换源去安装。 安装完成后,可以去校验校验教程网址
3. 注意事项 3.1.这里我llamafactory-cli train -h校验的时候,报错:搜索发现是环境优先级问题:
sudo vim /etc/profile # 将你的conda环境放到profile里面 export PATH="/home/hxgk/anaconda3/envs/lora-llama/bin:$PATH" source /etc/profile 3.2 yaml文件配置1.将LLaMA-Factory/examples/accelerate/fsdp_config.yaml第19行的num_processes设置成你的显卡个数。 2.将LLaMA-Factory/examples/train_lora/llama3_lora_sft.yaml中的eval全部注释掉,如图所示: 两个有一个没设置都有可能出现: sys.exit(load_entry_point(‘torch==2.5.1’, ‘console_scripts’, ‘torchrun’)()) … torch.distributed.elastic.multiprocessing.errors.ChildFailedError: 这样的报错。
3.2 具体微调模型的显存大小不能全信官网官网数据: 我刚开始使用Llama3-8B,使用lora方法去微调模型(8张8g显存显卡),理论上只会使用16g-32g显存,我64g显存绰绰有余,结果直接报OOM,结果气的我直接下载了llama-1B才成功微调。
总结整体来说,LLaMA-Factory这个项目的坑不少,需要仔细一点,我现在也刚刚跑通,后续考虑制作自己的数据集,然后微调一个chatbox试试。
nlp|微调大语言模型初探索(1),LLaMA-Factory由讯客互联开源代码栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“nlp|微调大语言模型初探索(1),LLaMA-Factory”