[ICLR 2025] MLLM for On-Demand Spatial-Temporal Understanding at Arbitrary Resolution
See the code
Zuyan Liu*,1,2 Yuhao Dong*,2,3 Ziwei Liu3 Winston Hu2 Jiwen Lu1,✉ Yongming Rao2,1,✉
1Tsinghua University 2Tencent 3S-Lab, NTU
* Equal Contribution ✉ Corresponding Author
Oryx is a unified multimodal architecture for the spatial-temporal understanding of images, videos, and multi-view 3D scenes. Oryx offers an on-demand solution to seamlessly and efficiently process visual inputs with arbitrary spatial sizes and temporal lengths. Our model achieve strong capabilities in image, video, and 3D multimodal understanding simultaneously.
We provide our checkpoints at Huggingface
| Model | Link | Size | Visual Encoder | LLM-Type | Intermediate Model |
|---|---|---|---|---|---|
| Oryx-7B | Huggingface | 7B | Oryx-ViT | Qwen-2-7B | Oryx-7B-Image |
| Oryx-34B | Huggingface | 34B | Oryx-ViT | Yi-1.5-34B | Oryx-34B-Image |
| Oryx-1.5-7B | Huggingface | 7B | Oryx-ViT | Qwen-2.5-7B | Oryx-1.5-7B-Image |
| Oryx-1.5-32B | Huggingface | 32B | Oryx-ViT | Qwen-2.5-32B | Oryx-1.5-32B-Image |
You can try the generation results of our strong Oryx model with the following steps:
python inference.py
You can evaluate our model with the following steps:
cd ./lmms-eval
pip install -e .
bash ./scripts/eval_image.sh
bash ./scripts/eval_video.sh
git clone https://github.com/Oryx-mllm/oryx
cd oryx
conda create -n oryx python=3.10 -y
conda activate oryx
pip install --upgrade pip
pip install -e .
Please download training data from our huggingface.
Modify the DATA and FOLDER arguments in the training scripts to your save folder.
DATA="PATH/TO/Oryx-SFT-Data/data.json"
FOLDER="PATH/TO/Oryx-SFT-Data"
If you are interested in our long-form training data, you can download movienet_data.json and movienet_patch and mix appropriate quantity (we recommand 30k) with the main training data.
Modify the following lines in the scripts at your own environments:
export PYTHONPATH=/PATH/TO/oryx:$PYTHONPATH
VISION_TOWER='oryx_vit:PATH/TO/oryx_vit_new.pth'
DATA="PATH/TO/Oryx-SFT-DATA/data.json"
MODEL_NAME_OR_PATH="PATH/TO/7B_MODEL"
Scripts for training Oryx-7B
bash scripts/train_oryx_7b.sh
Scripts for training Oryx-34B
bash scripts/train_oryx_34b.sh
If you find it useful for your research and applications, please cite our paper using this BibTeX:
@article{liu2024oryx,
title={Oryx MLLM: On-Demand Spatial-Temporal Understanding at Arbitrary Resolution},
author={Liu, Zuyan and Dong, Yuhao and Liu, Ziwei and Hu, Winston and Lu, Jiwen and Rao, Yongming},
journal={arXiv preprint arXiv:2409.12961},
year={2024}
}
Python
99.6%
[ICLR 2025] MLLM for On-Demand Spatial-Temporal Understanding at Arbitrary Resolution
See the code
Zuyan Liu*,1,2 Yuhao Dong*,2,3 Ziwei Liu3 Winston Hu2 Jiwen Lu1,✉ Yongming Rao2,1,✉
1Tsinghua University 2Tencent 3S-Lab, NTU
* Equal Contribution ✉ Corresponding Author
Oryx is a unified multimodal architecture for the spatial-temporal understanding of images, videos, and multi-view 3D scenes. Oryx offers an on-demand solution to seamlessly and efficiently process visual inputs with arbitrary spatial sizes and temporal lengths. Our model achieve strong capabilities in image, video, and 3D multimodal understanding simultaneously.
We provide our checkpoints at Huggingface
| Model | Link | Size | Visual Encoder | LLM-Type | Intermediate Model |
|---|---|---|---|---|---|
| Oryx-7B | Huggingface | 7B | Oryx-ViT | Qwen-2-7B | Oryx-7B-Image |
| Oryx-34B | Huggingface | 34B | Oryx-ViT | Yi-1.5-34B | Oryx-34B-Image |
| Oryx-1.5-7B | Huggingface | 7B | Oryx-ViT | Qwen-2.5-7B | Oryx-1.5-7B-Image |
| Oryx-1.5-32B | Huggingface | 32B | Oryx-ViT | Qwen-2.5-32B | Oryx-1.5-32B-Image |
You can try the generation results of our strong Oryx model with the following steps:
python inference.py
You can evaluate our model with the following steps:
cd ./lmms-eval
pip install -e .
bash ./scripts/eval_image.sh
bash ./scripts/eval_video.sh
git clone https://github.com/Oryx-mllm/oryx
cd oryx
conda create -n oryx python=3.10 -y
conda activate oryx
pip install --upgrade pip
pip install -e .
Please download training data from our huggingface.
Modify the DATA and FOLDER arguments in the training scripts to your save folder.
DATA="PATH/TO/Oryx-SFT-Data/data.json"
FOLDER="PATH/TO/Oryx-SFT-Data"
If you are interested in our long-form training data, you can download movienet_data.json and movienet_patch and mix appropriate quantity (we recommand 30k) with the main training data.
Modify the following lines in the scripts at your own environments:
export PYTHONPATH=/PATH/TO/oryx:$PYTHONPATH
VISION_TOWER='oryx_vit:PATH/TO/oryx_vit_new.pth'
DATA="PATH/TO/Oryx-SFT-DATA/data.json"
MODEL_NAME_OR_PATH="PATH/TO/7B_MODEL"
Scripts for training Oryx-7B
bash scripts/train_oryx_7b.sh
Scripts for training Oryx-34B
bash scripts/train_oryx_34b.sh
If you find it useful for your research and applications, please cite our paper using this BibTeX:
@article{liu2024oryx,
title={Oryx MLLM: On-Demand Spatial-Temporal Understanding at Arbitrary Resolution},
author={Liu, Zuyan and Dong, Yuhao and Liu, Ziwei and Hu, Winston and Lu, Jiwen and Rao, Yongming},
journal={arXiv preprint arXiv:2409.12961},
year={2024}
}
Python
99.6%