LlamaFactory安装与使用

LlamaFactory 是一个用于微调大型语言模型(LLM)的开源工具,支持多种模型(如 LLaMA、Qwen、Baichuan 等)和多种微调方法(如 LoRA、QLoRA、全量微调等)。以下是 LlamaFactory 的安装及使用教程,包含从 Python 环境配置到模型微调的完整流程。


1. 环境准备

1.1 安装 Python

确保你的系统中已安装 Python 3.8 或更高版本。可以通过以下命令检查 Python 版本:

python --version

如果未安装 Python,可以下载并安装。
分享链接:https://ug.link/DXP4800-B393-5824/filemgr/share-download/?id=988a9efe16354f438edcee78b7d30b6d 访问密码:cGob

1.2 安装 PyTorch

LlamaFactory 依赖 PyTorch。根据你的 GPU 配置选择合适的 PyTorch 版本。

  • • CPU 版本
    pip install torch torchvision torchaudio -i https://pypi.tuna.tsinghua.edu.cn/simple
  • • GPU 版本(CUDA 11.8)
    pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
  • • GPU 版本(CUDA 12.1)
    pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

2. 安装 LlamaFactory

2.1 克隆代码仓库

pip install llamafactory -i https://pypi.tuna.tsinghua.edu.cn/simple

2.2 验证安装

运行以下命令验证 LlamaFactory 是否安装成功:

llamafactory-cli version

3. 准备数据集

LlamaFactory 支持多种格式的数据集,包括 JSON、CSV、Parquet 等。以下是一个简单的 JSON 格式示例:

[
  {
    "instruction": "请解释什么是人工智能。",
    "input": "",
    "output": "人工智能是模拟人类智能的技术。"
  },
  {
    "instruction": "请解释什么是机器学习。",
    "input": "",
    "output": "机器学习是人工智能的一个分支,通过数据训练模型。"
  }
]

将数据集保存为 data.json,并确保其位于 LLaMA-Factory/data/ 目录下。


4. 微调模型

4.1 选择模型

LlamaFactory 支持多种预训练模型。你可以从 Hugging Face 下载模型,或者直接使用内置的模型名称。例如:

  • • llama-2-7b
  • • qwen-2b
  • • baichuan2-7b

4.2 配置微调参数

LlamaFactory 提供了配置文件,可以通过 YAML 文件进行设置。以下是一个简单的配置文件示例:

model_name_or_path: llama-2-7b
dataset: data.json
output_dir: ./output
num_train_epochs: 3
per_device_train_batch_size: 4
gradient_accumulation_steps: 4
learning_rate: 1.0e-4
lr_scheduler_type: cosine
logging_steps: 10
save_steps: 100
eval_steps: 100
evaluation_strategy: steps
load_best_model_at_end: true
fp16: true

4.3 启动微调

使用以下命令启动启动微调界面:

llamafactory-cli webui

5. 推理与测试

微调完成后,可以使用以下命令进行推理测试:

llamafactory-cli chat config.yaml

6. 常见问题

6.1 显存不足

  • • 使用 QLoRA 或 LoRA 方法减少显存占用。
  • • 减小 per_device_train_batch_size 或增加 gradient_accumulation_steps

6.2 数据集格式错误

  • • 确保数据集格式符合 LlamaFactory 的要求。
  • • 检查字段名称是否正确(如 instructioninputoutput)。

6.3 模型加载失败

  • • 确保网络连接正常,能够访问 Hugging Face。
  • • 手动下载模型并指定本地路径。

7. 进阶功能

7.1 多卡训练

使用以下命令启动多卡训练:

torchrun --nproc_per_node=4 llamafactory-cli train config.yaml

7.2 可视化训练过程

LlamaFactory 支持 TensorBoard 可视化。启动训练时添加以下参数:

llamafactory-cli train config.yaml --report_to tensorboard

8. 总结

通过以上步骤,你可以完成 LlamaFactory 的安装、数据集准备、模型微调和推理测试。LlamaFactory 提供了丰富的功能和灵活的配置选项,适合各种场景的模型微调需求。


 

阅读剩余
THE END