|
--- |
|
base_model: |
|
- ibm/merlinite-7b |
|
- InferenceIllusionist/Magic-Dolphin-7b |
|
- SanjiWatsuki/Kunoichi-DPO-v2-7B |
|
- mlabonne/Monarch-7B |
|
- bardsai/jaskier-7b-dpo-v6.1 |
|
|
|
library_name: transformers |
|
tags: |
|
- mergekit |
|
- merge |
|
license: apache-2.0 |
|
--- |
|
|
|
|
|
# Excalibur-7b |
|
|
|
<img src="https://i.imgur.com/viIO4WT.png" width="550"/> |
|
|
|
<b> Update: A [fine-tuned version](https://huggingface.co/InferenceIllusionist/Excalibur-7b-DPO/) of this model is now publicly available, along with benchmark results. If you're looking for a more conversational, assistant-style exchange you won't want to miss it!</b> |
|
|
|
<i>Image generated with Envoid's [Model9](https://huggingface.co/Envoid/model9) SDXL model </i> |
|
|
|
GGUFs can be found [here](https://huggingface.co/InferenceIllusionist/Excalibur-7b-GGUF) |
|
|
|
Alternative GGUFs from [bartowski](https://huggingface.co/bartowski) can be found [here](https://huggingface.co/bartowski/Excalibur-7b-GGUF). |
|
|
|
EXl2 can also be found [here](https://huggingface.co/bartowski/Excalibur-7b-exl2) again courtesy of [bartowski](https://huggingface.co/bartowski)! |
|
|
|
|
|
### Performance Comparison |
|
| Name | Avg. | ARC | HellaSwag | MMLU | TruthfulQA | Winogrande | GSM8K | |
|
| ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | |
|
| <b>Excalibur-7b</b> | <u><b>73.6</b></u> | <u><b>69.71</b></u> | <u><b>87.56</b></u> | <u><b>65.66</b></u> | <u><b>67.24</b></u> | <u><b>82.79</b></u> | <u><b>68.61</b></u> | |
|
| Magic-Dolphin-7b | 67.48 | 65.78 | 85.61 | 64.64 | 58.01 | 79.64 | 51.18 | |
|
| merlinite-7b | 64 | 63.65 | 84.52 | 64.91 | 50.15 | 79.72 | 41.09 | |
|
[* Open LLM Leaderboard Dataset](https://huggingface.co/datasets/open-llm-leaderboard/details_InferenceIllusionist__Excalibur-7B) |
|
|
|
### Methodology |
|
[Magic-Dolphin-7b](https://huggingface.co/InferenceIllusionist/Magic-Dolphin-7b) was an unexpected surprise. Profoundly satisfied with it as a first attempt. For this follow-up I wanted to target the MMLU benchmark specifically. |
|
The challenge this time was placing more weight on Merlinite-7b as an unknown quantity that hasn't been in the spotlight despite its novel LAB tuning method. |
|
|
|
<b>Excalibur-7b</b> builds on past success and is the culmination of several learnings: |
|
* Measuring KL-divergences for new quantization types brought a deeper understanding of benchmarking and assessing model performance |
|
* This signifcantly sped up the testing process by using MMLU as a base, narrowing down over 10 candidate linear merges to 1: merliniteX-blockB1 |
|
* Reaching the limitations of linear merging necessitated a pivot to reviewing the viability of SLERP, DARE-TIES, and Passthrough methods |
|
* Thus a competing candidate merge pool was tested between different merge algorithms. Once more the list was narrowed from 10 candidates to 1: merliniteX-blockF2 |
|
* merliniteX-blockF2 (SLERP of Magic-Dolphin-7B and jaskier-7b-dpo in unorthadox proportions) was originally planned for release earlier this week |
|
* Instead -blockB1 and -blockF2 were merged and the results were placed head to head in a final round of tests. Ultimately a more conventional execution of SLERP showed the best results for the final step. |
|
|
|
|
|
|
|
# Sample Question |
|
|
|
<img src="https://i.imgur.com/fdFYIhv.jpeg" width="550"/> |
|
|
|
# Bonus Question - Vision Capabilities |
|
|
|
<b>Requires additional [mistral-7b-mmproj-v1.5-Q4_1.gguf](https://huggingface.co/koboldcpp/mmproj/tree/main) file for vision functionality</b> |
|
<img src="https://i.imgur.com/4wbUrjf.jpeg" width="550"/> |
|
|
|
Select up the gguf file of your choice in Kobold as usual, then make sure to choose the mmproj file above in the LLaVA mmproj field of the model submenu: |
|
<img src="https://i.imgur.com/x8vqH29.png" width="550"/> |
|
|
|
This is a merge of pre-trained language models created using [mergekit](https://github.com/cg123/mergekit). |
|
|
|
## Merge Details |
|
### Merge Method |
|
|
|
This model was merged using the SLERP merge method. |
|
|
|
### Models Merged |
|
|
|
The following models were included in the merge: |
|
* [ibm/merlinite-7b](https://huggingface.co/ibm/merlinite-7b) |
|
* [InferenceIllusionist/Magic-Dolphin-7b](https://huggingface.co/InferenceIllusionist/Magic-Dolphin-7b) |
|
* [SanjiWatsuki/Kunoichi-DPO-v2-7B](https://huggingface.co/SanjiWatsuki/Kunoichi-DPO-v2-7B) |
|
* [mlabonne/Monarch-7B](https://huggingface.co/mlabonne/Monarch-7B) |
|
* [bardsai/jaskier-7b-dpo-v6.1](https://huggingface.co/bardsai/jaskier-7b-dpo-v6.1) |
|
|
|
### Configuration |
|
|
|
The following YAML configurations were used to produce this model: |
|
|
|
|
|
<b>merliniteX-blockB1</b> |
|
```yaml |
|
models: |
|
- model: models/merlinite-7b |
|
parameters: |
|
weight: 1.0 |
|
- model: models/Kunoichi-DPO-v2-7B |
|
parameters: |
|
weight: 0.2 |
|
- model: models/jaskier-7b-dpo-v6.1 |
|
parameters: |
|
weight: 0.6 |
|
- model: models/Monarch-7b |
|
parameters: |
|
weight: 0.4 |
|
merge_method: linear |
|
dtype: float16 |
|
``` |
|
|
|
<b>merliniteX-blockF2</b> |
|
```yaml |
|
slices: |
|
- sources: |
|
- model: models/Magic-Dolphin-7b |
|
layer_range: [0, 32] |
|
- model: models/jaskier-7b-dpo-v6.1 |
|
layer_range: [0, 32] |
|
merge_method: slerp |
|
base_model: models/Magic-Dolphin-7b |
|
parameters: |
|
t: |
|
- filter: self_attn |
|
value: [0, 0.5, 0.3, 0.7, 0.5, 1] |
|
- filter: mlp |
|
value: [1, 0.5, 0.7, 0.3, 0.5, 0] |
|
- value: 0.5 # fallback for rest of tensors |
|
dtype: float16 |
|
``` |
|
|
|
<b>merliniteX-blockH1 (Excalibur-7b)</b> |
|
```yaml |
|
slices: |
|
- sources: |
|
- model: models/merliniteX-blockF2 |
|
layer_range: [0, 32] |
|
- model: models/merliniteX-blockB1 |
|
layer_range: [0, 32] |
|
merge_method: slerp |
|
base_model: models/merliniteX-blockF2 |
|
parameters: |
|
t: |
|
- filter: self_attn |
|
value: [1, 0.7, 0.3, 0.5, 0] |
|
- filter: mlp |
|
value: [0, 0.3, 0.7, 0.5, 1] |
|
- value: 0.5 # fallback for rest of tensors |
|
dtype: float16 |
|
|
|
``` |