如何使用 LLaMA-Factory 微调 LLaMA3

【LLaMa3微调】使用 LLaMA-Factory 微调LLaMA3

  1. 实验环境
    1.1 机器
    • 操作系统:Windows 10 或 Ubuntu
    • PyTorch 版本:2.1.0
    • Python 版本:3.10(针对Ubuntu 22.04)
    • Cuda 版本:12.1
    • GPU 配置:p100 (16GB) * 2
    • CPU 配置:12 vCPU Intel® Xeon® Platinum 8352V CPU @ 2.10GHz

1.2 基座模型

  • 基于中文数据训练过的 LLaMA3 8B 模型:shenzhi-wang/Llama3-8B-Chinese-Chat

  • 可选配置:hf 国内镜像站,使用以下命令安装和配置:

    bash 复制代码
    pip install -U huggingface_hub
    export HF_ENDPOINT=https://hf-mirror.com
    huggingface-cli download --resume-download shenzhi-wang/Llama3-8B-Chinese-Chat --local-dir /root/autodl-tmp/models/Llama3-8B-Chinese-Chat1
  1. LLaMA-Factory 框架

2.1 安装

  • 使用以下命令克隆并安装LLaMA-Factory:

    bash 复制代码
    git clone https://github.com/hiyouga/LLaMA-Factory.git
    cd LLaMA-Factory
    pip install -e .

2.2 准备训练数据

  • 训练数据示例:fruozhiba_qaswift_train.json,可以去魔搭社区下载

  • 将训练数据放置在 LLaMA-Factory/data/ 目录下,例如:LLaMA-Factory/data/ruozhiba_qaswift_train.json

  • 修改数据注册文件:LLaMA-Factory/data/dataset_info.json,添加数据集的配置信息,例如:

    json 复制代码
    "fintech": {
      "file_name": "ruozhiba_qaswift_train.json",
      "columns": {
        "prompt": "instruction",
        "query": "input",
        "response": "output",
        "history": "history"
      }
    }

2.3 启动 Web UI

在 LLaMA-Factory 目录下执行以下命令启动 Web UI:
bash cd LLaMA-Factory llamafactory-cli webui

2.4 微调模型

使用 Web UI 或命令行进行微调。

命令行微调示例:构建配置文件 cust/train_llama3_lora_sft.yaml,内容示例如下:

复制代码
 cutoff_len: 1024
 dataset: ruozhiba_qaswift_train
 dataset_dir: data
 do_train: true
 finetuning_type: lora
 flash_attn: auto
 fp16: true
 gradient_accumulation_steps: 8
 learning_rate: 0.0002
 logging_steps: 5
 lora_alpha: 16
 lora_dropout: 0
 lora_rank: 8
 lora_target: q_proj,v_proj
 lr_scheduler_type: cosine
 max_grad_norm: 1.0
 max_samples: 1000
 model_name_or_path: /root/autodl-tmp/models/Llama3-8B-Chinese-Chat
 num_train_epochs: 10.0
 optim: adamw_torch
 output_dir: saves/LLaMA3-8B-Chinese-Chat/lora/train_XXXX-XX-XX-XX-XX-XX
 packing: false
 per_device_train_batch_size: 2
 plot_loss: true
 preprocessing_num_workers: 16
 report_to: none
 save_steps: 100
 stage: sft
 template: llama3
 use_unsloth: true
 warmup_steps: 0

使用以下命令执行微调

复制代码
 ```bash
 llamafactory-cli train cust/train_llama3_lora_sft.yaml
 ```
相关推荐
promanz4 小时前
llamap.cpp 和 llama-index连接
人工智能·llama
GPU实战笔记7 天前
本地跑不动 llama.cpp,临时租云 GPU 怎么搭?从启动服务到环境复用
java·服务器·网络·人工智能·深度学习·llama
牛马工作号9 天前
RK3588 使用 rk-llama.cpp + RKNPU2 部署 Qwen3.5:从零开始的 NPU 本地大模型实战
人工智能·语言模型·llama
书源丶9 天前
Qwen3-Embedding-0.6B 纯 CPU
网络·语言模型·embedding·llama
论文复现现场10 天前
Llama/Qwen 70B 部署需要几张 RTX 4090?2卡、4卡、8卡显存、量化与 vLLM 选型
llama·qwen·vllm·大模型推理·大模型部署·rtx4090
谢白羽11 天前
在4×B300用SGLang部署DeepSeek-V4.1 Flash优化实录
笔记·python·llm·llama·sglang
renzao_ai14 天前
本地 35B 大模型部署实战:Ollama 跑 Ornith-35B 全流程
python·llama·免费ai大模型
Είναι η κοπέλα14 天前
本地大模型部署完全指南:Ollama / vLLM / llama.cpp / MLX 四大引擎横评与选型实战
macos·llama·vllm
小饕14 天前
RK3588 NPU 跑大模型实测:rknn-llm 解码 25.9 tok/s,是 llama.cpp 的 4 倍!附三天完整踩坑记录
人工智能·机器人·llama
一航jason15 天前
Android平台推理框架及试用场景模型对比
android·人工智能·ai·架构·ai编程·llama