MLLM-CL: Continual Learning for Multimodal Large Language Models
0
13 commits
5 linked in READMEs
updated Oct 6, 2025
This is the official dataset repository of MLLM-CL and MR-LoRA. MLLM-CL is a novel benchmark encompassing domain and ability continual learning, where the former focuses on independently and identically distributed (IID) evaluation across evolving mainstream domains, whereas the latter evaluates on non-IID scenarios with emerging model ability. MR-LoRA prevents catastrophic interference through parameter isolation and an MLLM-based routing mechanism.
For more details, please refer to: MLLM-CL: Continual Learning for Multimodal Large Language Models [paper], [code].

βͺHongbo Zhao, Fei Zhu, Haiyang Guo, Meng Wang, Rundong Wang, βͺGaofeng Meng, βͺZhaoxiang Zhangβ¬
MLLM-CL is a benchmark for continual learning in multimodal large language models (MLLMs). It consists of two main components: domain continual learning and ability continual learning. The benchmark includes a variety of datasets and tasks to evaluate the performance of MLLMs in evolving scenarios.
Continually adding domain knowledge is crucial for constructing a powerful MLLM.
To achieve this goal, we propose domain continual learning and choose five mainstream and common domains: remote sensing, medical, science, autonomous driving and finance. In domain continual learning, the training set and test set are IID.
Domain continual learning assumes that training and test data are IID. However, achieving IID between training and test sets is often challenging in real-world scenarios. In ability continual learning, we assume that the training and test data are non-IID.
We select four fundamental abilities for the MLLM to learn sequentially: OCR, math & logic, visual perception and GUI agent.

Our MR-LoRA performs two-stage inference for a given multimodal input, consisting of a routing phase followed by a prediction phase. In the first stage, the expert selection router is performed to select a domain or ability-specific expert. Then, the selected expert is combined with the pre-trained backbone to output the final response.
This repo is about the replay data and router training data in MR-LoRA. You should use this repo with MLLM-CL together. (Note that images are in MLLM-CL)
git clone https://github.com/bjzhb666/MLLM-CL.git
cd MLLM-CL
pip install -e .
pip install -e ".[train]" -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
conda install git
pip install flash-attn==2.7.0.post2 --no-build-isolation -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
huggingface-cli download liuhaotian/llava-v1.5-7b --local-dir checkpoints/LLaVA/Vicuna/llava-7b-v1.5
huggingface-cli download openai/clip-vit-large-patch14-336 --local-dir checkpoints/LLaVA/clip-vit-large-patch14-336
.env file in the root directory of the project and add your OpenAI API key:# .env file
# QwenVL APIs
DASHSCOPE_API_KEY=
# Gemini w. Google Cloud Backends
GOOGLE_API_KEY=
# OpenAI API
OPENAI_API_KEY=YOUR_OPENAI_API_KEY
OPENAI_API_BASE=
LMUData=/data/hongbo_zhao/code/VLMEvalKit/LMUData
Please download the images of MLLM-CL from huggingface or modelscope: [huggingface] or [modelscope].
After downloading all of them, organize the data as follows:
Domain Continual Learning Data:
βββ RS
β βββ images
| βββtrain.json
| βββtest.json
βββ Med
β βββ images
| βββtrain.json
| βββtest.json
βββ AD
β βββ images
| βββtrain.json
| βββtest.json
βββ Fin
β βββ images
β βββ test.sjon
β βββ train.json
βββ Sci
| βββ images
| βββtrain.json
| βββtest.json
Ability Continual Learning Data:
βββ OCR
| βββ images
| βββtrain.json
βββ OCR_test
| βββ images
| βββtest.json
βββ Math
| βββ images
| βββtrain.json
βββ Math_test
| βββ images
| βββtest.json
βββ APP
| βββ images
| βββtrain.json
βββ APP_test
| βββ images
| βββtest.json
βββ VP
| βββ images
| βββtrain.json
βββ VP_test
| βββ images
| βββtest.json
Note: You need to modify the data path in all the scripts to your own path.
All the configs are in the configs folder.
We provide the scripts of our train order in scripts/Train.
configs folder. You should modify the data_configs and model_configs.bash scripts/Train/train_DCL.sh
data_configs_router, model_configs_router). Then use the command to train the router LoRA. You can get the router training data and replay data in huggingface or modelscope.bash scripts/Train/train_DCL_router.sh
M_N where M is the model name and N is the dataset name. You can refer to the detailed usage is mrlora_result_link.py.python scripts/mrlora_result_link.py [your_cross_result_path]
Eval_MR_LoRA/eval_use_router_DCL.bash scripts/Eval_MR_LoRA/eval_use_router_DCL.sh Med
bash scripts/Eval_MR_LoRA/eval_use_router_DCL.sh AD
bash scripts/Eval_MR_LoRA/eval_use_router_DCL.sh Sci
bash scripts/Eval_MR_LoRA/eval_use_router_DCL.sh Fin
bash scripts/Eval_MR_LoRA/eval_use_router_DCL.sh RS
Note: For the GUI agent task in ability continual learning, the final results are in a tsv file and you should submit it to the evaluation server. The evaluation server will return the final results.
We provide all the open source weights of MR-LoRA in huggingface and modelscope. You can download them from the following links.
| Type | Huggingface | ModelScope |
|---|---|---|
| Expert LoRA | Huggingface | ModelScope |
| Router LoRA | Huggingface | ModelScope |
@article{zhao2025mllm,
title={MLLM-CL: Continual Learning for Multimodal Large Language Models},
author={Zhao, Hongbo and Zhu, Fei and Guo, Haiyang and Wang, Meng and Wang, Rundong and Meng, Gaofeng and Zhang, Zhaoxiang},
journal={arXiv preprint arXiv:2506.05453},
year={2025}
}
LLaVA: the codebase we built upon, and our base model LLaVA-1.5-7b that has the amazing vision-language capabilities!
MCITlib: the codebase we train all our baselines on. MR-LoRA will be in this codebase in the future version.
CoIN, VLMEvalKit: the codebase we built upon.
This project is licensed under the terms of the Apache-2.0 license.
Please post an issue on our GitHub.
We are the members from MLLM-CL(hf), MLLM-CL(modelscope), an open-source community focused on Continual learning of Multimodal Large Language Models. We aim to construct a continuously evolving multimodal large language model (MLLM) system. If you are interested in our community and want to join us, feel free to contact us on GitHub or by email.
MLLM-CL: Continual Learning for Multimodal Large Language Models
0
13 commits
5 linked in READMEs
updated Oct 6, 2025
This is the official dataset repository of MLLM-CL and MR-LoRA. MLLM-CL is a novel benchmark encompassing domain and ability continual learning, where the former focuses on independently and identically distributed (IID) evaluation across evolving mainstream domains, whereas the latter evaluates on non-IID scenarios with emerging model ability. MR-LoRA prevents catastrophic interference through parameter isolation and an MLLM-based routing mechanism.
For more details, please refer to: MLLM-CL: Continual Learning for Multimodal Large Language Models [paper], [code].

βͺHongbo Zhao, Fei Zhu, Haiyang Guo, Meng Wang, Rundong Wang, βͺGaofeng Meng, βͺZhaoxiang Zhangβ¬
MLLM-CL is a benchmark for continual learning in multimodal large language models (MLLMs). It consists of two main components: domain continual learning and ability continual learning. The benchmark includes a variety of datasets and tasks to evaluate the performance of MLLMs in evolving scenarios.
Continually adding domain knowledge is crucial for constructing a powerful MLLM.
To achieve this goal, we propose domain continual learning and choose five mainstream and common domains: remote sensing, medical, science, autonomous driving and finance. In domain continual learning, the training set and test set are IID.
Domain continual learning assumes that training and test data are IID. However, achieving IID between training and test sets is often challenging in real-world scenarios. In ability continual learning, we assume that the training and test data are non-IID.
We select four fundamental abilities for the MLLM to learn sequentially: OCR, math & logic, visual perception and GUI agent.

Our MR-LoRA performs two-stage inference for a given multimodal input, consisting of a routing phase followed by a prediction phase. In the first stage, the expert selection router is performed to select a domain or ability-specific expert. Then, the selected expert is combined with the pre-trained backbone to output the final response.
This repo is about the replay data and router training data in MR-LoRA. You should use this repo with MLLM-CL together. (Note that images are in MLLM-CL)
git clone https://github.com/bjzhb666/MLLM-CL.git
cd MLLM-CL
pip install -e .
pip install -e ".[train]" -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
conda install git
pip install flash-attn==2.7.0.post2 --no-build-isolation -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
huggingface-cli download liuhaotian/llava-v1.5-7b --local-dir checkpoints/LLaVA/Vicuna/llava-7b-v1.5
huggingface-cli download openai/clip-vit-large-patch14-336 --local-dir checkpoints/LLaVA/clip-vit-large-patch14-336
.env file in the root directory of the project and add your OpenAI API key:# .env file
# QwenVL APIs
DASHSCOPE_API_KEY=
# Gemini w. Google Cloud Backends
GOOGLE_API_KEY=
# OpenAI API
OPENAI_API_KEY=YOUR_OPENAI_API_KEY
OPENAI_API_BASE=
LMUData=/data/hongbo_zhao/code/VLMEvalKit/LMUData
Please download the images of MLLM-CL from huggingface or modelscope: [huggingface] or [modelscope].
After downloading all of them, organize the data as follows:
Domain Continual Learning Data:
βββ RS
β βββ images
| βββtrain.json
| βββtest.json
βββ Med
β βββ images
| βββtrain.json
| βββtest.json
βββ AD
β βββ images
| βββtrain.json
| βββtest.json
βββ Fin
β βββ images
β βββ test.sjon
β βββ train.json
βββ Sci
| βββ images
| βββtrain.json
| βββtest.json
Ability Continual Learning Data:
βββ OCR
| βββ images
| βββtrain.json
βββ OCR_test
| βββ images
| βββtest.json
βββ Math
| βββ images
| βββtrain.json
βββ Math_test
| βββ images
| βββtest.json
βββ APP
| βββ images
| βββtrain.json
βββ APP_test
| βββ images
| βββtest.json
βββ VP
| βββ images
| βββtrain.json
βββ VP_test
| βββ images
| βββtest.json
Note: You need to modify the data path in all the scripts to your own path.
All the configs are in the configs folder.
We provide the scripts of our train order in scripts/Train.
configs folder. You should modify the data_configs and model_configs.bash scripts/Train/train_DCL.sh
data_configs_router, model_configs_router). Then use the command to train the router LoRA. You can get the router training data and replay data in huggingface or modelscope.bash scripts/Train/train_DCL_router.sh
M_N where M is the model name and N is the dataset name. You can refer to the detailed usage is mrlora_result_link.py.python scripts/mrlora_result_link.py [your_cross_result_path]
Eval_MR_LoRA/eval_use_router_DCL.bash scripts/Eval_MR_LoRA/eval_use_router_DCL.sh Med
bash scripts/Eval_MR_LoRA/eval_use_router_DCL.sh AD
bash scripts/Eval_MR_LoRA/eval_use_router_DCL.sh Sci
bash scripts/Eval_MR_LoRA/eval_use_router_DCL.sh Fin
bash scripts/Eval_MR_LoRA/eval_use_router_DCL.sh RS
Note: For the GUI agent task in ability continual learning, the final results are in a tsv file and you should submit it to the evaluation server. The evaluation server will return the final results.
We provide all the open source weights of MR-LoRA in huggingface and modelscope. You can download them from the following links.
| Type | Huggingface | ModelScope |
|---|---|---|
| Expert LoRA | Huggingface | ModelScope |
| Router LoRA | Huggingface | ModelScope |
@article{zhao2025mllm,
title={MLLM-CL: Continual Learning for Multimodal Large Language Models},
author={Zhao, Hongbo and Zhu, Fei and Guo, Haiyang and Wang, Meng and Wang, Rundong and Meng, Gaofeng and Zhang, Zhaoxiang},
journal={arXiv preprint arXiv:2506.05453},
year={2025}
}
LLaVA: the codebase we built upon, and our base model LLaVA-1.5-7b that has the amazing vision-language capabilities!
MCITlib: the codebase we train all our baselines on. MR-LoRA will be in this codebase in the future version.
CoIN, VLMEvalKit: the codebase we built upon.
This project is licensed under the terms of the Apache-2.0 license.
Please post an issue on our GitHub.
We are the members from MLLM-CL(hf), MLLM-CL(modelscope), an open-source community focused on Continual learning of Multimodal Large Language Models. We aim to construct a continuously evolving multimodal large language model (MLLM) system. If you are interested in our community and want to join us, feel free to contact us on GitHub or by email.