Pearl-34B-ties, an xtraordinary 34B model

03-22-2024 - To date, louisbrulenaudet/Pearl-34B-ties is the "Best 🤝 base merges and moerges model of around 30B" on the Open LLM Leaderboard.

Pearl-34B-ties is a merge of the following models:

Evaluation

The evaluation was performed using the HuggingFace Open LLM Leaderboard.

Model Average ARC HellaSwag MMLU TruthfulQA Winogrande GSM8K #Params (B)
louisbrulenaudet/Pearl-34B-ties 75.48 70.99 84.83 76.63 70.32 82.64 67.48 34.39
louisbrulenaudet/Pearl-7B-0211-ties 75.11 71.42 88.86 63.91 71.46 84.37 70.66 7.24
NousResearch/Nous-Hermes-2-Mixtral-8x7B-DPO 73.35 71.08 87.29 72.17 54.83 83.11 71.65 46.7
argilla/notus-8x7b-experiment 73.18 70.99 87.73 71.33 65.79 81.61 61.64 46.7
louisbrulenaudet/Pearl-7B-slerp 72.75 68.00 87.16 64.04 62.35 81.29 73.62 7.24
mistralai/Mixtral-8x7B-Instruct-v0.1 72.7 70.14 87.55 71.4 64.98 81.06 61.11 46.7
microsoft/Orca-2-13b 61.98 60.92 79.85 60.3 56.42 76.56 37.83 13
microsoft/phi-2 61.33 61.09 75.11 58.11 44.47 74.35 54.81 2.78

Ties merging

TIES-Merging is a method designed to facilitate the efficient merging of multiple task-specific models into a consolidated multitask model. It addresses two primary challenges encountered in the process of model merging with a focus on maintaining objectivity.

One key challenge tackled by TIES-Merging involves addressing redundancy in model parameters. This is achieved by identifying and eliminating redundant parameters within task-specific models, emphasizing the changes made during fine-tuning and selectively retaining the top-k% most significant changes while discarding the rest.

Another challenge pertains to conflicts arising from disagreements between parameter signs across different models. TIES-Merging resolves these conflicts by creating a unified sign vector representing the most dominant direction of change across all models.

The TIES-Merging process consists of three steps:

  • Trim: Reduces redundancy in task-specific models by retaining a fraction of the most significant parameters (density parameter) and resetting the remaining parameters to zero.
  • Elect Sign: Resolves sign conflicts across different models by creating a unified sign vector based on the most dominant direction (positive or negative) in terms of cumulative magnitude.
  • Disjoint Merge: Averages parameter values aligned with the unified sign vector, excluding zero values.

Configuration

models:
  - model: abacusai/Smaug-34B-v0.1
  - model: jondurbin/bagel-dpo-34b-v0.2
    parameters:
      density: 0.45
      weight: 0.5
  - model: abacusai/MetaMath-Bagel-DPO-34B
    parameters:
      density: 0.48
      weight: 0.5
merge_method: ties
base_model: abacusai/Smaug-34B-v0.1
parameters:
  normalize: true
  int8_mask: true
dtype: bfloat16

Usage

!pip install -qU transformers accelerate

from transformers import AutoTokenizer
import transformers
import torch

model = "louisbrulenaudet/Pearl-34B-ties"
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"])

Citing & Authors

If you use this code in your research, please use the following BibTeX entry.

@misc{louisbrulenaudet2023,
  author =       {Louis Brulé Naudet},
  title =        {Pearl-34B-ties, an xtraordinary 34B model},
  year =         {2023}
  howpublished = {\url{https://huggingface.co/louisbrulenaudet/Pearl-34B-ties}},
}

Feedback

If you have any feedback, please reach out at [email protected].

Downloads last month
81
Safetensors
Model size
34.4B params
Tensor type
BF16
·
Inference Examples
This model does not have enough activity to be deployed to Inference API (serverless) yet. Increase its social visibility and check back later, or deploy to Inference Endpoints (dedicated) instead.

Model tree for louisbrulenaudet/Pearl-34B-ties

Collection including louisbrulenaudet/Pearl-34B-ties