Downloads · 30 days
2
5% of all-time downloads
RichardErkhov/h2oai_-_h2o-danube-1.8b-chat-8bits
h2oai_-_h2o-danube-1.8b-chat-8bits is a text generation model from RichardErkhov. Use it when you need the model to write or continue text. It is set up for transformers.
Downloads · 30 days
2
5% of all-time downloads
All-time downloads
42
Public
Parameters
1.8B
2 GB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors2 GB · 100%
How the weights are stored.
I81.7B · 91%
From the Hugging Face model README
Quantization made by Richard Erkhov.
h2o-danube-1.8b-chat - bnb 8bits
language:
h2o-danube-1.8b-chat is an chat fine-tuned model by H2O.ai with 1.8 billion parameters. For details, please refer to our Technical Report. We release three versions of this model:
| Model Name | Description |
|---|---|
| h2oai/h2o-danube-1.8b-base | Base model |
| h2oai/h2o-danube-1.8b-sft | SFT tuned |
| h2oai/h2o-danube-1.8b-chat | SFT + DPO tuned |
This model was trained using H2O LLM Studio.
We adjust the Llama 2 architecture for a total of around 1.8b parameters. We use the original Llama 2 tokenizer with a vocabulary size of 32,000 and train our model up to a context length of 16,384. We incorporate the sliding window attention from mistral with a size of 4,096.
The details of the model architecture are:
| Hyperparameter | Value |
|---|---|
| n_layers | 24 |
| n_heads | 32 |
| n_query_groups | 8 |
| n_embd | 2560 |
| vocab size | 32000 |
| sequence length | 16384 |
To use the model with the transformers library on a machine with GPUs, first make sure you have the transformers library installed.
pip install transformers==4.36.1
import torch
from transformers import pipeline
pipe = pipeline(
"text-generation",
model="h2oai/h2o-danube-1.8b-chat",
torch_dtype=torch.bfloat16,
device_map="auto",
)
# We use the HF Tokenizer chat template to format each message
# https://huggingface.co/docs/transformers/main/en/chat_templating
messages = [
{"role": "user", "content": "Why is drinking water so healthy?"},
]
prompt = pipe.tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True,
)
res = pipe(
prompt,
max_new_tokens=256,
)
print(res[0]["generated_text"])
# <|prompt|>Why is drinking water so healthy?</s><|answer|> Drinking water is healthy for several reasons: [...]
Commonsense, world-knowledge and reading comprehension tested in 0-shot:
| Benchmark | acc_n |
|---|---|
| ARC-easy | 67.51 |
| ARC-challenge | 39.25 |
| BoolQ | 77.89 |
| Hellaswag | 67.60 |
| OpenBookQA | 39.20 |
| PiQA | 76.71 |
| TriviaQA | 36.29 |
| Winogrande | 65.35 |
You can load the models using quantization by specifying load_in_8bit=True or load_in_4bit=True. Also, sharding on multiple GPUs is possible by setting device_map=auto.
MistralForCausalLM(
(model): MistralModel(
(embed_tokens): Embedding(32000, 2560, padding_idx=0)
(layers): ModuleList(
(0-23): 24 x MistralDecoderLayer(
(self_attn): MistralAttention(
(q_proj): Linear(in_features=2560, out_features=2560, bias=False)
(k_proj): Linear(in_features=2560, out_features=640, bias=False)
(v_proj): Linear(in_features=2560, out_features=640, bias=False)
(o_proj): Linear(in_features=2560, out_features=2560, bias=False)
(rotary_emb): MistralRotaryEmbedding()
)
(mlp): MistralMLP(
(gate_proj): Linear(in_features=2560, out_features=6912, bias=False)
(up_proj): Linear(in_features=2560, out_features=6912, bias=False)
(down_proj): Linear(in_features=6912, out_features=2560, bias=False)
(act_fn): SiLU()
)
(input_layernorm): MistralRMSNorm()
(post_attention_layernorm): MistralRMSNorm()
)
)
(norm): MistralRMSNorm()
)
(lm_head): Linear(in_features=2560, out_features=32000, bias=False)
)
This model was trained using H2O LLM Studio and with the configuration in cfg.yaml. Visit H2O LLM Studio to learn how to train your own large language models.
Please read this disclaimer carefully before using the large language model provided in this repository. Your use of the model signifies your agreement to the following terms and conditions.
By using the large language model provided in this repository, you agree to accept and comply with the terms and conditions outlined in this disclaimer. If you do not agree with any part of this disclaimer, you should refrain from using the model and any content generated by it.