小米又放大招!MiMo-VL 多模态大模型开源,魔搭推理微调全面解读来了!

本文涉及的产品
模型训练 PAI-DLC,100CU*H 3个月
交互式建模 PAI-DSW,每月250计算时 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
简介: 今天,小米开源发布两款 7B 规模视觉-语言模型 MiMo-VL-7B-SFT 和 MiMo-VL-7B-RL。

01.引言

今天,小米开源发布两款 7B 规模视觉-语言模型 MiMo-VL-7B-SFTMiMo-VL-7B-RL

 

MiMo-VL-7B的模型架构为:

 

① 保持细粒度视觉细节的原生分辨率ViT编码器

② 用于高效跨模态对齐的MLP projector

③ 专为复杂推理任务优化的MiMo-7B语言模型

image.gif 编辑

MiMo-VL-7B的开发涉及两个连续的训练过程:

 

1、预训练阶段

 

数据规模:

总计约 2.4 万亿 tokens,涵盖图像描述、文本-图像交错、OCR/定位、视频、GUI 操作与合成推理数据等多模态语料。

 

阶段划分:

  • Projector预热:仅训练Project head,使用图文对齐数据。
  • 视觉-语言对齐:解冻 ViT;引入混合网页、书籍等交错数据。
  • 通用多模态预训练:全面开放所有组件,加入 OCR、定位、视频与 GUI 数据,并少量引入推理与指令数据。
  • 长上下文微调:将最大序列长度扩展至 32K,引入更长文本、视频与高分辨率图像,提高长上下文与深度推理能力。

2、后训练阶段

在此阶段研究团队引入了混合在线强化学习(MORL),这是一种新颖的框架,能够无缝集成涵盖感知准确性、视觉基础精度、逻辑推理能力和人机偏好的多种奖励信号。具体步骤如下:

 

-RLVR 部分:设计视觉推理、文本推理、图像/GUI 定位、视觉计数与视频时序定位等可规则化验证的奖励函数,实现自动打分与反馈。

 

-RLHF 部分:构建双模态与文本奖励模型,经 GPT-4o 排序标注,保证生成结果符合人类偏好并降低有害输出。

 

-混合在线策略:基于 GRPO 的全在线变体,统一通过 Reward-as-a-Service 提供低延迟多任务奖励,消除 KL 惩罚以提升训练稳定性。

image.gif 编辑

研究团队开源了MiMo-VL-7B系列,包括SFT和RL模型的CheckPoint。 研究团队相信这份报告连同这些模型将为开发强大推理能力的VLM提供宝贵的见解,从而惠及更广泛的社区。

 

模型链接:

https://modelscope.cn/collections/MiMo-VL-bb651017e02742

 

代码仓库:

https://github.com/XiaomiMiMo/MiMo-VL

 

技术报告:

https://github.com/XiaomiMiMo/MiMo-VL/blob/main/MiMo-VL-Technical-Report.pdf

 

🛤️ 在这个过程中,研究团队发现在预训练阶段纳入高质量、广泛覆盖的推理数据对于提升模型性能至关重要

  • 研究团队通过识别多样化的查询,使用大型推理模型重新生成带有长CoT的响应,并应用拒绝采样以确保质量,从而策划高质量的推理数据。
  • 研究团队将大量这种合成推理数据直接纳入后期预训练阶段,而不是将其视为补充微调数据。延长训练时间可以持续提高性能而不会饱和。

混合在线策略强化学习进一步增强了模型性能,但同时实现稳定改进仍然具有挑战性

  • 研究团队在多种能力上应用RL,包括推理、感知、接地和人类偏好对齐,涵盖文本、图像和视频等多种模态。虽然这种混合训练方法进一步释放了模型的潜力,但跨数据域的干扰仍然是一个挑战。

 

02.模型评估

通用能力

在通用视觉语言理解中,MiMo-VL-7B 达到了当前开源模型性能的SOTA水平

image.gif 编辑

推理任务

在多模态推理中,SFT和RL模型在这几个基准测试中都显著优于所有比较的开源基线。

image.gif 编辑

标有 * 的结果是使用研究团队的评估框架获得的。 带有 †{\dagger}† 的任务由 GPT-4o 评估。

 

GUI 任务

MiMo-VL-7B-RL 具备卓越的 GUI 理解和定位能力。作为一个通用的视觉语言模型,MiMo-VL 在性能上与专门针对 GUI 的模型相当,甚至更优。

image.gif 编辑

 

Elo 评分

通过研究团队内部的评估数据集和 GPT-4o 的评判,MiMo-VL-7B-RL 在所有被评估的开源视觉语言模型中获得了最高的 Elo 评分,在从 7B 到 72B 参数范围内的模型中排名第一。

image.gif 编辑

 

03.模型推理

MiMo-VL-7B 系列在部署和推理时完全兼容 Qwen2_5_VLForConditionalGeneration 架构。

使用transformers推理

from modelscope import Qwen2_5_VLForConditionalGeneration, AutoTokenizer, AutoProcessor
from qwen_vl_utils import process_vision_info
# default: Load the model on the available device(s)
model = Qwen2_5_VLForConditionalGeneration.from_pretrained(
    "XiaomiMiMo/MiMo-VL-7B-SFT", torch_dtype="auto", device_map="auto"
)
# default processer
processor = AutoProcessor.from_pretrained("XiaomiMiMo/MiMo-VL-7B-SFT")
messages = [
    {
        "role": "user",
        "content": [
            {
                "type": "image",
                "image": "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen-VL/assets/demo.jpeg",
            },
            {"type": "text", "text": "Describe this image."},
        ],
    }
]
# Preparation for inference
text = processor.apply_chat_template(
    messages, tokenize=False, add_generation_prompt=True
)
image_inputs, video_inputs = process_vision_info(messages)
inputs = processor(
    text=[text],
    images=image_inputs,
    videos=video_inputs,
    padding=True,
    return_tensors="pt",
)
inputs = inputs.to("cuda")
# Inference: Generation of the output
generated_ids = model.generate(**inputs, max_new_tokens=128)
generated_ids_trimmed = [
    out_ids[len(in_ids) :] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)
]
output_text = processor.batch_decode(
    generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False
)
print(output_text)

image.gif

image.gif 编辑

04.模型微调

我们介绍使用ms-swift对XiaomiMiMo/MiMo-VL-7B-RL进行微调。ms-swift是魔搭社区官方提供的大模型与多模态大模型训练部署框架。

 

ms-swift开源地址:

https://github.com/modelscope/ms-swift

 

我们将展示可运行的微调demo,并给出自定义数据集的格式。

在开始微调之前,请确保您的环境已准备妥当。

 

git clone https://github.com/modelscope/ms-swift.git
cd ms-swift
pip install -e .
pip install "transformers<4.52" liger_kernel -U

image.gif

图像OCR微调脚本如下。更多任务可以参考这里:https://github.com/modelscope/ms-swift/tree/main/examples/train/multimodal

MAX_PIXELS=1003520 \
CUDA_VISIBLE_DEVICES=0 \
swift sft \
    --model XiaomiMiMo/MiMo-VL-7B-RL \
    --dataset AI-ModelScope/LaTeX_OCR:human_handwrite#20000 \
    --train_type lora \
    --torch_dtype bfloat16 \
    --num_train_epochs 2 \
    --per_device_train_batch_size 16 \
    --per_device_eval_batch_size 16 \
    --learning_rate 1e-4 \
    --lora_rank 8 \
    --lora_alpha 32 \
    --target_modules all-linear \
    --freeze_vit true \
    --gradient_accumulation_steps 1 \
    --eval_steps 50 \
    --save_steps 50 \
    --save_total_limit 2 \
    --logging_steps 5 \
    --max_length 2048 \
    --output_dir output \
    --warmup_ratio 0.05 \
    --padding_free true \
    --attn_impl flash_attn \
    --use_liger_kernel true \
    --dataloader_num_workers 4

image.gif

训练显存资源:

image.gif 编辑

自定义数据集格式如下(system字段可选),只需要指定`--dataset <dataset_path>`即可:

{"messages": [{"role": "user", "content": "浙江的省会在哪?"}, {"role": "assistant", "content": "浙江的省会在杭州。"}]}
{"messages": [{"role": "user", "content": "<image><image>两张图片有什么区别"}, {"role": "assistant", "content": "前一张是小猫,后一张是小狗"}], "images": ["/xxx/x.jpg", "/xxx/x.png"]}

image.gif

训练完成后,使用以下命令对训练时的验证集进行推理:

CUDA_VISIBLE_DEVICES=0 \
swift infer \
    --adapters output/vx-xxx/checkpoint-xxx \
    --stream false \
    --max_batch_size 1 \
    --load_data_args true \
    --max_new_tokens 2048

image.gif

推送模型到ModelScope:

CUDA_VISIBLE_DEVICES=0 \
swift export \
    --adapters output/vx-xxx/checkpoint-xxx \
    --push_to_hub true \
    --hub_model_id '<your-model-id>' \
    --hub_token '<your-sdk-token>'

image.gif

点击阅读原文,即可跳转模型~

https://modelscope.cn/models/XiaomiMiMo/MiMo-VL-7B-SFT

目录
相关文章
|
10天前
|
分布式计算 测试技术 Spark
科大讯飞开源星火化学大模型、文生音效模型
近期,科大讯飞在魔搭社区(ModelScope)和Gitcode上开源两款模型:讯飞星火化学大模型Spark Chemistry-X1-13B、讯飞文生音频模型AudioFly,助力前沿化学技术研究,以及声音生成技术和应用的探索。
87 2
|
10天前
|
人工智能 Java API
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
本文介绍AI大模型的核心概念、分类及开发者学习路径,重点讲解如何选择与接入大模型。项目基于Spring Boot,使用阿里云灵积模型(Qwen-Plus),对比SDK、HTTP、Spring AI和LangChain4j四种接入方式,助力开发者高效构建AI应用。
419 122
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
|
29天前
|
机器学习/深度学习 数据采集 人工智能
通义实验室Mobile-Agent-v3开源,全平台SOTA的GUI智能体,支持手机电脑等多平台交互
近日,通义实验室MobileAgent团队正式开源全新图形界面交互基础模型 GUI-Owl,并同步推出支持多智能体协同的自动化框架 Mobile-Agent-v3。该模型基于Qwen2.5-VL打造,在手机端与电脑端共8个GUI任务榜单中全面刷新开源模型性能纪录,达成全平台SOTA。
278 2
|
22天前
|
机器学习/深度学习 人工智能 前端开发
通义DeepResearch全面开源!同步分享可落地的高阶Agent构建方法论
通义研究团队开源发布通义 DeepResearch —— 首个在性能上可与 OpenAI DeepResearch 相媲美、并在多项权威基准测试中取得领先表现的全开源 Web Agent。
1527 87
|
23天前
|
人工智能 Java 开发者
阿里出手!Java 开发者狂喜!开源 AI Agent 框架 JManus 来了,初次见面就心动~
JManus是阿里开源的Java版OpenManus,基于Spring AI Alibaba框架,助力Java开发者便捷应用AI技术。支持多Agent框架、网页配置、MCP协议及PLAN-ACT模式,可集成多模型,适配阿里云百炼平台与本地ollama。提供Docker与源码部署方式,具备无限上下文处理能力,适用于复杂AI场景。当前仍在完善模型配置等功能,欢迎参与开源共建。
642 58
阿里出手!Java 开发者狂喜!开源 AI Agent 框架 JManus 来了,初次见面就心动~
|
13天前
|
机器学习/深度学习 人工智能 自然语言处理
AI Compass前沿速览:Qwen3-Max、Mixboard、Qwen3-VL、Audio2Face、Vidu Q2 AI视频生成模型、Qwen3-LiveTranslate-全模态同传大模型
AI Compass前沿速览:Qwen3-Max、Mixboard、Qwen3-VL、Audio2Face、Vidu Q2 AI视频生成模型、Qwen3-LiveTranslate-全模态同传大模型
177 13
AI Compass前沿速览:Qwen3-Max、Mixboard、Qwen3-VL、Audio2Face、Vidu Q2 AI视频生成模型、Qwen3-LiveTranslate-全模态同传大模型
|
18天前
|
机器学习/深度学习 算法 数据可视化
从零开始训练推理模型:GRPO+Unsloth改造Qwen实战指南
推理型大语言模型兴起,通过先思考再作答提升性能。本文介绍GRPO等强化学习算法,详解其原理并动手用Qwen2.5-3B训练推理模型,展示训练前后效果对比,揭示思维链生成的实现路径。
155 1
从零开始训练推理模型:GRPO+Unsloth改造Qwen实战指南
|
1月前
|
人工智能 自然语言处理 IDE
模型微调不再被代码难住!PAI和Qwen3-Coder加速AI开发新体验
通义千问 AI 编程大模型 Qwen3-Coder 正式开源,阿里云人工智能平台 PAI 支持云上一键部署 Qwen3-Coder 模型,并可在交互式建模环境中使用 Qwen3-Coder 模型。
365 109
|
2月前
|
存储 人工智能 自然语言处理
告别文字乱码!全新文生图模型Qwen-Image来咯
通义千问团队开源了Qwen-Image,一个20B参数的MMDiT模型,具备卓越的文本渲染和图像编辑能力。支持复杂中英文文本生成与自动布局,适用于多场景图像生成与编辑任务,已在魔搭社区与Hugging Face开源。
409 2

热门文章

最新文章