
# TinyMistral-248m-4x-Moe

TinyMistral-248m-4x-Moe is a Mixure of Experts (MoE) made with the following models using [LazyMergekit](https://colab.research.google.com/drive/1obulZ1ROXHjYLn6PPZJwRR6GzgQogxxb?usp=sharing):
* [Locutusque/TinyMistral-248M-v2](https://huggingface.co/Locutusque/TinyMistral-248M-v2)
* [jtatman/tinymistral-v2-pycoder-instruct-248m](https://huggingface.co/jtatman/tinymistral-v2-pycoder-instruct-248m)
* [Locutusque/TinyMistral-248M-v2.5-Instruct](https://huggingface.co/Locutusque/TinyMistral-248M-v2.5-Instruct)
* [Locutusque/TinyMistral-248M-v2-Instruct](https://huggingface.co/Locutusque/TinyMistral-248M-v2-Instruct)

## 🧩 Configuration

```yaml
base_model: Locutusque/TinyMistral-248M-v2.5-Instruct
experts:
  - source_model: Locutusque/TinyMistral-248M-v2
    positive_prompts:
    - "assistant"
  - source_model: jtatman/tinymistral-v2-pycoder-instruct-248m
    positive_prompts:
    - "code"
    - "python"
    - "programming"
    - "algorithm"
  - source_model: Locutusque/TinyMistral-248M-v2.5-Instruct
    positive_prompts:
    - "Think step-by-step"
    - "Read the following"
    - "Write a summary"
    - "Please answer"
    - "Answer the following"
  - source_model: Locutusque/TinyMistral-248M-v2-Instruct
    positive_prompts:
    - "Write an essay that"
    - "What are"
    - "instruct"
    - "How does"
    - "Identify the"
```

## 💻 Usage

```python
!pip install -qU transformers bitsandbytes accelerate

from transformers import AutoTokenizer
import transformers
import torch

model = "jtatman/TinyMistral-248m-4x-Moe"

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"])
```
{"license": "apache-2.0", "tags": ["moe", "frankenmoe", "merge", "mergekit", "lazymergekit", "Locutusque/TinyMistral-248M-v2", "jtatman/tinymistral-v2-pycoder-instruct-248m", "Locutusque/TinyMistral-248M-v2.5-Instruct", "Locutusque/TinyMistral-248M-v2-Instruct"], "base_model": ["Locutusque/TinyMistral-248M-v2", "jtatman/tinymistral-v2-pycoder-instruct-248m", "Locutusque/TinyMistral-248M-v2.5-Instruct", "Locutusque/TinyMistral-248M-v2-Instruct"]}
transformers safetensors mixtral text-generation moe frankenmoe merge mergekit lazymergekit Locutusque/TinyMistral-248M-v2 jtatman/tinymistral-v2-pycoder-instruct-248m Locutusque/TinyMistral-248M-v2.5-Instruct Locutusque/TinyMistral-248M-v2-Instruct base_model:Locutusque/TinyMistral-248M-v2 base_model:jtatman/tinymistral-v2-pycoder-instruct-248m base_model:Locutusque/TinyMistral-248M-v2.5-Instruct base_model:Locutusque/TinyMistral-248M-v2-Instruct license:apache-2.0 autotrain_compatible endpoints_compatible text-generation-inference region:us