初始化项目,由ModelHub XC社区提供模型
Model: RedHatAI/Nous-Hermes-2-SOLAR-10.7B-pruned2.4 Source: Original Platform
This commit is contained in:
35
.gitattributes
vendored
Normal file
35
.gitattributes
vendored
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.arrow filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bin filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ckpt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ftz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.h5 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.joblib filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.mlmodel filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.model filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.npy filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.npz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.onnx filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ot filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.parquet filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pb filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pickle filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pkl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pth filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
||||||
|
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tflite filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.wasm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
||||||
86
README.md
Normal file
86
README.md
Normal file
@@ -0,0 +1,86 @@
|
|||||||
|
---
|
||||||
|
base_model: NousResearch/Nous-Hermes-2-SOLAR-10.7B
|
||||||
|
inference: True
|
||||||
|
model_type: Llama
|
||||||
|
tags:
|
||||||
|
- nm-vllm
|
||||||
|
- sparse
|
||||||
|
---
|
||||||
|
## Nous-Hermes-2-SOLAR-10.7B-pruned2.4
|
||||||
|
This repo contains model files for [Nous-Hermes-2-SOLAR-10.7B](https://huggingface.co/NousResearch/Nous-Hermes-2-SOLAR-10.7B) optimized for [NM-vLLM](https://github.com/neuralmagic/nm-vllm), a high-throughput serving engine for compressed LLMs.
|
||||||
|
|
||||||
|
This model was pruned with [SparseGPT](https://arxiv.org/abs/2301.00774), using [SparseML](https://github.com/neuralmagic/sparseml).
|
||||||
|
|
||||||
|
## Inference
|
||||||
|
Install [NM-vLLM](https://github.com/neuralmagic/nm-vllm) for fast inference and low memory-usage:
|
||||||
|
```bash
|
||||||
|
pip install nm-vllm[sparse]
|
||||||
|
```
|
||||||
|
Run in a Python pipeline for local inference:
|
||||||
|
```python
|
||||||
|
from vllm import LLM, SamplingParams
|
||||||
|
|
||||||
|
model = LLM("nm-testing/Nous-Hermes-2-SOLAR-10.7B-pruned2.4", sparsity="semi_structured_sparse_w16a16")
|
||||||
|
prompt = "How to make banana bread?"
|
||||||
|
formatted_prompt = f"<|im_start|>User:{prompt}\n<|im_start|>assistant:\n"
|
||||||
|
|
||||||
|
sampling_params = SamplingParams(max_tokens=100)
|
||||||
|
outputs = model.generate(formatted_prompt, sampling_params=sampling_params)
|
||||||
|
print(outputs[0].outputs[0].text)
|
||||||
|
"""
|
||||||
|
To make banana bread, you will need to follow these steps:
|
||||||
|
|
||||||
|
1. Gather the ingredients needed for the recipe: flour, sugar, eggs, baking powder, and banana bread.
|
||||||
|
2. Preparing the bread by kneading the flour, butter, and sugar in a bowl until it becomes soft.
|
||||||
|
3. Then, knead the bread with the flour eggs and sugar then bake them in a microwave oven.
|
||||||
|
4. Once done baking a
|
||||||
|
"""
|
||||||
|
```
|
||||||
|
|
||||||
|
## Prompt template
|
||||||
|
|
||||||
|
```
|
||||||
|
### User:
|
||||||
|
{prompt}
|
||||||
|
### Assistant:"
|
||||||
|
```
|
||||||
|
|
||||||
|
## Sparsification
|
||||||
|
For details on how this model was sparsified, see the `recipe.yaml` in this repo and follow the instructions below.
|
||||||
|
|
||||||
|
Install [SparseML](https://github.com/neuralmagic/sparseml):
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/neuralmagic/sparseml
|
||||||
|
pip install -e "sparseml[transformers]"
|
||||||
|
```
|
||||||
|
|
||||||
|
Replace the recipe as you like and run this one-shot compression script to apply SparseGPT:
|
||||||
|
```python
|
||||||
|
import sparseml.transformers
|
||||||
|
|
||||||
|
original_model_name = "NousResearch/Nous-Hermes-2-SOLAR-10.7B"
|
||||||
|
calibration_dataset = "open_platypus"
|
||||||
|
output_directory = "output/"
|
||||||
|
|
||||||
|
recipe = """
|
||||||
|
test_stage:
|
||||||
|
obcq_modifiers:
|
||||||
|
SparseGPTModifier:
|
||||||
|
sparsity: 0.5
|
||||||
|
sequential_update: true
|
||||||
|
mask_structure: '2:4'
|
||||||
|
targets: ['re:model.layers.\d*$']
|
||||||
|
"""
|
||||||
|
|
||||||
|
# Apply SparseGPT to the model
|
||||||
|
sparseml.transformers.oneshot(
|
||||||
|
model=original_model_name,
|
||||||
|
dataset=calibration_dataset,
|
||||||
|
recipe=recipe,
|
||||||
|
output_dir=output_directory,
|
||||||
|
)
|
||||||
|
```
|
||||||
|
|
||||||
|
## Slack
|
||||||
|
|
||||||
|
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)
|
||||||
4
added_tokens.json
Normal file
4
added_tokens.json
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"<|im_end|>": 32000,
|
||||||
|
"<|im_start|>": 32001
|
||||||
|
}
|
||||||
28
config.json
Normal file
28
config.json
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
{
|
||||||
|
"_name_or_path": "NousResearch/Nous-Hermes-2-SOLAR-10.7B",
|
||||||
|
"architectures": [
|
||||||
|
"LlamaForCausalLM"
|
||||||
|
],
|
||||||
|
"attention_bias": false,
|
||||||
|
"attention_dropout": 0.0,
|
||||||
|
"bos_token_id": 1,
|
||||||
|
"eos_token_id": 32000,
|
||||||
|
"hidden_act": "silu",
|
||||||
|
"hidden_size": 4096,
|
||||||
|
"initializer_range": 0.02,
|
||||||
|
"intermediate_size": 14336,
|
||||||
|
"max_position_embeddings": 4096,
|
||||||
|
"model_type": "llama",
|
||||||
|
"num_attention_heads": 32,
|
||||||
|
"num_hidden_layers": 48,
|
||||||
|
"num_key_value_heads": 8,
|
||||||
|
"pretraining_tp": 1,
|
||||||
|
"rms_norm_eps": 1e-05,
|
||||||
|
"rope_scaling": null,
|
||||||
|
"rope_theta": 10000.0,
|
||||||
|
"tie_word_embeddings": false,
|
||||||
|
"torch_dtype": "bfloat16",
|
||||||
|
"transformers_version": "1.7.0.20240130",
|
||||||
|
"use_cache": false,
|
||||||
|
"vocab_size": 32002
|
||||||
|
}
|
||||||
1
configuration.json
Normal file
1
configuration.json
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"framework": "pytorch", "task": "text-generation", "allow_remote": true}
|
||||||
7
generation_config.json
Normal file
7
generation_config.json
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"_from_model_config": true,
|
||||||
|
"bos_token_id": 1,
|
||||||
|
"eos_token_id": 2,
|
||||||
|
"transformers_version": "1.7.0.20240130",
|
||||||
|
"use_cache": false
|
||||||
|
}
|
||||||
3
pytorch_model-00001-of-00003.bin
Normal file
3
pytorch_model-00001-of-00003.bin
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:0ed2cb596fad74ccb18aa636354690bdd2992d478e7bf068d059ab5b238ebd11
|
||||||
|
size 9943047731
|
||||||
3
pytorch_model-00002-of-00003.bin
Normal file
3
pytorch_model-00002-of-00003.bin
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:6d76fd6feb9ce88e12f8031e01503a3570c61a37472aee40b572c9816ebf0f40
|
||||||
|
size 9999672004
|
||||||
3
pytorch_model-00003-of-00003.bin
Normal file
3
pytorch_model-00003-of-00003.bin
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:071f3f746b784749b751dd5f17363f481fad153e7ff12f58316d0307564c3167
|
||||||
|
size 1520518398
|
||||||
3
pytorch_model.bin.index.json
Normal file
3
pytorch_model.bin.index.json
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:4a69d65b1746107fddf021a005d3f361aa41519fba491ce9dc6f1325bceeb63b
|
||||||
|
size 35838
|
||||||
10
recipe.yaml
Normal file
10
recipe.yaml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
test_stage:
|
||||||
|
obcq_modifiers:
|
||||||
|
SparseGPTModifier:
|
||||||
|
sparsity: 0.5
|
||||||
|
block_size: 128
|
||||||
|
sequential_update: true
|
||||||
|
quantize: false
|
||||||
|
percdamp: 0.01
|
||||||
|
mask_structure: '2:4'
|
||||||
|
targets: ['re:model.layers.\d*$']
|
||||||
30
special_tokens_map.json
Normal file
30
special_tokens_map.json
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
"bos_token": {
|
||||||
|
"content": "<s>",
|
||||||
|
"lstrip": false,
|
||||||
|
"normalized": false,
|
||||||
|
"rstrip": false,
|
||||||
|
"single_word": false
|
||||||
|
},
|
||||||
|
"eos_token": {
|
||||||
|
"content": "<|im_end|>",
|
||||||
|
"lstrip": false,
|
||||||
|
"normalized": false,
|
||||||
|
"rstrip": false,
|
||||||
|
"single_word": false
|
||||||
|
},
|
||||||
|
"pad_token": {
|
||||||
|
"content": "</s>",
|
||||||
|
"lstrip": false,
|
||||||
|
"normalized": false,
|
||||||
|
"rstrip": false,
|
||||||
|
"single_word": false
|
||||||
|
},
|
||||||
|
"unk_token": {
|
||||||
|
"content": "<unk>",
|
||||||
|
"lstrip": false,
|
||||||
|
"normalized": false,
|
||||||
|
"rstrip": false,
|
||||||
|
"single_word": false
|
||||||
|
}
|
||||||
|
}
|
||||||
3
tokenizer.json
Normal file
3
tokenizer.json
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:6af1053883a8321feeb320cf42c61eb4ced06511f6a2546d9a879e0c0def91e6
|
||||||
|
size 1795678
|
||||||
BIN
tokenizer.model
(Stored with Git LFS)
Normal file
BIN
tokenizer.model
(Stored with Git LFS)
Normal file
Binary file not shown.
3
tokenizer_config.json
Normal file
3
tokenizer_config.json
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:052d53db68a57524167aadb25ffeca49f19eed37fbe3e18e24aba94f53a3b762
|
||||||
|
size 1601
|
||||||
Reference in New Issue
Block a user