File size: 3,364 Bytes
e45f1b2
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
d87d9ba
 
e45f1b2
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
771dd70
e45f1b2
6e691b3
 
4ee2327
 
 
 
e45f1b2
 
 
4ee2327
 
e45f1b2
 
 
 
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
64
65
66
67
68
69
---
base_model: neuralmagic/Llama-2-7b-pruned50-retrained
inference: true
model_type: llama
pipeline_tag: text-generation
datasets:
  - garage-bAInd/Open-Platypus
  - Open-Orca/OpenOrca
  - cognitivecomputations/dolphin
tags:
- sparse
- instruct
---

# Llama-2-7b-pruned50-retrained-instruct

This repo contains a [50% sparse Llama 2 7B](https://huggingface.co/neuralmagic/Llama-2-7b-pruned50-retrained) finetuned for instruction-following tasks using a blend of the Platypus + Open Orca + Dolphin datasets.

Official model weights from [Enabling High-Sparsity Foundational Llama Models with Efficient Pretraining and Deployment](https://arxiv.org/abs/2405.03594).

**Authors**: Neural Magic, Cerebras

## Usage

Below we share some code snippets on how to get quickly started with running the model.

### Sparse Transfer

By leveraging a pre-sparsified model's structure, you can efficiently fine-tune on new data, leading to reduced hyperparameter tuning, training times, and computational costs. Learn about this process [here](https://neuralmagic.github.io/docs-v2/get-started/transfer).

### Running the model

This model may be run with the transformers library. For accelerated inference with sparsity, deploy with [nm-vllm](https://github.com/neuralmagic/nm-vllm) or [deepsparse](https://github.com/neuralmagic/deepsparse).

```python
# pip install transformers accelerate
from transformers import AutoTokenizer, AutoModelForCausalLM

tokenizer = AutoTokenizer.from_pretrained("Llama-2-7b-pruned50-retrained-instruct")
model = AutoModelForCausalLM.from_pretrained("Llama-2-7b-pruned50-retrained-instruct", device_map="auto")

input_text = "Write a recipe for banana bread:\n"
input_ids = tokenizer(input_text, return_tensors="pt").to("cuda")

outputs = model.generate(**input_ids)
print(tokenizer.decode(outputs[0]))
```

## Evaluation Benchmark Results

Model evaluation metrics and results.

| Benchmark                                      | Metric        | Llama-2-7b-instruct  | Llama-2-7b-pruned50-retrained-instruct |
|------------------------------------------------|---------------|-------------|-------------------------------|
| [MMLU](https://arxiv.org/abs/2009.03300)       | 5-shot        | 48.60%  | 45.10% |
| [HellaSwag](https://arxiv.org/abs/1905.07830)  | 10-shot       | 79.45%  | 78.86% |
| [WinoGrande](https://arxiv.org/abs/1907.10641) | 5-shot        | 75.69%  | 72.61% |
| [ARC-c](https://arxiv.org/abs/1911.01547)      | 25-shot       | 53.92%  | 50.77% |
| [TruthfulQA](https://arxiv.org/abs/2109.07958) | 0-shot        | 43.63%  | 44.40% |
| [GSM8K](https://arxiv.org/abs/2110.14168)      | 5-shot        | 15.92%  | 16.38% |

## Model Training Details

This model was obtained by sparse-tranfer of the sparse foundational model [Llama-2-7b-pruned50-retrained](https://huggingface.co/neuralmagic/Llama-2-7b-pruned70-retrained) on a blend of [Open Platypus](https://huggingface.co/datasets/garage-bAInd/Open-Platypus), 10% [Open Orca](https://huggingface.co/datasets/Open-Orca/OpenOrca) and 10% [Dolphin](https://huggingface.co/datasets/cognitivecomputations/dolphin) datasets.
Training was perfomerd for 2 epochs.

## Help

For further support, and discussions on these models and AI in general, join [Neural Magic's Slack Community](https://join.slack.com/t/discuss-neuralmagic/shared_invite/zt-q1a1cnvo-YBoICSIw3L1dmQpjBeDurQ)