|
--- |
|
license: apache-2.0 |
|
tags: |
|
- moe |
|
- frankenmoe |
|
- merge |
|
- mergekit |
|
- lazymergekit |
|
- mlabonne/NeuralBeagle14-7B |
|
- timpal0l/Mistral-7B-v0.1-flashback-v2 |
|
- Nexusflow/Starling-LM-7B-beta |
|
- AI-Sweden-Models/tyr |
|
base_model: |
|
- mlabonne/NeuralBeagle14-7B |
|
- timpal0l/Mistral-7B-v0.1-flashback-v2 |
|
- Nexusflow/Starling-LM-7B-beta |
|
- AI-Sweden-Models/tyr |
|
--- |
|
|
|
# MoEnsterBeagle |
|
|
|
MoEnsterBeagle is a Mixture of Experts (MoE) made with the following models using [LazyMergekit](https://colab.research.google.com/drive/1obulZ1ROXHjYLn6PPZJwRR6GzgQogxxb?usp=sharing): |
|
* [mlabonne/NeuralBeagle14-7B](https://huggingface.co/mlabonne/NeuralBeagle14-7B) |
|
* [timpal0l/Mistral-7B-v0.1-flashback-v2](https://huggingface.co/timpal0l/Mistral-7B-v0.1-flashback-v2) |
|
* [Nexusflow/Starling-LM-7B-beta](https://huggingface.co/Nexusflow/Starling-LM-7B-beta) |
|
* [AI-Sweden-Models/tyr](https://huggingface.co/AI-Sweden-Models/tyr) |
|
|
|
## 🧩 Configuration |
|
|
|
```yaml |
|
base_model: mlabonne/NeuralBeagle14-7B |
|
gate_mode: cheap_embed |
|
experts: |
|
- source_model: mlabonne/NeuralBeagle14-7B |
|
positive_prompts: |
|
- "chat" |
|
- "assistant" |
|
- "explain" |
|
- "tell me" |
|
- "english" |
|
- source_model: timpal0l/Mistral-7B-v0.1-flashback-v2 |
|
positive_prompts: |
|
- "förklara" |
|
- "sammanfatta" |
|
- "svenska" |
|
- source_model: Nexusflow/Starling-LM-7B-beta |
|
positive_prompts: |
|
- "code" |
|
- "programming" |
|
- "algorithm" |
|
- source_model: AI-Sweden-Models/tyr |
|
positive_prompts: |
|
- "varför" |
|
- "förenkla" |
|
- "lagen" |
|
``` |
|
|
|
## 💻 Usage |
|
|
|
```python |
|
!pip install -qU transformers bitsandbytes accelerate |
|
|
|
from transformers import AutoTokenizer |
|
import transformers |
|
import torch |
|
|
|
model = "FredrikBL/MoEnsterBeagle" |
|
|
|
tokenizer = AutoTokenizer.from_pretrained(model) |
|
pipeline = transformers.pipeline( |
|
"text-generation", |
|
model=model, |
|
model_kwargs={"torch_dtype": torch.float16, "load_in_4bit": True}, |
|
) |
|
|
|
messages = [{"role": "user", "content": "Explain what a Mixture of Experts is in less than 100 words."}] |
|
prompt = pipeline.tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True) |
|
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"]) |
|
``` |