--- tags: - merge - mergekit - lazymergekit language: - de - en base_model: - abideen/AlphaMonarch-dora - mayflowergmbh/Wiedervereinigung-7b-dpo - flemmingmiguel/NeuDist-Ro-7B - ResplendentAI/Flora_DPO_7B - yleo/EmertonMonarch-7B - occiglot/occiglot-7b-de-en-instruct - OpenPipe/mistral-ft-optimized-1227 - DiscoResearch/DiscoLM_German_7b_v1 - LeoLM/leo-mistral-hessianai-7b - DRXD1000/Phoenix - VAGOsolutions/SauerkrautLM-7b-v1-mistral - malteos/hermeo-7b - FelixChao/WestSeverus-7B-DPO-v2 - cognitivecomputations/openchat-3.5-0106-laser license: cc-by-nc-4.0 --- # Spaetzle-v69-7b This is a progressive (mostly dare-ties, but also slerp) merge with the intention of a suitable compromise for English and German local tasks. There is also a 4q_k_m quantized [GGUF](https://huggingface.co./cstr/Spaetzle-v69-7b-GGUF). It should work sufficiently well with ChatML prompt template (for all merged models should have seen ChatML prompts at least in DPO stage). ## Evaluation Benchmark scores are not the possible optimum, as the model attempts a compromise with a number of parameters, like German language performance, instruction following, reasoning capabilities, robustness (so far, i did not encounter inserted tokens, e.g.), model licensing, and other criteria. Nevertheless, they are not too bad: It achieves (running quantized) in - German EQ Bench: Score (v2_de): 62.59 (Parseable: 171.0). - English EQ Bench: Score (v2): 76.43 (Parseable: 171.0). [Open LLM Leaderboard Evaluation Results](https://huggingface.co./spaces/HuggingFaceH4/open_llm_leaderboard): Detailed results can be found [here](https://huggingface.co./datasets/open-llm-leaderboard/details_cstr__Spaetzle-v69-7b) | Metric |Value| |---------------------------------|----:| |Avg. |72.87| |AI2 Reasoning Challenge (25-Shot)|69.54| |HellaSwag (10-Shot) |86.77| |MMLU (5-Shot) |64.63| |TruthfulQA (0-shot) |65.61| |Winogrande (5-shot) |81.93| |GSM8k (5-shot) |68.76| Nous benchmark results: | Model |AGIEval|GPT4All|TruthfulQA|Bigbench|Average| |--------------------------------------------------------------|------:|------:|---------:|-------:|------:| |[Spaetzle-v69-7b](https://huggingface.co./cstr/Spaetzle-v69-7b)| 44.48| 75.84| 66.15| 46.59| 58.27| ### AGIEval | Task |Version| Metric |Value| |Stderr| |------------------------------|------:|--------|----:|---|-----:| |agieval_aqua_rat | 0|acc |25.98|± | 2.76| | | |acc_norm|23.62|± | 2.67| |agieval_logiqa_en | 0|acc |39.78|± | 1.92| | | |acc_norm|39.48|± | 1.92| |agieval_lsat_ar | 0|acc |23.48|± | 2.80| | | |acc_norm|23.91|± | 2.82| |agieval_lsat_lr | 0|acc |50.00|± | 2.22| | | |acc_norm|51.76|± | 2.21| |agieval_lsat_rc | 0|acc |63.94|± | 2.93| | | |acc_norm|64.31|± | 2.93| |agieval_sat_en | 0|acc |76.70|± | 2.95| | | |acc_norm|77.67|± | 2.91| |agieval_sat_en_without_passage| 0|acc |46.12|± | 3.48| | | |acc_norm|44.17|± | 3.47| |agieval_sat_math | 0|acc |34.09|± | 3.20| | | |acc_norm|30.91|± | 3.12| Average: 44.48% ### GPT4All | Task |Version| Metric |Value| |Stderr| |-------------|------:|--------|----:|---|-----:| |arc_challenge| 0|acc |63.23|± | 1.41| | | |acc_norm|64.16|± | 1.40| |arc_easy | 0|acc |85.90|± | 0.71| | | |acc_norm|82.49|± | 0.78| |boolq | 1|acc |87.80|± | 0.57| |hellaswag | 0|acc |67.05|± | 0.47| | | |acc_norm|85.19|± | 0.35| |openbookqa | 0|acc |38.40|± | 2.18| | | |acc_norm|48.40|± | 2.24| |piqa | 0|acc |82.75|± | 0.88| | | |acc_norm|84.28|± | 0.85| |winogrande | 0|acc |78.53|± | 1.15| Average: 75.84% ### TruthfulQA | Task |Version|Metric|Value| |Stderr| |-------------|------:|------|----:|---|-----:| |truthfulqa_mc| 1|mc1 |50.67|± | 1.75| | | |mc2 |66.15|± | 1.48| Average: 66.15% ### Bigbench | Task |Version| Metric |Value| |Stderr| |------------------------------------------------|------:|---------------------|----:|---|-----:| |bigbench_causal_judgement | 0|multiple_choice_grade|56.84|± | 3.60| |bigbench_date_understanding | 0|multiple_choice_grade|66.67|± | 2.46| |bigbench_disambiguation_qa | 0|multiple_choice_grade|40.70|± | 3.06| |bigbench_geometric_shapes | 0|multiple_choice_grade|24.79|± | 2.28| | | |exact_str_match |10.58|± | 1.63| |bigbench_logical_deduction_five_objects | 0|multiple_choice_grade|31.00|± | 2.07| |bigbench_logical_deduction_seven_objects | 0|multiple_choice_grade|23.00|± | 1.59| |bigbench_logical_deduction_three_objects | 0|multiple_choice_grade|58.00|± | 2.85| |bigbench_movie_recommendation | 0|multiple_choice_grade|45.80|± | 2.23| |bigbench_navigate | 0|multiple_choice_grade|52.10|± | 1.58| |bigbench_reasoning_about_colored_objects | 0|multiple_choice_grade|69.55|± | 1.03| |bigbench_ruin_names | 0|multiple_choice_grade|48.88|± | 2.36| |bigbench_salient_translation_error_detection | 0|multiple_choice_grade|30.96|± | 1.46| |bigbench_snarks | 0|multiple_choice_grade|73.48|± | 3.29| |bigbench_sports_understanding | 0|multiple_choice_grade|74.14|± | 1.40| |bigbench_temporal_sequences | 0|multiple_choice_grade|42.70|± | 1.56| |bigbench_tracking_shuffled_objects_five_objects | 0|multiple_choice_grade|23.60|± | 1.20| |bigbench_tracking_shuffled_objects_seven_objects| 0|multiple_choice_grade|18.40|± | 0.93| |bigbench_tracking_shuffled_objects_three_objects| 0|multiple_choice_grade|58.00|± | 2.85| Average: 46.59% Average score: 58.27% ## 🧩 Merge Configuration Spaetzle-v69-7b is a merge of the following models using [LazyMergekit](https://colab.research.google.com/drive/1obulZ1ROXHjYLn6PPZJwRR6GzgQogxxb?usp=sharing): * [abideen/AlphaMonarch-dora](https://huggingface.co./abideen/AlphaMonarch-dora) * [cstr/Spaetzle-v68-7b](https://huggingface.co./cstr/Spaetzle-v68-7b) The merge tree in total involves the following original models: - [abideen/AlphaMonarch-dora](https://huggingface.co./abideen/AlphaMonarch-dora) - [mayflowergmbh/Wiedervereinigung-7b-dpo](https://huggingface.co./mayflowergmbh/Wiedervereinigung-7b-dpo) - [flemmingmiguel/NeuDist-Ro-7B](https://huggingface.co./flemmingmiguel/NeuDist-Ro-7B) - [ResplendentAI/Flora_DPO_7B](https://huggingface.co./ResplendentAI/Flora_DPO_7B) - [yleo/EmertonMonarch-7B](https://huggingface.co./yleo/EmertonMonarch-7B) - [occiglot/occiglot-7b-de-en-instruct](https://huggingface.co./occiglot/occiglot-7b-de-en-instruct) - [OpenPipe/mistral-ft-optimized-1227](https://huggingface.co./OpenPipe/mistral-ft-optimized-1227) - [DiscoResearch/DiscoLM_German_7b_v1](https://huggingface.co./DiscoResearch/DiscoLM_German_7b_v1) - [LeoLM/leo-mistral-hessianai-7b](https://huggingface.co./LeoLM/leo-mistral-hessianai-7b) - [DRXD1000/Phoenix](https://huggingface.co./DRXD1000/Phoenix) - [VAGOsolutions/SauerkrautLM-7b-v1-mistral](https://huggingface.co./VAGOsolutions/SauerkrautLM-7b-v1-mistral) - [malteos/hermeo-7b](https://huggingface.co./malteos/hermeo-7b) - [FelixChao/WestSeverus-7B-DPO-v2](https://huggingface.co./FelixChao/WestSeverus-7B-DPO-v2) - [cognitivecomputations/openchat-3.5-0106-laser](https://huggingface.co./cognitivecomputations/openchat-3.5-0106-laser) For this last merge: ```yaml models: - model: cstr/Spaetzle-v68-7b # no parameters necessary for base model - model: abideen/AlphaMonarch-dora parameters: density: 0.60 weight: 0.30 merge_method: dare_ties base_model: cstr/Spaetzle-v68-7b parameters: int8_mask: true dtype: bfloat16 random_seed: 0 tokenizer_source: base ``` ## 💻 Usage ```python !pip install -qU transformers accelerate from transformers import AutoTokenizer import transformers import torch model = "cstr/Spaetzle-v69-7b" messages = [{"role": "user", "content": "What is a large language model?"}] tokenizer = AutoTokenizer.from_pretrained(model) prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True) pipeline = transformers.pipeline( "text-generation", model=model, torch_dtype=torch.float16, device_map="auto", ) outputs = pipeline(prompt, max_new_tokens=256, do_sample=True, temperature=0.7, top_k=50, top_p=0.95) print(outputs[0]["generated_text"]) ```