跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI算法

使用 LLaMA-Factory 训练 Qwen2.5-VL 进行目标检测

使用 LLaMA-Factory 框架对 Qwen2.5-VL 大模型进行目标检测任务微调的全过程。内容涵盖环境部署、配置文件解析、模型下载、LabelMe 数据格式转换至 ShareGPT 标准、训练参数配置以及推理验证。重点讲解了针对 Vision Transformer 架构的图片尺寸处理策略及坐标映射方法,提供了完整的 YAML 配置示例和代码片段,帮助开发者快速上手多模态大模型的定制训练。

不知所云发布于 2026/4/6更新于 2026/10/24127 浏览
使用 LLaMA-Factory 训练 Qwen2.5-VL 进行目标检测

使用 LLaMA-Factory 训练 Qwen2.5-VL 进行目标检测

虽然 YOLO 在目标检测落地性上较强,但大模型也在快速发展。本文尝试使用 Qwen2.5-VL 配合 LLaMA-Factory 完成目标检测的微调训练。

一、LLaMA-Factory 环境部署

参考官方文档或相关教程完成 LLaMA-Factory 的环境安装与配置。确保虚拟环境中已安装必要的依赖包。

二、配置文件介绍

LLaMA-Factory 的训练命令通常基于 YAML 配置文件。主要关注以下参数:

  • model: 模型选择与路径
  • method: 训练方式(如 SFT)
  • dataset: 数据集配置
  • output: 输出目录
  • train: 训练超参数

1. 模型设置

在配置文件中设置 model_name_or_path。建议将路径设置为本地已下载的模型绝对路径,以避免网络下载不稳定。

2. 数据集配置

需要配置 data/mllm_demo.json 和 data/dataset_info.json。变量命名需保持一致,例如 messages 和 images 列名映射。 示例配置片段:

{
  "mllm_demo": {
    "file_name": "mllm_demo.json",
    "formatting": "sharegpt",
    "columns": {"messages": "messages", "images": "images"},
    "tags": {"role_tag": "role", "content_tag":     
  

"content"
,
"user_tag"
:
"user"
,
"assistant_tag"
:
"assistant"
}
}
}

三、训练流程

1. 模型下载

可通过 ModelScope 或 HuggingFace 下载 Qwen2.5-VL-3B 模型。

modelscope download --model Qwen/Qwen2.5-VL-3B-Instruct --local_dir <本地下载路径>

或使用 Python 脚本:

from modelscope.hub.snapshot_download import snapshot_download
model_id = 'qwen/Qwen2.5-VL-3B-Instruct'
local_dir = '~/llm_models/Qwen2.5-VL'
model_dir = snapshot_download(model_id, cache_dir=local_dir)

2. 数据格式转换

现有目标检测框通常为 LabelMe JSON 格式,需转换为 LLaMA-Factory 兼容的 JSONL 格式。 Qwen2.5-VL 基于 Vision Transformer,输入尺寸需为 28 的倍数。处理时需同时调整图片和标签坐标,保持相对位置不变。 关键注意事项:

  • 坐标系统:使用绝对像素坐标。
  • 舍入处理:四舍五入到最接近的 28 的倍数。
  • 边界保护:防止坐标超出图像边界。

建议在根目录创建数据处理脚本,将图片 resize 到固定尺寸并同步处理标签,生成 train.jsonl。

3. 配置文件修改

修改 dataset_info.json 添加自定义数据集条目:

{
  "train_det": {
    "file_name": "<train.jsonl 路径>",
    "formatting": "sharegpt",
    "columns": {"messages": "messages", "images": "images"},
    "tags": {"role_tag": "role", "content_tag": "content", "user_tag": "user", "assistant_tag": "assistant"}
  }
}

复制并修改训练 YAML 配置文件:

### model
model_name_or_path: <本地模型绝对路径>
image_max_pixels: 262144
video_max_pixels: 16384
trust_remote_code: true

### method
stage: sft
do_train: true
finetuning_type: lora
lora_rank: 8
lora_target: all

### dataset
dataset: train_det
template: qwen2_vl
cutoff_len: 2048
max_samples: 20000
overwrite_cache: true
preprocessing_num_workers: 16
dataloader_num_workers: 4

### output
output_dir: ./save/train_detect_3B
logging_steps: 10
save_steps: 500
plot_loss: true
overwrite_output_dir: true
save_only_model: false
report_to: none

### train
per_device_train_batch_size: 8
gradient_accumulation_steps: 8
learning_rate: 1.0e-5
num_train_epochs: 6.0
lr_scheduler_type: cosine
warmup_ratio: 0.1
bf16: true
ddp_timeout: 180000000
resume_from_checkpoint: null

注意根据显存大小调整 batch size 和学习率。

四、推理与验证

训练结束后得到 LoRA 权重。可脱离 LLaMA-Factory 实现独立推理,包括图片预处理、模型预测及检测框反向映射,以验证检测结果。

五、总结

模型合并及后续推理较为简单,可根据实际需求进一步扩展。通过上述步骤,可实现利用大模型进行目标检测任务的微调与部署。

目录

  1. 使用 LLaMA-Factory 训练 Qwen2.5-VL 进行目标检测
  2. 一、LLaMA-Factory 环境部署
  3. 二、配置文件介绍
  4. 1. 模型设置
  5. 2. 数据集配置
  6. 三、训练流程
  7. 1. 模型下载
  8. 2. 数据格式转换
  9. 3. 配置文件修改
  10. model
  11. method
  12. dataset
  13. output
  14. train
  15. 四、推理与验证
  16. 五、总结

更多推荐文章

查看全部
  • 基于遗传算法与 RBF 神经网络的无人机故障容错控制仿真
  • Spring 配置类与注解方式详解
  • Pygame 游戏开发完整流程与实战解析
  • 计算机视觉高级应用与前沿技术发展
  • 基于 Microi 吾码低代码框架构建 Vue 高效应用
  • OpenClaw 与 Claude Code、Cursor、Copilot 核心区别解析
  • 为什么 Java Lambda 和匿名内部类不能修改外部变量?final 与等效 final 解析
  • 哈希表原理与 C++ 实战实现
  • AI 时代产品经理核心技能与未来发展趋势
  • 网络安全从业人员画像调研:年龄、地域与职业特质分析
  • Java 网络编程与网络通信基础
  • 通义万相 2.1 API 调用指南:Python 实现图像与文本生成
  • Python 函数、列表与元组核心用法及实战案例
  • GitHub Copilot 学生认证指南:免费获取 Pro 版权限
  • C++ 入门进阶:输入输出、缺省参数与函数重载
  • M2LOrder 服务优化:API 响应压缩与 WebUI 资源懒加载
  • AI 时代内存需求暴涨与能源隐私绿色技术趋势分析
  • Ollama 模型管理与删除指南及 Open-WebUI 部署实战
  • 利用 Higress 将 REST API 快速转换为 MCP Server
  • Whisper 模型下载与版本选择指南

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如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