|
--- |
|
base_model: neuralmagic/Llama-2-7b-pruned70-retrained |
|
inference: true |
|
model_type: llama |
|
pipeline_tag: text-generation |
|
datasets: |
|
- cerebras/SlimPajama-627B |
|
- theblackcat102/evol-codealpaca-v1 |
|
tags: |
|
- sparse |
|
- code |
|
--- |
|
|
|
# Llama-2-7b-pruned70-retrained-evolcodealpaca |
|
|
|
This repo contains a [70% sparse Llama 2 7B](https://huggingface.co/neuralmagic/Llama-2-7b-pruned70-retrained) finetuned for code generation tasks using the [Evolved CodeAlpaca](https://huggingface.co/datasets/theblackcat102/evol-codealpaca-v1) dataset. |
|
|
|
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("neuralmagic/Llama-2-7b-pruned70-retrained-evolcodealpaca") |
|
model = AutoModelForCausalLM.from_pretrained("neuralmagic/Llama-2-7b-pruned70-retrained-evolcodealpaca", device_map="auto") |
|
|
|
input_text = "def fibonacci(n):\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-evolcodealpaca | Llama-2-7b-pruned70-retrained-evolcodealpaca | |
|
|------------------------------------------------|---------------|-------------|-------------------------------| |
|
| [HumanEval](https://arxiv.org/abs/2107.03374) | pass@1 | 32.03 | 36.3 | |
|
|
|
## Model Training Details |
|
|
|
This model was obtained by gradual sparse-transfer of the sparse foundational model [Llama-2-7b-pruned50-retrained](https://huggingface.co/neuralmagic/Llama-2-7b-pruned50-retrained) on 60% of the [evolcodealpaca](https://huggingface.co/datasets/theblackcat102/evol-codealpaca-v1) dataset. |
|
The 50% sparse foundational model was finetuned for 2 epochs and then pruned to 70% sparsity using [SparseGPT](https://arxiv.org/abs/2301.00774). Then, the model was finetuned for 1 more epoch with the [SquareHead](https://arxiv.org/abs/2310.06927) knowledge distillation with [Llama-2-7b-evolcodealpaca](https://huggingface.co/neuralmagic/Llama-2-7b-evolcodealpaca) as teacher. |
|
|
|
|
|
## 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) |
|
|