用 LLaMA-Factory WebUI 微调 Qwen2.5-VL
这次我把流程收窄到一件事:用 LLaMA-Factory 的 WebUI,给 Qwen/Qwen2.5-VL-3B-Instruct 做一次 LoRA 微调。它的好处不在'高级',而在于省掉很多手写配置的来回折腾,适合先把多模态训练跑通,再慢慢调细节。
环境搭建
先拉代码、建虚拟环境、装依赖。
# 1. 克隆项目仓库
git clone https://github.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory
# 2. 创建并激活 Conda 虚拟环境
conda create -n llama_factory python=3.10
conda activate llama_factory
# 3. 安装核心依赖
pip install -e .[torch,metrics]
装完后跑一条版本命令,确认 CLI 能正常起来。
llamafactory-cli version
如果终端能看到版本信息,说明基础环境没问题。这个阶段别急着进 WebUI,先把依赖和 Python 版本踩稳,后面能少很多莫名其妙的报错。
数据集准备
多模态数据在 LLaMA-Factory 里不是随便丢个 JSON 就能识别的,目录和字段名都得对上。一个常见的目录长这样:
pokemon_sharegpt/
├── dataset_info.json # 数据集配置文件
├── images/ # 存放所有图片的文件夹
│ ├── pokemon_0001.png
│ └── ...
└── pokemon_sharegpt.json # ShareGPT 格式的图文对话数据
数据本体用 JSON 列表保存,每条样本是一段对话,图像通过 <image> 占位符插进去,再靠 images 字段把图片路径挂上。
[
{
"conversations": [
{"from": "human", "value": "详细描述一下这只宝可梦。<image>"},
{"from": "gpt", "value": "这是皮卡丘,一只电属性的宝可梦,拥有黄色的皮毛和红色的脸颊。"




