大きなビジョン言語モデルを評価するためのツールキット。
••••
英語| 简体中文| 日本語
? OCリアルボード•QuickStart•データセットとモデル•開発•目標•引用
? HFリーダーボード•?評価記録•? HFビデオリーダーボード•?不一致•レポート
Vlmevalkit (Pythonパッケージ名はVlmevalです)は、大規模なビジョン言語モデル(LVLMS)のオープンソース評価ツールキットです。これにより、複数のリポジトリの下でのデータ準備の大量の作業なしで、さまざまなベンチマーク上のLVLMSの1コマンド評価が可能になります。 Vlmevalkitでは、すべてのLVLMの生成ベースの評価を採用し、正確なマッチングとLLMベースの回答抽出の両方で得られた評価結果を提供します。
VLMEVALKIT_USE_MODELSCOPEを作成します。この環境変数を設定することにより、 ModelScopeからサポートされているビデオベンチマークをダウンロードできますpython run.py --help[QuickStart |を参照してください 快速开始]クイックスタートガイド用。
公式のマルチモーダルリーダーボードのパフォーマンス番号は、こちらからダウンロードできます!
OpenVLMリーダーボード:すべての詳細な結果をダウンロードします。
サポートされている画像理解データセット
MCQ :マルチ選択の質問。 Y/N :yes-or-noの質問。 MTT :マルチターン会話のベンチマーク。 MTI :入力としてマルチイメージを使用したベンチマーク。| データセット | データセット名(run.py用) | タスク | データセット | データセット名(run.py用) | タスク |
|---|---|---|---|---|---|
| mmbenchシリーズ: mmbench、mmbench-cn、ccbench | mmbench_dev_ [en/cn] mmbench_test_ [en/cn] mmbench_dev_ [en/cn] _v11 mmbench_test_ [en/cn] _v11 ccbench | MCQ | mmstar | mmstar | MCQ |
| mme | mme | y/n | シードベンチシリーズ | Seedbench_img SeedBench2 Seedbench2_plus | MCQ |
| MM-VET | mmvet | VQA | うーん | mmmu_ [dev_val/test] | MCQ |
| Mathvista | Mathvista_mini | VQA | scienceqa_img | scienceqa_ [val/test] | MCQ |
| ココキャプション | coco_val | キャプション | HallusionBench | HallusionBench | y/n |
| ocrvqa * | OCRVQA_ [TestCore/Test] | VQA | textVqa * | textVqa_val | VQA |
| chartqa * | chartqa_test | VQA | ai2d | ai2d_ [test/test_no_mask] | MCQ |
| llavabench | llavabench | VQA | docvqa + | docvqa_ [val/test] | VQA |
| infovqa + | infovqa_ [val/test] | VQA | ocrbench | ocrbench | VQA |
| RealWorldQa | RealWorldQa | MCQ | 法王 | 法王 | y/n |
| core -mm- | core_mm(mti) | VQA | MMTベンチ | mmt-bench_ [val/all] mmt-bench_ [val/all] _mi | MCQ(MTI) |
| mllmguard- | mllmguard_ds | VQA | aesbench + | aesbench_ [val/test] | MCQ |
| vcr-wiki + | vcr_ [en/zh] _ [簡単/hard] _ [all/500/100] | VQA | mmlongbench-doc + | mmlongbench_doc | VQA(MTI) |
| まばたき | まばたき | MCQ(MTI) | MathVision + | MathVision MathVision_mini | VQA |
| MT-VQA | mtvqa_test | VQA | mmdu + | mmdu | VQA(MTT、MTI) |
| Q-bench1 | q-bench1_ [val/test] | MCQ | Aベンチ | a-bench_ [val/test] | MCQ |
| 男+ | お前 | VQA(MTI) | Slidevqa + | slidevqa Slidevqa_mini | VQA(MTI) |
| taskmeanything imageqaランダム+ | taskmeanything_v1_imageqa_random | MCQ | MMMBおよび多言語MMBench + | mmmb_ [ar/cn/en/pt/ru/tr] mmbench_dev_ [ar/cn/en/pt/ru/tr] mmmb mtl_mmbench_dev PS:mmmb&mtl_mmbench_dev 6つのラングのオールインワンの名前です | MCQ |
| a-okvqa + | a-okvqa | MCQ | Muirbench + | Muirbench | MCQ |
| gmai-mmbench + | gmai-mmbench_val | MCQ | tablevqabench + | tablevqabench | VQA |
| MME-RealWorld + | mme-realworld [-cn] MME-RealWorld-Lite | MCQ | hrbench + | hrbench [4k/8k] | MCQ |
| 数多く+ | Mathverse_mini Mathverse_mini_vision_only Mathverse_mini_vision_dominant Mathverse_mini_vision_entive Mathverse_mini_text_lite Mathverse_mini_text_dominant | VQA | アンバー+ | アンバー | y/n |
| CRPE + | crpe_ [存在/関係] | VQA | mmsearch | - | - |
| Rベンチ+ | r-bench- [dis/ref] | MCQ | worldmedqa-v + | worldmedqa-v | MCQ |
| GQA + | gqa_testdev_balanced | VQA | Mia-bench + | ミアベンチ | VQA |
| WildVision + | ワイルドビジョン | VQA | Olympiadbench + | Olympiadbench | VQA |
| mm-math + | mm-math | VQA | ダイナモ | ダイナモ | VQA |
| mmgenbench- | mmgenbenchテスト mmgenbench-domain | - | qspatial + | QSPATIAL_ [プラス/スキャンネット] | VQA |
| vizwiz + | vizwiz | VQA |
*一部のVLMはゼロショット設定で合理的な結果をもたらさないため、評価結果のサブセットのみを提供します
+評価結果はまだ利用できません
- Vlmevalkit(グラウンドトゥルースの回答を含めないいくつかのベンチマークのTESTスプリットを含む)では、推論のみがサポートされています。
vlmevalkitは、キーを設定すると、審査員LLMを使用して出力から回答を抽出します。それ以外の場合は、正確なマッチングモード(「はい」、「いいえ」、「A」、「B」、「C」を出力文字列に使用します)を使用します。正確なマッチングは、yes-or-noタスクとマルチ選択タスクにのみ適用できます。
サポートされているビデオ理解データセット
| データセット | データセット名(run.py用) | タスク | データセット | データセット名(run.py用) | タスク |
|---|---|---|---|---|---|
| mmbench-video | mmbench-video | VQA | ビデオ-mme | ビデオ-mme | MCQ |
| mvbench | mvbench/mvbench_mp4 | MCQ | mlvu | mlvu | MCQ&VQA |
| TempCompass | TempCompass | MCQ&Y/N&キャプション | longvideobench | longvideobench | MCQ |
サポートされているAPIモデル
| GPT-4V(20231106、20240409) ? | GPT-4O ? | gemini-1.0-pro ? | gemini-1.5-pro ? | ステップ1V ? |
|---|---|---|---|---|
| Reka- [Edge / Flash / Core] ? | qwen-vl- [プラス /マックス] ? qwen-vl- [プラス / max] -0809 ? | claude3- [haiku / sonnet / opus] ? | GLM-4V ? | おめでとう? |
| Claude3.5-Sonnet(20240620、20241022) ? | gpt-4o-mini ? | Yi-Vision ? | Hunyuan-vision ? | bluelm-v ? |
| テレム? |
サポートされているPytorch / HFモデル
| IDEFICS- [9b/80b/v2-8b/v3-8b] - instruct ? | instrupblip- [7b/13b] | llava- [v1-7b/v1.5-7b/v1.5-13b] | Minigpt-4- [V1-7B/V1-13B/V2-7B] |
|---|---|---|---|
| mplug-owl [2/3] | OpenFlamingo-V2 | pandagpt-13b | qwen-vl ? qwen-vl-chat ? |
| VisualGlm-6B ? | internlm-xcomposer- [1/2] ? | sharegpt4v- [7b/13b] ? | Transcore-M |
| llava(xtuner) ? | cogvlm- [chat/llama3] ? | ShareCaptioner ? | cogvlm-grounding-generalist ? |
| 猿? モンキーチャット? | emu2-chat ? | yi-vl- [6b/34b] | ムマラヤ? |
| internlm-xcomposer-2.5 ? | minicpm- [v1/v2/v2.5/v2.6] ? | omnilmm-12b | internvl-chat- [v1-1/v1-2/v1-5/v2] ? |
| deepseek-vl | llava-next ? | bunny-llama3 ? | 逆V-13b |
| paligemma-3b ? | 360VL-70B ? | Phi-3-vision ? Phi-3.5-vision ? | wemm ? |
| GLM-4V-9B ? | カンブリアン - [8b/13b/34b] | llava-next- [qwen-32b] | Cameleon- [7b/30b] ? |
| Video-llava-7b- [hf] ? | Vila1.5- [3b/8b/13b/40b] | Ovis [1.5-llama3-8b/1.5-gemma2-9b/1.6-gemma2-9b/1.6-llama3.2-3b/1.6-gemma2-27b] ? | Mantis-8b- [siglip-llama3/clip-llama3/idefics2/fuyu] |
| llama-3-mixsensev1_1 ? | Parrot-7B ? | omchat-v2.0-13b-sinlge-beta ? | Video-chatgpt ? |
| Chat-Univi-7b [-v1.5] ? | llama-vid-7b ? | videoChat2-HD ? | pllava- [7b/13b/34b] ? |
| rbdash_72b ? | xgen-mm-phi3- [interleave/dpo] -r-v1.5 ? | qwen2-vl- [2b/7b/72b] ? | slime_ [7b/8b/13b] |
| eagle-x4- [8b/13b] ?、 Eagle-x5- [7b/13b/34b] ? | moondream1 ?、 moondream2 ? | Xinyuan-vl-2b-instruct ? | llama-3.2- [11b/90b] - vision-instruct ? |
| kosmos2 ? | H2ovl-mississippi- [0.8b/2b] ? | ** pixtral-12b ** | ** falcon2-vlm-11b **? |
| ** minimonkey **? | ** llava-onevision **? | ** llava-video **? | ** aquila-vl-2b **? |
| mini-internvl-chat- [2b/4b] -v1-5 ? | internvl2シリーズ? | ** Janus-1.3b **? | ** molmoe-1b/molmo-7b/molmo-72b **? |
| **ポイント - [yi-1.5-9b/qwen-2.5-7b] **? | ** nvlm **? | ** vintern **? | **アリア**? |
:入力として複数の画像をサポートします。
?:モデルは、追加の構成/操作なしで使用できます。
?:入力としてビデオをサポートします。
トランスフォーマーバージョンの推奨事項:
一部のVLMは特定の変圧器バージョンで実行できない場合があることに注意してください。各VLMを評価するには、次の設定をお勧めします。
transformers==4.33.0 for : Qwen series 、 Monkey series 、 InternLM-XComposer Series 、 mPLUG-Owl2 、 OpenFlamingo v2 、 IDEFICS series 、 VisualGLM 、 MMAlaya 、 ShareCaptioner 、 MiniGPT-4 series 、 InstructBLIP series 、 PandaGPT 、 VXVERSE 。transformers==4.36.2を使用してください: Moondream1 。transformers==4.37.0使用: LLaVA series 、 ShareGPT4V series 、 TransCore-M 、 LLaVA (XTuner) 、 CogVLM Series 、 EMU2 Series 、 Yi-VL Series 、 MiniCPM-[V1/V2] 、 OmniLMM-12B 、 VILA Series Llama-3-MixSenseV1_1 DeepSeek-VL series Cambrian Series 、 InternVL series inter Parrot-7B 、 PLLaVA Series 。transformers==4.40.0使用: IDEFICS2 、 Bunny-Llama3 、 MiniCPM-Llama3-V2.5 360VL-70B 、 Phi-3-Vision 、 WeMM 。transformers==4.44.0を使用してください: Moondream2 、 H2OVL series 。transformers==4.45.0を使用してください: Aria 。transformers==latestを使用してください: LLaVA-Next series 、 PaliGemma-3B 、 Chameleon series 、 Video-LLaVA-7B-HF 、 Ovis series 、 Mantis series 、 MiniCPM-V2.6 、 OmChat-v2.0-13B-sinlge-beta 、 Idefics-3 、 GLM-4v-9B 、 VideoChat2-HD 、 RBDash_72b Llama-3.2 series 、 Kosmos series 。TorchVisionバージョンの推奨:
一部のVLMが特定のTorchVisionバージョンで実行できない場合があることに注意してください。各VLMを評価するには、次の設定をお勧めします。
torchvision>=0.16を使用してください: Moondream seriesとAriaFlash-attnバージョンの推奨:
一部のVLMが特定のフラッシュアテンションバージョンで実行できない場合があることに注意してください。各VLMを評価するには、次の設定をお勧めします。
pip install flash-attn --no-build-isolation : Ariaを使用してください # Demo
from vlmeval . config import supported_VLM
model = supported_VLM [ 'idefics_9b_instruct' ]()
# Forward Single Image
ret = model . generate ([ 'assets/apple.jpg' , 'What is in this image?' ])
print ( ret ) # The image features a red apple with a leaf on it.
# Forward Multiple Images
ret = model . generate ([ 'assets/apple.jpg' , 'assets/apple.jpg' , 'How many apples are there in the provided images? ' ])
print ( ret ) # There are two apples in the provided images. カスタムベンチマーク、VLMSを開発するか、単に他のコードをvlmevalkitに送信するには、[development_guide |を参照してください。 开发指南]。
貢献を求めてください
コミュニティからの貢献を促進し、対応するクレジットを共有するには(次のレポートの更新で):
これは、レコードに基づいてキュレーションした貢献者リストです。
コードベースは次のように設計されています。
generate_inner()関数を実装するだけで、他のすべてのワークロード(データのダウンロード、データ前処理、予測推論、メトリック計算)がコードベースによって処理されます。コードベースは次のように設計されていません。
この作品が役立つと思う場合は、スターを検討してください。このレポ。ご支援ありがとうございます!
調査でvlmevalkitを使用している場合、または公開されたOpenSource評価結果を参照する場合は、使用した特定のVLM /ベンチマークに対応するBibtexエントリとBibtexエントリを使用してください。
@misc { duan2024vlmevalkit ,
title = { VLMEvalKit: An Open-Source Toolkit for Evaluating Large Multi-Modality Models } ,
author = { Haodong Duan and Junming Yang and Yuxuan Qiao and Xinyu Fang and Lin Chen and Yuan Liu and Xiaoyi Dong and Yuhang Zang and Pan Zhang and Jiaqi Wang and Dahua Lin and Kai Chen } ,
year = { 2024 } ,
eprint = { 2407.11691 } ,
archivePrefix = { arXiv } ,
primaryClass = { cs.CV } ,
url = { https://arxiv.org/abs/2407.11691 } ,
}?トップに戻ります