File size: 1,710 Bytes
0df50e4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
---
tags:
- merge
- mergekit
- lazymergekit
- codellama/CodeLlama-7b-Instruct-hf
base_model:
- codellama/CodeLlama-7b-Instruct-hf
---

# CodeLlemur-2B-Instruct

CodeLlemur-2B-Instruct is a merge of the following models using [LazyMergekit](https://colab.research.google.com/drive/1obulZ1ROXHjYLn6PPZJwRR6GzgQogxxb?usp=sharing):
* [codellama/CodeLlama-7b-Instruct-hf](https://huggingface.co/codellama/CodeLlama-7b-Instruct-hf)

## 🧩 Configuration

```yaml
dtype: bfloat16
merge_method: linear
slices:
 - sources:
      - layer_range: [0, 32] # Assuming the first half of the model is more general and can be reduced more
        model: codellama/CodeLlama-7b-Instruct-hf
        parameters:
          weight: 0.25 # Reduce the weight of the first half to make room for the second half
      - layer_range: [0, 32] # Assuming the second half of the model is more specialized and can be reduced less
        model: codellama/CodeLlama-7b-Instruct-hf
        parameters:
          weight: 0.25 # Maintain the weight of the second half

```

## 💻 Usage

```python
!pip install -qU transformers accelerate

from transformers import AutoTokenizer
import transformers
import torch

model = "JoPmt/CodeLlemur-2B-Instruct"
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",
)

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