File size: 2,276 Bytes
64df610
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
386c7b0
 
 
 
 
 
 
 
 
 
 
 
 
b4862e9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
---
license: apache-2.0
tags:
- mergekit
- lazymergekit
- akameswa/mistral-7b-instruct-javascript-16bit
- akameswa/mistral-7b-instruct-java-16bit
- akameswa/mistral-7b-instruct-cpp-16bit
- akameswa/mistral-7b-instruct-python-16bit
---

# mixtral-4x7b-instruct-code

mixtral-4x7b-instruct-code is a MoE of the following models using [mergekit](https://github.com/cg123/mergekit):
* [akameswa/mistral-7b-instruct-javascript-16bit](https://huggingface.co/akameswa/mistral-7b-instruct-javascript-16bit)
* [akameswa/mistral-7b-instruct-java-16bit](https://huggingface.co/akameswa/mistral-7b-instruct-java-16bit)
* [akameswa/mistral-7b-instruct-cpp-16bit](https://huggingface.co/akameswa/mistral-7b-instruct-cpp-16bit)
* [akameswa/mistral-7b-instruct-python-16bit](https://huggingface.co/akameswa/mistral-7b-instruct-python-16bit)

## 🧩 Configuration

```yaml
base_model: akameswa/mistral-7b-instruct-v0.2-bnb-16bit
gate_mode: hidden 
dtype: float16 
experts:
  - source_model: akameswa/mistral-7b-instruct-javascript-16bit
    positive_prompts: ["You are helpful a coding assistant good at javascript"]
  - source_model: akameswa/mistral-7b-instruct-java-16bit
    positive_prompts: ["You are helpful a coding assistant good at java"]
  - source_model: akameswa/mistral-7b-instruct-cpp-16bit
    positive_prompts: ["You are helpful a coding assistant good at cpp"]
  - source_model: akameswa/mistral-7b-instruct-python-16bit
    positive_prompts: ["You are helpful a coding assistant good at python"]
```

## Inference
```python
from transformers import AutoTokenizer
import transformers
import torch

model = "akameswa/mixtral-4x7b-instruct-code-trial"
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",
    model_kwargs={"load_in_4bit": True},
)

outputs = pipeline(prompt, max_new_tokens=256, do_sample=True, temperature=0.7, top_k=50, top_p=0.95)
```

* [Link to inference notebook](https://github.com/akameswa/CodeGenerationMoE/blob/main/code/inference_moe.ipynb)