使用 LLaMA-Factory 训练和微调 LLaMA3 模型指南
本文将探讨如何使用 LLaMA-Factory 工具对 LLaMA3 模型进行微调。随着人工智能领域的不断发展,微调大语言模型(LLM)的过程正变得日益便捷。LLaMA-Factory 作为一个高效且低成本的微调框架,支持对 100 多个模型进行微调,简化了配置过程。
什么是模型的微调?
微调涉及调整预训练模型或基础模型的参数,使其适应特定任务或数据集。这个过程包括向模型提供新数据并修改其权重、偏差和某些参数。通过这种方式,可以让模型在新任务上获得更好的表现,而无需从头开始开发一个模型,从而节省时间和资源。
通常,当创建新的大语言模型时,它会在大量文本数据上进行训练。在预训练阶段之后,该模型会被进行微调,并采取安全措施,以确保其避免生成有害或有毒的响应。微调解决了让模型适应特定需求的问题。
为什么要用 LLaMA-Factory?
LLaMA Factory 能够高效且低成本地支持对 100 多个模型进行微调。它提供了友好的用户界面(LLama Board),用户可以通过简单的滑块轻松更改参数,如 dropout、epochs、批次大小等。此外,它还支持多种高级算法,如 LoRA、GaLore 等,并提供 Flash Attention、位置编码等功能。
LLaMA Board:统一用户界面
LLama Board 可以帮助人们调整和改进语言模型的性能,而无需了解如何编写代码。它就像一个仪表板,让你可以轻松地自定义语言模型如何学习和处理信息。
- 易于定制:你可以通过在网页上调整设置来改变模型的学习方式。
- 进度监控:随着模型的学习,你可以看到更新和图表,显示它的表现如何。
- 灵活的测试:可以通过将模型与已知答案进行比较,检查模型理解文本的程度。
- 支持多种语言:支持英语、俄语和中文等多种语言。
环境准备与安装
为了完成微调任务,我们需要一个具备 GPU 算力的云笔记本环境。以下是基于 Python 环境的标准安装步骤。
1. 克隆仓库
首先,我们将克隆官方仓库并进入目录。
git clone https://github.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory
2. 安装依赖包
接下来,我们将安装必要的库。推荐使用 Unsloth 以加速微调过程,同时安装 xformers 和 bitsandbytes 以优化显存使用。
# 安装 unsloth
pip install "unsloth[colab-new] @ git+https://github.com/unslothai/unsloth.git"
# 安装 xformers
pip install --no-deps xformers==0.0.25
# 安装 bitsandbytes
pip install .[bitsandbytes]
# 修复 urllib3 版本冲突
pip install 'urllib3<2'
3. 检查 GPU 规格
确保 GPU 可用并查看显存情况。
!nvidia-smi
4. 验证 CUDA 环境
导入 torch 并检查 CUDA 是否可用。
import torch
try:
assert torch.cuda.is_available()
AssertionError:
()


