CoolFace
Modelpublic

DeepGlint-AI/MLCD-Embodied-7B

sourceHugging Faceapache-2.0updated 1y agoView on Hugging Face
10likes29downloads
Model Card

[[Paper]](https://arxiv.org/abs/2407.17331) [[GitHub]](https://github.com/deepglint/unicom)

Embodied Ability Evaluation: Performance in RoboVQA and OpenEQA

MLCD <br> Embodied-7BLLaVA <br> OneVision-7BGPT-4vRoboMamba
RoboVQABLEU1<span style="color:red">73.16</span>38.12-54.9
BLEU2<span style="color:red">66.39</span>33.56-44.2
BLEU3<span style="color:red">60.61</span>31.76-39.5
BLEU4<span style="color:red">56.56</span>30.97-36.3
OpenEQAObject State Recognition<span style="color:red">71.83</span>-63.2-
Object Recognition<span style="color:red">49.46</span>-43.4-
Functional Reasoning54.38-<span style="color:red">57.4</span>-
Spatial Understanding<span style="color:red">48.64</span>-33.6-
Attribute Recognition<span style="color:red">67.08</span>-57.2-
World Knowledge<span style="color:red">53.87</span>-50.7-
Object Localization<span style="color:red">43.06</span>-42.0-

General Ability Evaluation: Comparison with LLaVA OneVision-7B and GPT-4

DatasetSplitMLCD<br>Embodied-7BLLaVA<br>OneVision-7BGPT-4vGPT-4o
A12Dtest79.981.478.294.2
ChartQAtest83.080.078.585.7
DocVQAtest91.687.588.492.8
InfoVQAval73.970.7--
InfoVQAtest70.068.8--
MMMUval47.348.856.869.1
MMStartest58.561.757.163.9
OCRBench-749.0697.0656.0805.0
RealWorldQAtest68.966.361.458.6
SeedBenchimage74.975.449.976.2
MMbenchen-dev81.183.281.383.4
MMbenchen-test80.180.875.0-
MMEtest578/1603418/1580517/1409-

Usage

A. Installation

bash
git clone https://github.com/deepglint/unicom
cd unicom/mlcd_vl

docker build -t train_mlcd_llava .

docker run --gpus all \
-v /vlm:/vlm \
-v /mnt:/mnt \
-v $(pwd):/workspace \
--rm \
-w /workspace \
--shm-size=64g -it train_mlcd_llava bash

pip install flash-attn==2.3.3 --no-build-isolation

B. Inference

bash
CUDA_VISIBLE_DEVICES=0 python infer_mlcd_emboided.py --model_dir DeepGlint-AI/MLCD-Embodied-7B

# example:
# >> Enter 'exit' to end the conversation, 'reset' to clear the chat history.
# >> Enter image file paths (comma-separated): ../_static/images/logo.png
# >> User: <image>What kind of animal is it in this picture?
# >> Assistant: The image features a stylized representation of a cat, characterized by its vibrant and abstract depiction.
# >> User: What color is this cat?
# >> Assistant: The cat in the image is primarily white with blue, orange and pink accents, creating a visually appealing and unique appearance.

C. Evaluation for Embodied Ability

Step 1

Download raw data following OpenEQA and RoboVQA(val part)

Step 2

Converting raw data into the format required for model evaluation.

bash
# convert OpenEQA benchmark. Note: replace the paths with your own.
python llava/benchmark/make_openeqa_bmk.py

# convert RoboVQA benchmark. Note: replace the paths with your own.
python llava/benchmark/make_robovqa_bmk.py
Step 3

Make sure that your top-level directory structure should look like this:

|--/path/to/your/benchmarks
|  |--OpenEQA
|  |  |--openeqa_scannet.parquet
|  |  |--openeqa_hm3d.parquet
|  |--RoboVQA
|     |--robovqa.parquet
|--/path/to/your/images
   |--openeqa_val
   |  |--scannet-v0
   |  |  |--002-scannet-scene0709_00
   |  |  |--xxx-scannet-scenexxxx_xx
   |  |--hm3d-v0
   |     |--000-hm3d-BFRyYbPCCPE
   |     |--xxx-hm3d-xxxxxxxxxxx
   |--robovqa_val
      |--robovqa_221911
      |--robovqa_xxxxxx
Step 4

Run script for evaluation

bash
# Note: replace 'YOUR_API_KEY', 'YOUR_ENDPOINT', 'bmk_root', 'image_folder' with your own.
bash scripts/eval/eval_robo.sh /path/to/your/model

D. Evaluation for General Ability

Install the evaluation tool and execute the evaluation script:

bash
pip install lmms-eval==0.2.0
PYTHONPATH=./ CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 python -m accelerate.commands.launch \
    --main_process_port=12444 \
    --num_processes=8 \
    -m lmms_eval \
    --model llava \
    --model_args pretrained=DeepGlint-AI/MLCD-Embodied-7B,conv_template=qwen_1_5 \
    --tasks mme \
    --batch_size 1 \
    --log_samples \
    --log_samples_suffix mlcd \
    --output_path ./eval_log/

We would like to express our gratitude to Huajie Tan, Yumeng Wang, Yin Xie for his significant contributions to the experimental validation in MLLMs.