Language Models are Super Mario: Absorbing Abilities from Homologous Models as a Free Lunch
Paper • 2311.03099 • Published • 33
# Load model directly
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("TareksTesting/UNNAMED-MODEL-C")
model = AutoModelForCausalLM.from_pretrained("TareksTesting/UNNAMED-MODEL-C")
messages = [
{"role": "user", "content": "Who are you?"},
]
inputs = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
tokenize=True,
return_dict=True,
return_tensors="pt",
).to(model.device)
outputs = model.generate(**inputs, max_new_tokens=40)
print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:]))This is a merge of pre-trained language models created using mergekit.
This model was merged using the DARE TIES merge method using TareksLab/Scrivener-Base-V4-LLaMA-70B as a base.
The following models were included in the merge:
The following YAML configuration was used to produce this model:
models:
- model: TareksLab/Wordsmith-V2.0-LLaMa-70B
parameters:
weight: 0.20
density: 0.5
- model: TareksLab/Anathema-V2-LLaMA-70B
parameters:
weight: 0.20
density: 0.5
- model: TareksLab/Scrivener-Base-V4-LLaMA-70B
parameters:
weight: 0.20
density: 0.5
- model: TareksLab/RolePlayer-V4-LLaMa-70B
parameters:
weight: 0.20
density: 0.5
- model: TareksLab/Erudite-V1-Unleashed-LLaMA-70B
parameters:
weight: 0.20
density: 0.5
merge_method: dare_ties
base_model: TareksLab/Scrivener-Base-V4-LLaMA-70B
parameters:
normalize: false
out_dtype: bfloat16
chat_template: llama3
tokenizer:
source: TareksLab/Scrivener-Base-V4-LLaMA-70B
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="TareksTesting/UNNAMED-MODEL-C") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)