# Model Card for M4-ai/TinyMistral-6x248M-Instruct

## Model Details

- **Model Name:** M4-ai/TinyMistral-6x248M-Instruct
- **Model Type:** Language Model (Mixture of Experts)
- **Fine-Tuning Base:** M4-ai/TinyMistral-6x248M
- **Developers:** M4-ai team
- **Fine-Tuning Dataset:** hercules-v1.0

## Model Description

M4-ai/TinyMistral-6x248M-Instruct is a fine-tuned language model based on a Mixture of Experts (MoE) architecture. It is an ensemble of various models that have been expertly combined using the LazyMergekit framework. The base pre-trained mixture model includes several versions of the TinyMistral model, with each expert tailored to specialize in different domains ranging from technical software development to multilingual text generation. This fine-tuned version specifically aims to enhance the model's performance on instructive tasks by leveraging the hercules-v1.0 dataset. The model is intended for applications requiring guidance, explanations, and analysis across a wide array of topics.

## Intended Use

M4-ai/TinyMistral-6x248M-Instruct is designed for developers and researchers who need a sophisticated language model capable of understanding and generating text in response to instructive prompts. The model is suitable for a variety of tasks, including but not limited to technical explanations, educational content, policy analysis, and problem-solving across disciplines such as computer science, history, and natural sciences. Users should be mindful of the model's limitations and potential biases, especially when dealing with sensitive topics.

## Training Data

The model was fine-tuned using the hercules-v1.0 dataset, which is an augmented version of the teknium/openhermes dataset. Hercules-v1.0 includes updated data sources like ise-uiuc/Magicoder-Evol-Instruct-110K, jondurbin/airoboros-3.2, and WizardLM/WizardLM_evol_instruct_V2_196k, as well as specialized datasets in mathematics, chemistry, physics, and biology. The dataset has been cleaned to remove RLHF refusals and potentially toxic content from airoboros-3.2. However, users should be aware that a small portion of the data might still contain sensitive content.

You can use the ChatML prompt format for this model.
## Limitations and Bias

While efforts have been made to clean the training data, the potential for biases and harmful content remains, as with any large language model. Users should exercise caution and discretion when utilizing the model, especially in applications that might amplify existing biases or expose users to sensitive content. The model is not recommended for scenarios requiring strict content moderation or for users without the ability to filter or assess the model's outputs critically.

## Evaluation

Performance degradation has been observed when using the Inference API; thus, the model is not recommended for this usage. Instead, users should follow the recommended inference parameters provided in the base model card to optimize performance.

## Usage

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

from transformers import AutoTokenizer
import transformers
import torch

model = "M4-ai/TinyMistral-6x248M-Instruct"

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"])
```

## Disclaimer
The model has been fine-tuned on the hercules-v1.0 dataset, which contains content from sources with known issues of toxic examples. Users of M4-ai/TinyMistral-6x248M-Instruct must acknowledge and agree to the following:

- The dataset may include "toxic"/"harmful" content, profanity, and sensitive material.
- The content does not necessarily reflect the beliefs or opinions of the developers.
- Users must comply with local laws regarding free speech and content use.
- Users assume full responsibility for the download and utilization of the dataset and model, indemnifying the developers from all liabilities.

## Contributions

Thanks to @jtatman, @aloobun, @Felladrin, and @Locutusque for their contributions to this model.
{"language": ["en"], "license": "apache-2.0", "tags": ["moe"], "datasets": ["Locutusque/hercules-v1.0"], "base_model": "M4-ai/TinyMistral-6x248M", "inference": {"parameters": {"do_sample": true, "temperature": 0.2, "top_p": 0.14, "top_k": 12, "max_new_tokens": 250, "repetition_penalty": 1.1}}, "widget": [{"text": "<|im_start|>user\nWrite me a Python program that calculates the factorial of n. <|im_end|>\n<|im_start|>assistant\n"}, {"text": "An emerging clinical approach to treat substance abuse disorders involves a form of cognitive-behavioral therapy whereby addicts learn to reduce their reactivity to drug-paired stimuli through cue-exposure or extinction training. It is, however,"}, {"text": "<|im_start|>user\nHow do I say hello in Spanish? <|im_end|>\n<|im_start|>assistant\n"}]}
transformers safetensors mixtral text-generation moe en dataset:Locutusque/hercules-v1.0 base_model:M4-ai/TinyMistral-6x248M license:apache-2.0 autotrain_compatible endpoints_compatible text-generation-inference region:us