首页
/ LLaMA-Factory项目中Qwen 2.5 VL模型的持续预训练实践

LLaMA-Factory项目中Qwen 2.5 VL模型的持续预训练实践

2025-05-01 08:27:10作者:柏廷章Berta

背景概述

LLaMA-Factory作为一个开源的大模型训练框架,近期在社区中引起了广泛关注。其中关于Qwen 2.5 VL(视觉语言)模型的持续预训练(Continued Pretraining,简称CPT)问题,反映了当前多模态模型训练中的一些技术挑战。

技术现状分析

目前LLaMA-Factory框架对Qwen 2.5 VL模型的支持主要集中在两个阶段:

  1. 监督微调(SFT)阶段
  2. 直接偏好优化(DPO)阶段

对于持续预训练(CPT)阶段,框架尚未提供原生支持。这主要是因为多模态预训练相比纯文本预训练存在额外的复杂性。

多模态CPT的技术挑战

实现Qwen 2.5 VL的持续预训练面临几个关键技术问题:

  1. 数据格式兼容性:现有的文本预训练数据格式无法直接适用于图文数据。理想的多模态CPT数据应该能够同时处理图像标记和可训练文本。

  2. 标签处理机制:在多模态场景下,需要特殊处理图像标记和其他模态标记的标签,可能需要将这些标记的损失权重设置为-100以排除计算。

  3. 数据加载异常:实践中发现,即使用于SFT的sharegpt单图多轮对话数据集,在CPT模式下也会出现数据加载数量异常的问题。

临时解决方案探讨

虽然框架尚未原生支持,但技术社区提出了一些可能的解决方案:

  1. 修改训练模式:在SFT阶段开启train_on_prompt选项,同时对图像标记等特殊标记进行标签处理。

  2. 数据格式转换:将多模态数据转换为类似以下格式:

<IMG1><trainable_text>描述文本1</trainable_text>
<IMG2><trainable_text>描述文本2</trainable_text>
  1. 等待官方支持:项目维护者已表示未来计划支持多模态CPT,届时将提供更完善的解决方案。

实践建议

对于急需进行Qwen 2.5 VL持续预训练的用户,可以考虑:

  1. 密切关注项目更新,等待官方支持多模态CPT
  2. 在现有SFT框架基础上进行适当修改
  3. 确保多模态数据的预处理符合模型预期格式
  4. 注意验证数据加载的正确性,避免数据量异常

总结

LLaMA-Factory项目在Qwen 2.5 VL模型的持续预训练支持上还有发展空间,这反映了多模态大模型训练的技术复杂性。随着项目的迭代更新,相信未来会提供更完善的多模态训练解决方案。在此期间,技术社区可以通过各种临时方案满足特定场景下的训练需求。

登录后查看全文
热门项目推荐

项目优选

收起
docsdocs
暂无描述
Markdown
832
5.51 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
496
521
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
980
2.31 K
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
807
1.16 K
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
796
1.6 K
kernelkernel
deepin linux kernel
C
32
16
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
486
314
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.03 K
782
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.21 K
1.26 K
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
665
304