CodeFuse-VLM 开源,支持多模态多任务预训练 / 微调
CodeFuse-MFT-VLM 项目地址:
https://github.com/codefuse-ai/CodeFuse-MFT-VLM
CodeFuse-VLM-14B 模型地址:
https://modelscope.cn/models/ss41979310/CodeFuse-VLM-14B/files
CodeFuse-VLM框架简介
随着huggingface开源社区的不断更新,会有更多的vision encoder 和 LLM 底座发布,这些vision encoder 和 LLM底座都有各自的强项,例如 code-llama 适合生成代码类任务,但是不适合生成中文类的任务,因此用户常常需要根据vision encoder和LLM的特长来搭建自己的多模态大语言模型。针对多模态大语言模型种类繁多的落地场景,我们搭建了CodeFuse-VLM 框架,支持多种视觉模型和语言大模型,使得MFT-VLM可以适应不同种类的任务。
CodeFuse-VLM 支持多种视觉达模型:CLIP,CLIP-336px,Chinese Clip,Chinese Clip-336px,Qwen Clip;多种语言达模型:Vicuna-7B,Vicunam-13B,LLAMA-2-7B,Qwen-7B,Qwen-14B。用户可以根据自己的需求,通过配置文件的方式搭配VL-MFTCoder中不同的Vision Encoder 和 LLM,使用同一套框架去适配的不同的模型,大大提高了开发效率。
我们在2024年1月开源了多模态多任务微调框架——CodeFuse-VLM。在CodeFuse多任务微调的基础上,CodeFuse-VLM可以实现在多个模态,多个任务上同时并行地进行微调。通过结合多种损失函数,我们有效地解决了多任务学习中常见的任务间数据量不平衡、难易不一和收敛速度不一致等挑战。此外,CodeFuse-VLM框架具备高效训练特征,支持高效的PEFT微调,能有效提升微调训练速度并降低对资源的需求。
CodeFuse-VLM-14B模型
我们基于Qwen-VL的视觉编码器和Qwen-14B 大语言模型,在CodeFuse-VLM框架下训练了CodeFuse-VLM-14B 模型,在多个通用和代码任务上的性能超过 LLAVA-1.5 和 Qwen-VL。
预训练数据
参考了Qwen-VL的Multi-Task Pretraining数据集,我们准备使用多种数据对齐Qwen-VL-14B的模态。在预训练当中我们使用多任务训练的方式,每一个数据集都是一个训练任务任务。
dataset |
type |
number of samples |
synthdog-en |
OCR |
50w |
synthdog-zh |
OCR |
50w |
cc3m(downsampled) |
Image Caption |
55w |
SBU |
Image Caption |
85w |
Visual Genome VQA |
VQA |
50w |
Visual Genome Region descriptions |
Ref Grouding |
50w |
Visual Genome objects |
Caption With Grouding |
50w |
OCR_VQA |
OCR and VQA |
50w |
我们使用预训练数据集训练模态对齐的cross attention 模块,可以执行以下代码来启动模型预训练
sh scripts/pretrain_multinode.sh
指令微调数据
我们使用了 LLAVA-1.5 的指令微调数据,总共65w样本,LLAVA的指令微调数据集包含复杂图片的推理分析,对LLM理解视觉特征很有帮助。
指令微调数据构成如下,在视觉指令微调当中我们使用多任务训练的方式,每一个数据集都是一个训练任务任务。
dataset |
type |
number of samples |
OCR_VQA |
OCR and VQA |
7w |
GQA |
Image Caption |
8w |
Visual Genome |
Ref Grouding and Caption With Grouding |
10w |
COCO |
Detailed Description and Complex Reasoning |
37w |
Text-VQA |
Detailed Description and Complex Reasoning |
3w |
我们使用指令微调数据训练CodeFuse-VLM-14B中的Qwen-14B大语言模型,可以执行以下代码来启动模型的指令微调
sh scripts/finetune_multinode.sh
模型性能
我们训练的CodeFuse-VLM-14B 模型在多个benchmark上的表现超过Qwen-VL和LLAVA-1.5, 具体得分参考下面的图表。
Benchmark |
LLAVA-1.5 |
Qwen-VL |
CodeFuse-VLM-14B |
MM_Bench |
67.7 |
60.6 |
75.7 |
MM_Bench_CN |
63.6 |
56.7 |
69.8 |
VqaV2 |
80.0 |
78.2 |
79.3 |
GQA |
63.3 |
57.5 |
59.4 |
TextVqa |
61.3 |
63.8 |
63.9 |
VizWiz |
53.6 |
35.25 |
45.3 |
Sketch2Code |
- |
90.7 |
94.4 |
我们的CodeFuse-VLM-14B 在MMBenchmark的中英文榜单分别取得第13/21名的排名,高于Qwen-VL第29/36名的排名
https://mmbench.opencompass.org.cn/leaderboard
产品图片
我们通过CodeFuse-VLM 在蚂蚁内部训练了网页图片到前端代码的多模态大模型,并把大模型集成到内部的Visual Studio Code插件中。如下面两站图所示,左边的图片是网页原图,右边的图片是大模型生成的前端代码渲染出的图片,多模态大模型生成的前端代码渲染出的图片对网页原图有很高的还原性,很大地提高了前端工程师开发的效率。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
云计算 - 弹性计算技术全解与实践
本文全面介绍了云计算中的弹性计算服务(ECS),从基础概念、核心组件到选型考虑、实践案例和高级优化实践。文章不仅提供了丰富的技术细节和实际例证,还提出了独特的洞见,如数据作为核心、自动化的重要性、多维度的性能优化,以及高可用与灾备的不可或缺性。 关注【TechLeadCloud】,分享互联网架构、云服务技术的全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人。 一、引言 在过去的十年里,云计算从一个前沿概念发展为企业和开发者的必备工具。传统的计算模型通常局限于单一的、物理的位置和有限的资源,而云计算则通过分布式的资源和服务,为计算能力带来了前所未有的"弹性"。 弹性:不仅仅是扩展性 很多人误以为弹性仅仅是可扩展性的同义词,但实际上它更加复杂。考虑一个电商网站在“黑色星期五”这一天的流量。流量不仅在这一天大幅增加,而且在不同的时段也有波动。弹性计算不仅能垂直或水平地扩展资源以应对高流量,还能在需求减少时相应地缩小,从而节省成本。AWS的自动缩放(Auto ...
-
下一篇
深圳开放智算中心点亮运营
昨日,深圳开放智算中心点亮运营,同期深圳市智慧城市算力统筹调度平台揭牌,这意味着深圳正加快打造10万卡级别的超强算力集群。多家人工智能头部企业、电信运营商、行业协会在现场与运营方深智城集团签约开展智能算力合作。 该“中心+平台”的算力供给调度规模将超30000P,深圳开放智算中心基于国际主流智能算力芯片,可实现高复杂度、高计算需求的千亿级大模型训练,协助打造“河套-西丽湖-光明科学城”AI科创算力走廊,助力深圳加快构筑大湾区算力供给高地。 市智慧城市算力统筹调度平台将积极承担公共算力调度、创新服务等功能,探索通过标准化接口汇聚全市多元异构算力、以算网大脑实现算力的弹性分配,全力提供具有公信力、安全性和普惠性的算力供给服务,努力构建超高可靠、极低时延、极速带宽、极高性能、绿色低碳的算力调度体系,助力深圳人工智能产业高质量发展。 据了解,“万卡”是指人工智能大模型产品的开发需要多达一万块GPU芯片的智算算力支持,也是指超大型智算中心的规模“门槛”是一万块GPU芯片。此次活动由市工信局、市政数局、市科创局、市国资委指导,福田区政府、深智城集团主办。 来源:深圳特区报
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS8编译安装MySQL8.0.19
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2全家桶,快速入门学习开发网站教程
- Dcoker安装(在线仓库),最新的服务器搭配容器使用