\u200E
PaddleMIX 2.0震撼发布:图文音视频场景全覆盖,多模态高效助力产业创新
发布日期:2024-08-29T04:33:44.000+0000 浏览量:654次
在AI技术日新月异的今天,多模态大模型因其能够整合并处理来自不同模态的数据,正逐渐成为推动AI应用创新的重要力量。多模态大模型正以前所未有的方式改变着我们的生活,自动驾驶领域,视觉模态可以捕捉到车辆周围的物体和场景,而语音模态可以捕捉到驾驶员的指令和反馈,通过不同层级的融合获得更全面、更准确的环境和情况理解;智慧医疗领域,结合不同的成像技术,例如MRI、CT、超声波等,以获取更全面的患者信息,提高疾病诊断的准确性和早期发现能力;搜索引擎也能够利用图像、文本、音频等多种模态的数据,提供更丰富准确的搜索结果。


当前多模态大模型技术处于高速发展的阶段,前沿模型架构层出不穷,然而多模态大模型的训练和推理成本相对较高,并且对开发者而言上手难度较大,因此PaddleMIX团队积极吸纳业界前沿的多模态大模型,并结合框架底层高性能硬核技术,推出飞桨多模态大模型开发套件PaddleMIX 2.0版本。全面兼顾高性能算法、便捷开发、高效训练和完备部署,极大降低业界多模态领域开发者的开发门槛。
首先来看PaddleMIX 2.0的三大亮点:
  • 亮点一:丰富的多模态模型库
覆盖图像、文本、视频、音频模态模型,多模态理解方向新增LLaVA系列等模型,多模态生成方向新增视频生成能力,支持SoRA相关技术,新增高速推理文图生成模型LCM。
  • 亮点二:端到端全流程开发体验
新增多模态数据处理工具箱DataCopilot。新增Auto模块,统一多模态大模型SFT训练流程,兼容全参数、LoRA训练。发布PPDiffusers 0.24.1版本,新增Paddle版peft,accelerate后端;提供基于PPDiffusers开发的ComfyUI插件。
  • 亮点三:高性能大规模训推能力
DiT模型支持3B规模预训练,性能领先同类产品 8%。精调阶段新增MixToken训练策略,吞吐量提升68%。支持LLaVA等模型推理部署,推理性能优于同类技术34%。
欢迎开发者前往开源项目主页直接体验:
https://github.com/PaddlePaddle/PaddleMIX
丰富的多模态模型库
多模态理解
多模态理解模型的架构大多以大语言模型为核心,通过将多模态输入经由特定的多模态encoder转化为与文本对齐的token,随后被输入到大语言模型中,从而得出最终的结果。其中PaddleMIX在encoder中支持了CLIP为核心的视觉编码器EVA-CLIP,CoCa,以及多模态编码器ImageBind。整体结构上PaddleMIX汇聚了LLaVA系列,CogVLM,InternLM-XComposer2等10余种前沿模型。

多模态生成

多模态生成领域以扩散模型为技术核心,在AIGC领域大放异彩,并吸引了极高的社区关注度。PaddleMIX 2.0版本中更新PPDiffusers 0.24.1版本,集成了SD、SDXL、LCM等主流文生图模型,支持百余种pipeline,覆盖文生图、可控生成、图像编辑、个性化定制、视频和语音处理等典型应用场景。同时,PPDiffusers与HuggingFace和WebUI生态紧密兼容,能直接导入WebUI 的prompt 和 Civitai社区万余权重使用。此外,随着SoRA模型的推出,文本生成视频领域的探索也日益深入,PPDiffusers中同样支持了DiT,NaDiT等Sora相关技术,以及SVD,AnimateAnyOne,OpenSoRA等多款视频生成模型,为用户提供了更为多样的多模态生成模型选择。
端到端全流程开发体验
多模态数据处理工具箱DataCopilot,加速模型迭代升级
Datacopilot是PaddleMIX 2.0版本新推出的多模态数据处理工具箱,理念是把数据作为多模态算法的一部分参与迭代的全流程,让开发者根据特定任务以低代码量实现数据的基本操作。工具核心概念包括Schema和MMDataset。Schema用于定义多模态数据组织结构和字段名字。MMDataset作为数据操作的核心类,为存储,查看,转换,生成等操作的基本对象。目前DataCopilot已经支持以下功能:
  • 切片,加法,采样等基本运算。
  • json,jsonl,h5等多种数据格式读取和转换。
  • 内置map,filter函数,支持多进程和多线程并发功能,用于高效处理数据。
  • 支持链式调用,方便通过组合多种原子操作以实现复杂的功能。
  • 内置常用的数据增强、评价模板,后续会根据实际场景持续更新。
配置化驱动编程界面,高效训练各类多模态大模型
PaddleMIX对于不同的模型和模块,提供了统一的Auto模块体系,包括AutoConfig、AutoModel、AutoTokenizer等,便于用户引用和实例化。用户只需简单调用Auto接口,并指定所需的模型或模块字段,即可自动获取模型定义、组网结构和权重等关键对象,为后续的训练或推理任务做好准备。在此基础上,PaddleMIX还提供了统一的SFT微调工具,该工具支持混合数据集处理、全参数或LoRA微调策略,以及飞桨分布式训练策略。用户只需配置好微调的模型文件,即可利用SFT工具快速进行模型微调,极大地提升了开发体验和效率。
一键体验的多模态大模型应用工具,兼容社区生态
AppFlow作为PaddleMIX的跨模态应用任务流水线,具备强大的功能与易用性。通过接入LLaVA、Stable Diffusion等前沿算法,AppFlow已全面覆盖图像、文本、音频、视频等多种模态,并通过流水线式的灵活组合,构建了10余种多模态应用,涵盖图文生成、文本视频生成、文本音频生成、图像理解等多个方面,为用户提供丰富的demo示例。AppFlow的特色在于其一键预测功能,用户无需繁琐训练与大量编码,仅需简单命令即可完成模型推理,极大地降低了使用门槛。同时,AppFlow充分利用飞桨框架动静统一优势,用户只需设置简单参数,即可自动完成模型的动转静导出及高性能推理,提高工作效率并优化模型性能,实现一站式应用部署。
ComfyUI是一个在开源社区广受欢迎的AIGC图形界面工具。它通过节点拆分和工作流组合的方式,让不同模型协同工作,完成复杂的高级生产任务。本次PaddleMIX的PPDiffusers更新到0.24.1版本,也为ComfyUI开发了多个基于飞桨的节点扩展程序,支持文本到图像生成、图像分割、图像生成文本描述等多模态能力,包括SD15SDXL相关的10多个节点和工作流,用户可以通过浏览器加载其中的json文件来使用对应的工作流。开发者可基于图像界面开启PaddleMIX的AIGC之旅。感兴趣的小伙伴也可以在飞桨星河社区进行体验:
https://aistudio.baidu.com/community/app/106043
高性能大规模训推能力
大规模预训练
借助飞桨的大规模分布式训练技术,PaddleMIX展现出了卓越的多模态大模型预训练能力,能够支持千亿级别的模型训练。BLIP-2和Stable Diffusion模型在A100训练上,PaddleMIX的性能分别超越同类产品 38%和25%。随着diffusion transformer架构在文生图领域的日益盛行,PaddleMIX针对DiT模型的大规模训练进行优化,包括张量并行和分组切片并行等分布式策略,从而在Large DiT 3B规模的预训练上实现了比同类产品高出8%的性能。

BLIP-2训练性能对比

Stable Diffusion训练性能对比

Large DIT训练性能对比

高效精调训练
PaddleMIX提供的统一SFT精调工具中创新性提出MixToken机制,在确保模型精度的同时,显著增大了训练吞吐量。在图文联合训练中,视觉与文本特征被拼接成统一的token,然而,为了保持同一batch内各样本长度的一致性,往往需要对样本进行padding操作。MixToken机制将padding token替换为下一条样本的有效token。这样一来,即便在序列长度固定的情况下,也能实现数据吞吐量的显著提升,进而大幅提高训练效率。以PaddleMIX的LLaVA SFT为例,通过应用MixToken机制,其训练吞吐量实现了68%的增长。
高性能推理
PaddleMIX基于飞桨框架3.0 Beta版本在多个多模态大模型上实现推理性能全面领先。飞桨框架3.0 Beta版本中实现了大量通用IR/Pass优化,并针对扩散类模型进行了模型的算子融合和计算优化,采用卷积布局优化和GroupNorm融合策略,实现SDXL A100上的推理速度超越同类技术 80.4%。针对以大语言模型为基础的多模态理解类模型,提供了细粒度模型优化的Pipeline,其核心思想是利用一系列高性能的GPU融合算子来代替原始模型的组合算子,最终使得LLaVA在A100性能优于同类技术34%。