Suparious's picture
Updated and moved existing to merged_models base_model tag in README.md
a865dd8 verified
---
base_model: hydra-project/ChatHercules-2.5-Mistral-7B
inference: false
language:
- en
library_name: transformers
license: apache-2.0
merged_models:
- Locutusque/Hercules-2.5-Mistral-7B
- openchat/openchat-3.5-0106
model-index:
- name: ChatHercules-2.5-Mistral-7B
results:
- dataset:
args:
num_few_shot: 25
config: ARC-Challenge
name: AI2 Reasoning Challenge (25-Shot)
split: test
type: ai2_arc
metrics:
- name: normalized accuracy
type: acc_norm
value: 65.1
source:
name: Open LLM Leaderboard
url: https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard?query=hydra-project/ChatHercules-2.5-Mistral-7B
task:
name: Text Generation
type: text-generation
- dataset:
args:
num_few_shot: 10
name: HellaSwag (10-Shot)
split: validation
type: hellaswag
metrics:
- name: normalized accuracy
type: acc_norm
value: 84.61
source:
name: Open LLM Leaderboard
url: https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard?query=hydra-project/ChatHercules-2.5-Mistral-7B
task:
name: Text Generation
type: text-generation
- dataset:
args:
num_few_shot: 5
config: all
name: MMLU (5-Shot)
split: test
type: cais/mmlu
metrics:
- name: accuracy
type: acc
value: 65.35
source:
name: Open LLM Leaderboard
url: https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard?query=hydra-project/ChatHercules-2.5-Mistral-7B
task:
name: Text Generation
type: text-generation
- dataset:
args:
num_few_shot: 0
config: multiple_choice
name: TruthfulQA (0-shot)
split: validation
type: truthful_qa
metrics:
- type: mc2
value: 47.52
source:
name: Open LLM Leaderboard
url: https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard?query=hydra-project/ChatHercules-2.5-Mistral-7B
task:
name: Text Generation
type: text-generation
- dataset:
args:
num_few_shot: 5
config: winogrande_xl
name: Winogrande (5-shot)
split: validation
type: winogrande
metrics:
- name: accuracy
type: acc
value: 81.85
source:
name: Open LLM Leaderboard
url: https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard?query=hydra-project/ChatHercules-2.5-Mistral-7B
task:
name: Text Generation
type: text-generation
- dataset:
args:
num_few_shot: 5
config: main
name: GSM8k (5-shot)
split: test
type: gsm8k
metrics:
- name: accuracy
type: acc
value: 64.97
source:
name: Open LLM Leaderboard
url: https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard?query=hydra-project/ChatHercules-2.5-Mistral-7B
task:
name: Text Generation
type: text-generation
model_creator: hydra-project
model_name: ChatHercules-2.5-Mistral-7B
model_type: mistral
pipeline_tag: text-generation
prompt_template: '<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant
'
quantized_by: Suparious
tags:
- merge
- mergekit
- lazymergekit
- Locutusque/Hercules-2.5-Mistral-7B
- openchat/openchat-3.5-0106
- quantized
- 4-bit
- AWQ
- transformers
- pytorch
- mistral
- text-generation
- conversational
- license:apache-2.0
- autotrain_compatible
- endpoints_compatible
- text-generation-inference
- chatml
---
# ChatHercules-2.5-Mistral-7B
- Model creator: [hydra-project](https://huggingface.co/hydra-project)
- Original model: [ChatHercules-2.5-Mistral-7B](https://huggingface.co/hydra-project/ChatHercules-2.5-Mistral-7B)
![image/png](ChatHercules.png)
## Model Summary
ChatHercules-2.5-Mistral-7B is a merge of the following models using [LazyMergekit](https://colab.research.google.com/drive/1obulZ1ROXHjYLn6PPZJwRR6GzgQogxxb?usp=sharing):
* [Locutusque/Hercules-2.5-Mistral-7B](https://huggingface.co/Locutusque/Hercules-2.5-Mistral-7B)
* [openchat/openchat-3.5-0106](https://huggingface.co/openchat/openchat-3.5-0106)
```yaml
slices:
- sources:
- model: Locutusque/Hercules-2.5-Mistral-7B
layer_range: [0, 32]
- model: openchat/openchat-3.5-0106
layer_range: [0, 32]
merge_method: slerp
base_model: Locutusque/Hercules-2.5-Mistral-7B
parameters:
t:
- filter: self_attn
value: [0, 0.5, 0.3, 0.7, 1]
- filter: mlp
value: [1, 0.5, 0.7, 0.3, 0]
- value: 0.5
dtype: bfloat16
```
## How to use
### Install the necessary packages
```bash
pip install --upgrade autoawq autoawq-kernels
```
### Example Python code
```python
from awq import AutoAWQForCausalLM
from transformers import AutoTokenizer, TextStreamer
model_path = "solidrust/ChatHercules-2.5-Mistral-7B-AWQ"
system_message = "You are Hercules, incarnated as a powerful AI."
# Load model
model = AutoAWQForCausalLM.from_quantized(model_path,
fuse_layers=True)
tokenizer = AutoTokenizer.from_pretrained(model_path,
trust_remote_code=True)
streamer = TextStreamer(tokenizer,
skip_prompt=True,
skip_special_tokens=True)
# Convert prompt to tokens
prompt_template = """\
<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant"""
prompt = "You're standing on the surface of the Earth. "\
"You walk one mile south, one mile west and one mile north. "\
"You end up exactly where you started. Where are you?"
tokens = tokenizer(prompt_template.format(system_message=system_message,prompt=prompt),
return_tensors='pt').input_ids.cuda()
# Generate output
generation_output = model.generate(tokens,
streamer=streamer,
max_new_tokens=512)
```
### About AWQ
AWQ is an efficient, accurate and blazing-fast low-bit weight quantization method, currently supporting 4-bit quantization. Compared to GPTQ, it offers faster Transformers-based inference with equivalent or better quality compared to the most commonly used GPTQ settings.
AWQ models are currently supported on Linux and Windows, with NVidia GPUs only. macOS users: please use GGUF models instead.
It is supported by:
- [Text Generation Webui](https://github.com/oobabooga/text-generation-webui) - using Loader: AutoAWQ
- [vLLM](https://github.com/vllm-project/vllm) - version 0.2.2 or later for support for all model types.
- [Hugging Face Text Generation Inference (TGI)](https://github.com/huggingface/text-generation-inference)
- [Transformers](https://huggingface.co/docs/transformers) version 4.35.0 and later, from any code or client that supports Transformers
- [AutoAWQ](https://github.com/casper-hansen/AutoAWQ) - for use from Python code
## Prompt template: ChatML
```plaintext
<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant
```