跳到主要内容
LLaMA Factory 微调 LLMs 与 VLMs 实战指南 | 极客日志
Python AI 算法
LLaMA Factory 微调 LLMs 与 VLMs 实战指南 LLaMA Factory 提供一站式可视化界面支持 LLM 及 VLM 的高效微调。涵盖多种模型架构与训练方法,如 LoRA、QLoRA 及全参数训练。内容包含安装配置流程,演示基于 Qwen3 和 Qwen-VL 的微调实践,并解析数据格式与自定义方式,助力开发者快速上手大模型优化。
beaabea 发布于 2026/4/8 更新于 2026/5/23 13 浏览LLaMA Factory 高效微调平台概览
LLaMA Factory 是一个开源的大模型高效微调平台,在 GitHub 上拥有超过 60k 收藏,非常适合入门开发者。它提供了一站式操作界面,通过可视化操作即可完成对 LLMs(大语言模型)或 VLMs(视觉语言模型)的微调。
开源地址:https://github.com/hiyouga/LLaMA-Factory
核心特色
该平台支持广泛的模型和训练策略,主要特性包括:
多种模型 :支持 LLaMA、LLaVA、Mistral、Mixtral-MoE、Qwen、DeepSeek、Yi、Gemma、ChatGLM、Phi 等主流架构。
集成方法 :涵盖(增量)预训练、指令监督微调、奖励模型训练、PPO、DPO、KTO、ORPO 等多种训练方式。
多种精度 :支持 16 比特全参数微调、冻结微调、LoRA 以及基于 AQLM/AWQ/GPTQ 等的 2/3/4/5/6/8 比特 QLoRA 微调。
先进算法 :内置 GaLore、BAdam、APOLLO、Muon、OFT、DoRA、LongLoRA、PiSSA 等前沿优化算法。
实用技巧 :集成 FlashAttention-2、Unsloth、Liger Kernel、RoPE scaling、NEFTune 等技术加速训练。
实验监控 :支持 LlamaBoard、TensorBoard、Wandb、MLflow 等监控工具。
极速推理 :基于 vLLM 或 SGLang 的 OpenAI 风格 API、浏览器界面和命令行接口。
推荐适配计划
适配时间 模型名称 Day 0 Qwen3 / Qwen2.5-VL / Gemma 3 / GLM-4.1V / InternLM 3 / MiniCPM-o-2.6 Day 1 Llama 3 / GLM-4 / Mistral Small / PaliGemma2 / Llama 4
支持的训练方法
方法 全参数训练 部分参数训练 LoRA QLoRA 预训练 ✅ ✅ ✅ ✅ 指令监督微调 ✅ ✅ ✅ ✅ 奖励模型训练 ✅ ✅ ✅ ✅ PPO 训练 ✅ ✅ ✅ ✅ DPO 训练 ✅ ✅ ✅ ✅ KTO 训练 ✅ ✅ ✅ ✅ ORPO 训练 ✅ ✅ ✅ ✅ SimPO 训练
支持的模型列表 平台支持大量主流模型,以下是部分常见模型及其参数量与 Template 配置:
模型名 参数量 Template Baichuan 2 7B/13B baichuan2 ChatGLM3 6B chatglm3 DeepSeek (Code/MoE) 7B/16B/67B/236B deepseek DeepSeek R1 (Distill) 1.5B/7B/8B/14B/32B/70B/671B deepseekr1 Falcon 7B/11B/40B/180B falcon Gemma/Gemma 2 2B/7B/9B/27B gemma/gemma2 GLM-4/GLM-4.1V 9B/32B glm4/glmz1 InternLM 2-3 7B/8B/20B intern2 InternVL 2.5-3.5 1B/2B/4B/8B/14B/30B/38B/78B/241B intern_vl Llama 3-3.3 1B/3B/8B/70B llama3 Llama 4 109B/402B llama4 LLaVA-NeXT 7B/8B/13B/34B/72B/110B llava_next MiniCPM 1-4.1 0.5B/1B/2B/4B/8B cpm/cpm3/cpm4 Mistral/Mixtral 7B/8x7B/8x22B mistral Phi-3/Phi-4 4B/14B phi Qwen (1-2.5) 0.5B/1.5B/3B/7B/14B/32B/72B/110B qwen Qwen3 (MoE/Instruct) 0.6B/1.7B/4B/8B/14B/32B/80B/235B qwen3/qwen3_nothink Qwen2-VL/Qwen2.5-VL 2B/3B/7B/32B/72B qwen2_vl Yi/Yi-1.5 1.5B/6B/9B/34B yi
提供的数据集 平台内置了丰富的基础数据集,同时也支持自定义格式。
预训练数据集
Wiki Demo (en)
RefinedWeb (en)
RedPajama V2 (en)
Wikipedia (en/zh)
Pile (en)
SkyPile (zh)
FineWeb (en)
The Stack (en)
StarCoder (en)
指令微调数据集
Identity (en&zh)
Stanford Alpaca (en/zh)
Alpaca GPT4 (en&zh)
Glaive Function Calling V2 (en&zh)
LIMA (en)
BELLE 系列 (zh)
UltraChat (en)
OpenOrca (en)
MathInstruct (en)
Firefly 1.1M (zh)
ShareGPT Hyperfiltered (en)
AgentInstruct (en)
Open-Thoughts (en)
Chinese-DeepSeek-R1-Distill (zh)
偏好数据集
DPO mixed (en&zh)
UltraFeedback (en)
COIG-P (zh)
RLHF-V (en)
HH-RLHF (en)
KTO mixed (en)
注意 :部分数据集的使用需要确认权限,推荐使用以下命令登录 Hugging Face 账户:
pip install --upgrade huggingface_hub
huggingface-cli login
安装 LLaMA Factory git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory
创建一个名为 LLaMA-Factory 的 Conda 环境,指定 Python 版本为 3.10:
conda create -n LLaMA-Factory python=3.10
接着安装 PyTorch 及相关依赖(以 CUDA 12.1 为例):
pip install torch==2.5.1 torchvision==0.20.1 torchaudio==2.5.1 --index-url https://download.pytorch.org/whl/cu121
pip install -e ".[torch,metrics]" --no-build-isolation
硬件参考 方法 精度 7B 14B 30B 70B Full (bf16 or fp16) 32 120GB 240GB 600GB 1200GB Full (pure_bf16) 16 60GB 120GB 300GB 600GB Freeze/LoRA/GaLore/APOLLO/BAdam 16 16GB 32GB 64GB 160GB QLoRA 8 10GB 20GB 40GB 80GB QLoRA 4 6GB 12GB 24GB 48GB QLoRA 2 4GB 8GB 16GB 24GB
微调 LLM 实践:Qwen3-4B-Thinking conda activate LLaMA-Factory
llamafactory-cli webui
在可视化界面中,选择模型(如 Qwen3-4B-Thinking)、微调方法(LoRA)及训练方式(Supervised Fine-Tuning)。
选择数据集(例如 alpaca_zh_demo),点击'预览数据集'查看内容是否符合预期。其余参数可按默认设置,点击'训练'即可开始。
微调 VLM 实践:Qwen/Qwen2.5-VL-3B-Instruct 同样激活环境并启动 WebUI。选择多模态模型(Qwen/Qwen2.5-VL-3B-Instruct)、微调方法(LoRA)及训练方式。
选择数据集(如 mllm_demo),预览时可以看到对应的图文数据。对于多模态任务,建议根据实际需求调整训练轮数(例如设为 10 轮)。
了解源代码与自定义数据集 项目目录结构清晰,重点在于 data 文件夹。这里存放了微调训练用到的示例数据,如 alpaca_zh_demo.json 和 mllm_demo.json。
数据格式解析 目前支持 alpaca 格式和 sharegpt 格式。允许的文件类型包括 json、jsonl、csv、parquet 和 arrow。
[
{
"instruction" : "识别并解释给定列表中的两个科学理论:细胞理论和日心说。" ,
"input" : "" ,
"output" : "细胞理论是生物科学的一个理论..."
}
]
[
{
"messages" : [
{ "content" : "<image>Who are they?" , "role" : "user" } ,
{ "content" : "They're Kane and Gretzka from Bayern Munich." , "role" : "assistant" }
] ,
"images" : [ "mllm_demo_data/1.jpg" ]
}
]
自定义数据集 制作自定义数据集可参考官方 README。在 dataset_info.json 文件中添加自定义的数据集名字和格式配置即可。
例如,新增一个 vlm_graph_gen 数据集,标注内容在 vlm_graph_gen.json 中,配置如下:
{
"vlm_graph_gen" : {
"file_name" : "vlm_graph_gen.json" ,
"formatting" : "sharegpt" ,
"columns" : { "messages" : "messages" , "images" : "images" } ,
"tags" : { "role_tag" : "role" , "content_tag" : "content" , "user_tag" : "user" , "assistant_tag" : "assistant" }
}
}
配置完成后,在微调训练界面即可选择该数据集进行训练。
参考资料 相关免费在线工具 加密/解密文本 使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
RSA密钥对生成器 生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
Mermaid 预览与可视化编辑 基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
随机西班牙地址生成器 随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online
Gemini 图片去水印 基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online
curl 转代码 解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online