许可证:apache-2.0
数据集:
- HuggingFaceM4/OBELICS
- laion/laion-coco
- wikipedia
- facebook/pmd
- pixparse/idl-wds
- pixparse/pdfa-eng-wds
- wendlerc/RenderedText
- HuggingFaceM4/the_cauldron
- teknium/OpenHermes-2.5
- GAIR/lima
- databricks/databricks-dolly-15k
- meta-math/MetaMathQA
- TIGER-Lab/MathInstruct
- microsoft/orca-math-word-problems-200k
- camel-ai/math
- AtlasUnified/atlas-math-sets
- tiedong/goat
- Lin-Chen/ShareGPT4V
- jxu124/llava_conversation_58k
语言:
标签:
- multimodal
- vision
- image-text-to-text
/!!!!\ 警告:Idefics2 在 Transformers
版本 4.41.0 至 4.43.3(含)之间无法正常工作。请参阅问题 https://github.com/huggingface/transformers/issues/32271 和修复 https://github.com/huggingface/transformers/pull/32275。
截至 2024 年 4 月 18 日,Idefics2 已包含在 4.40.0
版本的 Transformers PyPI 发布中。请升级您的 Transformers 版本(pip install transformers --upgrade
)。
Idefics2
Idefics2 是一个开放的多模态模型,能够接受任意序列的图像和文本输入并生成文本输出。该模型可以回答关于图像的问题、描述视觉内容、基于多张图像创作故事,或仅作为纯语言模型使用(无需视觉输入)。它在 Idefics1 的基础上进行了显著改进,特别是在 OCR、文档理解和视觉推理方面的能力。
我们基于 Apache 2.0 许可证发布了 2 个检查点:
模型概述
用途
idefics2-8b-base
和 idefics2-8b
可用于执行多模态(图像+文本)任务的推理,输入由文本查询和一个(或多个)图像组成。文本和图像可以任意交错排列,包括图像描述、视觉问答等。该模型不支持图像生成。
为了获得最佳效果,我们建议在特定用例和数据上对 idefics2-8b
进行微调。实际上,指令微调模型(idefics2-8b
)在遵循用户指令方面表现更优,因此建议直接使用或作为微调的起点。
idefics2-8b
通常生成非常简短的答案。如需生成长文本,请使用 idefics2-8b-chatty
,该模型在长对话数据上进行了进一步微调。
我们提供以下微调代码作为起点,可根据具体场景调整:
技术总结
Idefics2 在其规模(80 亿参数)下表现出色,与其他开源多模态模型相比具有竞争力,甚至可与闭源系统媲美。因此,它是各种用例特定微调的强大基础。
展开结果表格以查看更多细节。
模型 |
开放权重 |
规模 |
每张图像的 token 数 |
MMMU (验证/测试) |
MathVista (testmini) |
TextVQA (验证) |
MMBench (测试) |
VQAv2 (test-dev) |
DocVQA (测试) |
DeepSeek-VL |
✅ |
7B |
576 |
36.6/- |
36.1 |
64.4 |
73.2 |
- |
49.6 |
LLaVa-NeXT-Mistral-7B |
✅ |
7B |
2880 |
35.3/- |
37.7 |
65.7 |
68.7 |
82.2 |
- |
LLaVa-NeXT-13B |
✅ |
13B |
2880 |
36.2/- |
35.3 |
67.1 |
70.0 |
82.8 |
- |
LLaVa-NeXT-34B |
✅ |
34B |
2880 |
51.1/44.7 |
46.5 |
69.5 |
79.3 |
83.7 |
- |
MM1-Chat-7B |
❌ |
7B |
720 |
37.0/35.6 |
35.9 |
72.8 |
72.3 |
- |
- |
MM1-Chat-30B |
❌ |
30B |
720 |
44.7/40.3 |
39.4 |
73.5 |
75.1 |
83.7 |
|
Gemini 1.0 Pro |
❌ |
🤷♂️ |
🤷♂️ |
47.9/- |
45.2 |
74.6 |
- |
71.2 |
88.1 |
Gemini 1.5 Pro |
❌ |
🤷♂️ |
🤷♂️ |
58.5/- |
52.1 |
73.5 |
- |
73.2 |
86.5 |
Claude 3 Haiku |
❌ |
🤷♂️ |
🤷♂️ |
50.2/- |
46.4 |
- |
- |
- |
88.8 |
|
|
|
|
|
|
|
|
|
|
Idefics1 instruct (32-shots) |
✅ |
80B |
- |
- |
- |
39.3 |
- |
68.8 |
- |
|
|
|
|
|
|
|
|
|
|
Idefics2 (无图像分割) |
✅ |
8B |
64 |
43.5/37.9 |
51.6 |
70.4 |
76.8 |
80.8 |
67.3 |
Idefics2 (有图像分割) |
✅ |
8B |
320 |
43.0/37.7 |
51.4 |
73.0 |
76.7 |
81.2 |
74.0 |
Idefics2 相比 Idefics1 引入了多项改进:
- 通过遵循 NaViT 策略,以原生分辨率(最高 980 x 980)和原生宽高比处理图像,避免了传统计算机视觉中将图像调整为固定大小正方形的需求。此外,我们采用 SPHINX 的策略,(可选)允许子图像分割并处理超高分辨率图像。
- 通过整合需要模型转录图像或文档中文本的数据,显著提升了OCR 能力。我们还通过适当的训练数据提高了回答图表、图形和文档问题的能力。
- 摒弃了 Idefics1 的架构(门控交叉注意力),简化了视觉特征与语言主干的集成。图像通过视觉编码器处理后,经过学习的 Perceiver 池化和 MLP 模态投影。然后将池化序列与文本嵌入拼接,形成图像和文本的交错序列。
- 所有这些改进加上更好的预训练主干,使得模型性能相比 Idefics1 实现了显著提升,而模型规模缩小了 10 倍。
Idefics2 分两个阶段训练以实现最高效率。第一阶段,图像以 SigLIP 的原生分辨率(384 x 384 正方形)输入模型。第二阶段,图像以其原生分辨率(最大 980,最小 378)和原生宽高比输入模型。由于 OCR 数据需要高分辨率,我们在第二阶段向 OBELICS、LAION Coco 和 PMD 中添加了 PDFA、Rendered-Text 和 IDL。
随后,我们在 The Cauldron 上进行指令微调,这是一个包含 50 个手动筛选的视觉语言数据集和 9 个纯文本指令微调数据集的集合: