SakanaAI/evolutionary-model-merge

Official repository of Evolutionary Optimization of Model Merging Recipes

1,439

stars

2

commits

Python

primary language

Nov 29, 2024

updated

README

🐟 Evolutionary Optimization of Model Merging Recipes

πŸ€— Models | πŸ‘€ Demo | πŸ“š Paper | πŸ“ Blog | 🐦 Twitter

Method

This repository serves as a central hub for SakanaAI's Evolutionary Model Merge series, showcasing its releases and resources. It includes models and code for reproducing the evaluation presented in our paper. Look forward to more updates and additions coming soon.

Models

Our Models

Comparing EvoLLM-JP w/ Source LLMs

For details on the evaluation, please refer to Section 4.1 of the paper.

ModelMGSM-JA (acc ↑)lm-eval-harness (avg ↑)
Shisa Gamma 7B v19.666.1
WizardMath 7B V1.118.460.1
Abel 7B 00230.056.5
Arithmo2 Mistral 7B24.056.4
EvoLLM-JP-A-v1-7B52.469.0
EvoLLM-JP-v1-7B52.070.5
EvoLLM-JP-v1-10B55.666.2

Comparing EvoVLM-JP w/ Existing VLMs

For details on the evaluation, please see Section 4.2 of the paper.

ModelJA-VG-VQA-500 (ROUGE-L ↑)JA-VLM-Bench-In-the-Wild (ROUGE-L ↑)
LLaVA-1.6-Mistral-7B14.3241.10
Japanese Stable VLM-*140.50
Heron BLIP Japanese StableLM Base 7B llava-620k14.5133.26
EvoVLM-JP-v1-7B19.7051.25
  • *1: Japanese Stable VLM cannot be evaluated using the JA-VG-VQA-500 dataset because this model has used this dataset for training.

Reproducing the Evaluation

1. Clone the Repo

git clone https://github.com/SakanaAI/evolutionary-model-merge.git
cd evolutionary-model-merge

2. Download fastext Model

We use fastext to detect language for evaluation. Please download lid.176.ftz from this link and place it in your current directory. If you place the file in a directory other than the current directory, specify the path to the file using the LID176FTZ_PATH environment variable.

3. Install Libraries

pip install -e .

We conducted our tests in the following environment: Python Version 3.10.12 and CUDA Version 12.3. We cannot guarantee that it will work in other environments.

4. Run

To launch evaluation, run the following script with a certain config. All configs used for the paper are in configs.

python evaluate.py --config_path {path-to-config}

Acknowledgement

We would like to thank the developers of the source models for their contributions and for making their work available. Our math evaluation code builds on the WizardMath repository, and we are grateful for their work.

Contributors

mkshing

2 commits

SakanaAI/evolutionary-model-merge

Official repository of Evolutionary Optimization of Model Merging Recipes

1,439

stars

2

commits

Python

primary language

Nov 29, 2024

updated

README

🐟 Evolutionary Optimization of Model Merging Recipes

πŸ€— Models | πŸ‘€ Demo | πŸ“š Paper | πŸ“ Blog | 🐦 Twitter

Method

This repository serves as a central hub for SakanaAI's Evolutionary Model Merge series, showcasing its releases and resources. It includes models and code for reproducing the evaluation presented in our paper. Look forward to more updates and additions coming soon.

Models

Our Models

Comparing EvoLLM-JP w/ Source LLMs

For details on the evaluation, please refer to Section 4.1 of the paper.

ModelMGSM-JA (acc ↑)lm-eval-harness (avg ↑)
Shisa Gamma 7B v19.666.1
WizardMath 7B V1.118.460.1
Abel 7B 00230.056.5
Arithmo2 Mistral 7B24.056.4
EvoLLM-JP-A-v1-7B52.469.0
EvoLLM-JP-v1-7B52.070.5
EvoLLM-JP-v1-10B55.666.2

Comparing EvoVLM-JP w/ Existing VLMs

For details on the evaluation, please see Section 4.2 of the paper.

ModelJA-VG-VQA-500 (ROUGE-L ↑)JA-VLM-Bench-In-the-Wild (ROUGE-L ↑)
LLaVA-1.6-Mistral-7B14.3241.10
Japanese Stable VLM-*140.50
Heron BLIP Japanese StableLM Base 7B llava-620k14.5133.26
EvoVLM-JP-v1-7B19.7051.25
  • *1: Japanese Stable VLM cannot be evaluated using the JA-VG-VQA-500 dataset because this model has used this dataset for training.

Reproducing the Evaluation

1. Clone the Repo

git clone https://github.com/SakanaAI/evolutionary-model-merge.git
cd evolutionary-model-merge

2. Download fastext Model

We use fastext to detect language for evaluation. Please download lid.176.ftz from this link and place it in your current directory. If you place the file in a directory other than the current directory, specify the path to the file using the LID176FTZ_PATH environment variable.

3. Install Libraries

pip install -e .

We conducted our tests in the following environment: Python Version 3.10.12 and CUDA Version 12.3. We cannot guarantee that it will work in other environments.

4. Run

To launch evaluation, run the following script with a certain config. All configs used for the paper are in configs.

python evaluate.py --config_path {path-to-config}

Acknowledgement

We would like to thank the developers of the source models for their contributions and for making their work available. Our math evaluation code builds on the WizardMath repository, and we are grateful for their work.

Contributors

mkshing

2 commits

Languages

Python

100.0%