多模态大模型微调实践!PAI+LLaMA Factory搭建AI导游

一、引言

AI的快速发展推动了各行各业的智能化转型和创新,随之而来的是对AI应用的迫切需求。

如何微调大模型、高效搭建AI应用成为了开发者们广泛关注的技术方向。阿里云人工智能平台PAI,联合开源低代码大模型微调框架LLaMA Factory ,共同打造多模态大模型微调训练最佳实践,通过微调 Qwen2-VL 模型,快速搭建文旅领域知识问答机器人,带您开启AI创新与应用之旅,点击阅读原文可马上体验~

二、详细实验步骤

1、环境准备和资源准备

为了顺利开发文旅领域知识问答机器人,首先需要准备好运行环境,包括开通阿里云交互式建模PAI-DSW服务并创建实例。

1.1领取PAI-DSW免费试用权益

前往文末“阅读原文”中的阿里云活动页面,领取PAI-DSW产品的免费试用资源包。新用户可免费获得试用资源,用于启动和运行实例,具体试用权益和试用规则请参考领取页面。老用户可创建按量付费实例,按小时计费,约6-30元/小时。

1.2开通机器学习PAI并创建默认工作空间

前往PAI控制台,其中关键参数配置如下:

  • 本教程地域选择:华北2(北京)。您也可以根据情况选择华东1(杭州)、华东2(上海)、华南1(深圳)地域。
  • 组合开通:本教程无需使用其他产品,去除勾选MaxCompute和DataWorks产品。
  • 服务角色授权:单击去授权,完成服务角色授权。

说明:更多详细内容,请参见开通并创建默认工作空间。

img

1.3 进入PAI NotebookGallery

登录PAI控制台。

在左侧导航栏中,选择快速开始>NotebookGallery。

img

在Notebook Gallery页面,单击进入“LLaMA Factory多模态微调实践:微调Qwen2-VL构建文旅大模型”教程。

img

img

在详情页面,您可查看到预置的LLaMA Factory多模态微调实践:微调Qwen2-VL构建文旅大模型教程,单击右上角的在DSW中打开。

img

在请选择对应实例对话框中,单击新建DSW实例。

在这里插入图片描述

1.4 创建PAI-DSW实例

在配置实例页面,自定义输入实例名称,例如DSW_LlamaFactory。

img

说明:

  • 若您是 PAI 产品新用户,请再次确认是否已领取免费使用权益,点击领取。若您未领取免费试用权益,或不符合免费试用条件,或历史已领取且免费试用额度用尽或到期,完成本实验将产生扣费,大约为6-30元/小时。
  • 请在实验完成后,参考最后一章节清理及后续,停止/删除实例,以免产生不必要的扣费或资源消耗。

GPU推荐使用 24GB 显存的 A10(ecs.gn7i-c8g1.2xlarge)或更高配置。

※ 支持免费试用的资源:

ecs.gn7i-c8g1.2xlarge、ecs.gn6v-c8g1.2xlarge、ecs.g6.xlarge

img

在配置实例页面的选择镜像区域,请确认镜像是否为官方镜像的modelscope:1.14.0-pytorch2.1.2-gpu-py310-cu121-ubuntu22.04

在配置实例页面,未提及的参数保持默认即可,单击确认,创建实例。

请您耐心等待大约3分钟左右,当状态变为运行中时,表示实例创建成功,点击打开NoteBook。

img

1.5 运行Notebook教程文件

安装LLaMA Factory

根据教程指引,依次运行命令。

说明:单击命令左侧的运行▶按钮表示开始运行任务,当左侧为✅号时表明成功运行结束。

img

img

下载数据集

LLaMA-Factory 项目内置了丰富的数据集,放在了 data目录下。您可以跳过本步骤,直接使用内置数据集。您也可以准备自定义数据集,将数据处理为框架特定的格式,放在 data 下,并且修改 dataset_info.json 文件。

本教程准备了一份多轮对话数据集,运行下述命令下载数据。

说明:单击命令左侧的运行▶按钮表示开始运行任务,当左侧为✅号时表明成功运行结束。

img

2. 模型微调

2.1 启动 Web UI

单击命令左侧的运行▶按钮表示开始运行任务,当左侧为✅号时表明成功运行结束。

然后单击返回的URL地址,进入Web UI页面。

img

2.2 配置参数

进入 WebUI 后,可以切换语言到中文(zh)。首先配置模型,本教程选择 Qwen2VL-2B-Chat 模型,微调方法修改为 full,针对小模型使用全参微调方法能带来更好的效果。

img

数据集使用上述下载的 train.json。

img

可以点击「预览数据集」。点击关闭返回训练界面。

img

设置学习率为 1e-4,训练轮数为 10,更改计算类型为 pure_bf16,梯度累积为 2,有利于模型拟合。

img

在其他参数设置区域修改保存间隔为 1000,节省硬盘空间。

在这里插入图片描述

2.3 启动微调

将输出目录修改为 train_qwen2vl,训练后的模型权重将会保存在此目录中。点击「预览命令」可展示所有已配置的参数,您如果想通过代码运行微调,可以复制这段命令,在命令行运行。

点击「开始」启动模型微调。

img

启动微调后需要等待一段时间,待模型下载完毕后可在界面观察到训练进度和损失曲线。模型微调大约需要 14 分钟,显示“训练完毕”代表微调成功。

img

3. 模型对话

选择「Chat」栏,将检查点路径改为 train_qwen2vl,点击「加载模型」即可在 Web UI 中和微调后的模型进行对话。

img

首先点击下载测试图片1或测试图片2,并上传至对话框的图像区域,接着在系统提示词区域填写“你是一个导游,请生动有趣地回答游客提出的问题”。在页面底部的对话框输入想要和模型对话的内容,点击提交即可发送消息。

img

发送后模型会逐字生成回答,从回答中可以发现模型学习到了数据集中的内容,能够恰当地模仿导游的语气介绍图中的山西博物院。

img

点击「卸载模型」,点击检查点路径输入框取消勾选检查点路径,再次点击「加载模型」,即可与微调前的原始模型聊天。

img

重新向模型发送相同的内容,发现原始模型无法准确识别山西博物院。

img

三、资源清理和后续操作

  1. 资源清理

    • 在实验完成后,前往控制台停止或删除实例,以避免资源的持续消耗和不必要的费用。
  2. 后续使用

    • 在试用有效期内,可以继续使用DSW实例进行模型训练和推理验证,探索更多AI图像编辑的可能性。

四、晒出与AI 导游的创意对话,最高赢乐歌台式升降桌M2S

想必你通过实操,已经学会如何利用阿里云PAI-DSW和LLaMA Factory开源低代码大模型微调框架,微调 Qwen2-VL 模型,快速搭建文旅领域知识问答机器人。现在邀请你来到阿里云开发者社区参加**“使用PAI+LLaMA Factory 微调 Qwen2-VL 模型,搭建文旅领域知识问答机器人”活动,领取免费试用云资源,跟随教程完成作品生成并上传,得精美计时器,限量400个。邀请好友完成任务即有机会获得乐歌台式升降桌M2S、小米充电宝、小米双肩包等诸多好礼。点击阅读原文**查看活动详情~

img

如何学习AI大模型?

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

<think>好的,我现在需要回答用户关于微调训练多模态大模型使用什么工具的问题,特别是询问是否使用Llama-Factory。首先,我需要明确用户的问题核心:他们想知道哪些工具适用于多模态大模型微调,以及Llama-Factory是否是其中之一。 首先,我应该回顾一下多模态大模型的基本概念。多模态模型通常处理本、图像、音频等多种数据类型,因此微调这样的模型需要工具支持不同的数据模态和相应的处理流程。常见的例子包括CLIP、FLAVA、ALBEF等模型,这些模型在训练时需要同时处理图像和本。 接下来,我需要列举当前流行的微调工具。这里可能需要分几个方面来考虑:通用深度学习框架、专门针对大模型的训练库、以及特定的工具或库如Hugging Face Transformers、DeepSpeed、ColossalAI等。此外,多模态可能需要特定的库,比如OpenAI的CLIP库、Hugging Face的Transformers中对多模态的支持,或者专门的库如MMPretrain(OpenMMLab的一部分)等。 然后,关于Llama-Factory,我需要确认它的具体功能和适用范围。根据我的知识,Llama-Factory主要是针对LLaMA系列模型微调工具,可能更专注于本模态。虽然LLaMA本身是纯模型,但如果有扩展支持多模态的版本或相关项目,可能需要进一步调查。不过,通常情况下,Llama-Factory可能不支持多模态微调,因为它的设计初衷是针对LLaMA模型,而LLaMA是单一模态的。因此,用户如果需要进行多模态微调,可能需要其他工具。 接下来,我需要考虑用户可能的实际需求。如果他们有一个多模态模型需要微调,比如结合图像和本的模型,他们可能需要使用支持多模态的框架。例如,Hugging Face的Transformers库现在支持一些多模态模型,如CLIP、ViT等,并且提供了相应的接口。此外,可能需要结合计算机视觉库如TorchVision或OpenCV来处理图像部分,使用NLP库处理本部分,然后整合到训练流程中。 另外,分布式训练和高效微调技术(如LoRA、QLoRA)对于大模型尤为重要。DeepSpeed和ColossalAI提供了分布式训练的支持,而PEFT(Parameter-Efficient Fine-Tuning)库则实现了多种参数高效微调方法。这些工具在多模态场景下是否适用?可能需要具体情况具体分析,但通常这些技术是模型无关的,可以应用于不同架构,包括多模态模型。 然后,我需要总结推荐的工具链。例如,使用Hugging Face的Transformers和Datasets库来处理多模态数据加载和模型加载,结合Accelerate或者DeepSpeed进行分布式训练,使用PEFT实现参数高效微调。如果涉及到视觉部分,可能需要OpenMMLab的MMPretrain或其他视觉库。同时,自定义的数据预处理和训练循环可能需要PyTorch或TensorFlow来实现。 最后,需要明确Llama-Factory是否适合。根据其档和功能,Llama-Factory主要针对LLaMA、BLOOM等纯模型微调,可能不直接支持多模态任务。因此,用户如果需要处理多模态,可能需要选择其他工具,或者结合多个工具链来实现。 在回答时,需要结构清晰,分点列出常用工具,说明其适用场景,并指出Llama-Factory的定位,帮助用户理解其是否适合他们的需求。同时,提供实际的操作建议,比如如何组合不同工具来完成多模态微调任务,并推荐学习资源或档链接,以便用户进一步探索。</think>微调多模态大模型时,工具的选择需综合考虑多模态数据处理、模型架构适配性及训练效率。以下是常用工具及适用场景的逐步分析: --- ### 一、多模态模型微调的常用工具 #### 1. **Hugging Face Transformers** - **功能**:支持本、图像、音频等多模态模型(如CLIP、FLAVA)。 - **优势**: - 提供预训练模型接口(如`VisionTextDualEncoder`)。 - 集成数据集加载(`Datasets`库)和训练流程(`Trainer`类)。 - **适用场景**:快速实现多模态模型的加载与微调。 #### 2. **OpenMMLab系列(如MMPretrain)** - **功能**:专注于视觉-语言多模态任务。 - **优势**: - 预置多模态模型(如ALBEF、BLIP)。 - 提供完整的数据预处理和评估流程。 - **适用场景**:需处理图像-本对的任务(如图检索、视觉问答)。 #### 3. **DeepSpeed/ColossalAI** - **功能**:分布式训练加速。 - **优势**: - 支持ZeRO优化、混合精度训练。 - 显存优化,适合大模型训练。 - **适用场景**:大规模多模态模型的分布式微调。 #### 4. **PEFT(Parameter-Efficient Fine-Tuning)** - **功能**:参数高效微调(如LoRA、Adapter)。 - **优势**: - 减少显存占用,适配多模态模型结构。 - 可与Transformers库无缝集成。 - **适用场景**:资源受限时对多模态模型轻量化微调。 --- ### 二、Llama-Factory的定位与局限性 - **主要用途**:专注于**单模态模型**(如LLaMA、BLOOM)的微调。 - **局限性**: - 当前版本(截至2023年)**不支持多模态数据输入**(如图像、音频)。 - 未内置视觉/音频处理模块。 - **适用场景**:纯本任务的模型微调(如对话生成、本分类)。 --- ### 三、多模态微调实践建议 1. **工具链组合示例**: - **数据处理**:Hugging Face `Datasets` + TorchVision/OpenCV。 - **模型加载**:Transformers库(CLIP)或 OpenMMLab。 - **高效训练**:DeepSpeed + PEFT(LoRA)。 - **实验管理**:MLflow/W&B记录多模态实验指标。 2. **代码片段示例(CLIP微调)**: ```python from transformers import CLIPModel, CLIPProcessor, Trainer # 加载多模态模型和处理器 model = CLIPModel.from_pretrained("openai/clip-vit-base-patch32") processor = CLIPProcessor.from_pretrained("openai/clip-vit-base-patch32") # 自定义数据集(图像-本对) dataset = load_your_dataset() # 需实现__getitem__返回{"images": PIL.Image, "texts": str} # 使用Trainer微调 trainer = Trainer( model=model, train_dataset=dataset, args=TrainingArguments(output_dir="./results"), ) trainer.train() ``` --- ### 四、学习资源推荐 1. **档**: - [Hugging Face多模态教程](https://huggingface.co/docs/transformers/multimodal) - [OpenMMLab实战指南](https://github.com/open-mmlab/mmpretrain) 2. **论**: - 《Learning Transferable Visual Models From Natural Language Supervision》(CLIP原论)。 - 《BLIP: Bootstrapping Language-Image Pre-training for Unified Vision-Language Understanding and Generation》。 --- ### 总结 若需微调**多模态大模型**,建议选择Hugging Face生态或OpenMMLab等专用工具;而**Llama-Factory更适用于纯模型**。实际项目中,常需组合多个工具实现端到端流程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值