|
--- |
|
license: apache-2.0 |
|
datasets: |
|
- abacusai/SystemChat-1.1 |
|
language: |
|
- en |
|
library_name: transformers |
|
tags: |
|
- llama-factory |
|
- unsloth |
|
--- |
|
# h2o-danube2 with ChatML template |
|
|
|
This is a [BAdam](https://arxiv.org/abs/2404.02827 "BAdam: A Memory Efficient Full Parameter Optimization Method for Large Language Models") and [LoRA+](https://arxiv.org/abs/2402.12354 "LoRA+: Efficient Low Rank Adaptation of Large Models") fine-tuned danube2 base model. It uses the ChatML template and was trained on the [SystemChat-1.1](https://huggingface.co/datasets/abacusai/SystemChat-1.1) from [Abacus.AI](https://huggingface.co/abacusai). |
|
|
|
## Quants |
|
|
|
Thank you [mradermacher](https://huggingface.co/mradermacher)! |
|
|
|
- [mradermacher/danube2-1.8b-SystemChat-1.1-GGUF](https://huggingface.co/mradermacher/danube2-1.8b-SystemChat-1.1-GGUF) |
|
|
|
## Template |
|
|
|
```jinja |
|
<|im_start|>system |
|
{{system}}<|im_end|> |
|
<|im_start|>user |
|
{{instruction}}<|im_end|> |
|
<|im_start|>assistant |
|
{{response}}<|im_end|> |
|
``` |
|
|
|
## BAdam |
|
|
|
```yaml |
|
### model |
|
model_name_or_path: danube2-base-chatml |
|
|
|
### method |
|
stage: sft |
|
do_train: true |
|
finetuning_type: full |
|
use_badam: true |
|
badam_switch_mode: descending |
|
badam_switch_interval: 50 |
|
badam_start_block: 22 |
|
badam_mask_mode: scatter |
|
badam_verbose: 1 |
|
seed: 314 |
|
|
|
### dataset |
|
dataset: systemchat11 |
|
template: hermes_chatml |
|
cutoff_len: 8192 |
|
overwrite_cache: false |
|
preprocessing_num_workers: 12 |
|
|
|
### output |
|
output_dir: systemchat11-chatml-badam |
|
logging_steps: 5 |
|
save_steps: 1 |
|
save_strategy: epoch |
|
plot_loss: true |
|
overwrite_output_dir: false |
|
|
|
### train |
|
per_device_train_batch_size: 2 |
|
gradient_accumulation_steps: 8 |
|
learning_rate: 0.00002 |
|
num_train_epochs: 3 |
|
lr_scheduler_type: cosine |
|
warmup_ratio: 0.01 |
|
bf16: true |
|
flash_attn: fa2 |
|
|
|
### eval |
|
val_size: 0.01 |
|
per_device_eval_batch_size: 1 |
|
eval_strategy: steps |
|
eval_steps: 1000 |
|
|
|
``` |
|
|
|
### BAdam Training results |
|
|
|
| Training Loss | Epoch | Step | Validation Loss | |
|
|:-------------:|:------:|:----:|:---------------:| |
|
| 1.0062 | 0.8324 | 1000 | 0.9837 | |
|
| 0.8484 | 1.6648 | 2000 | 0.9388 | |
|
| 0.7834 | 2.4971 | 3000 | 0.9309 | |
|
|
|
|
|
## QLoRA+ |
|
|
|
```yaml |
|
### model |
|
model_name_or_path: systemchat11-chatml-badam |
|
|
|
### method |
|
stage: sft |
|
do_train: true |
|
finetuning_type: lora |
|
lora_target: all |
|
loraplus_lr_ratio: 16.0 |
|
lora_rank: 8 |
|
lora_alpha: 16 |
|
use_unsloth: true |
|
quantization_bit: 4 |
|
upcast_layernorm: true |
|
seed: 31415 |
|
|
|
### dataset |
|
dataset: systemchat11 |
|
template: hermes_chatml |
|
cutoff_len: 8192 |
|
overwrite_cache: false |
|
preprocessing_num_workers: 12 |
|
|
|
### output |
|
output_dir: systemchat11-chatml-badam/loraplus |
|
logging_steps: 1 |
|
save_steps: 1 |
|
save_strategy: epoch |
|
plot_loss: true |
|
overwrite_output_dir: false |
|
|
|
### train |
|
per_device_train_batch_size: 4 |
|
gradient_accumulation_steps: 4 |
|
learning_rate: 0.0001 |
|
num_train_epochs: 2.0 |
|
lr_scheduler_type: cosine |
|
warmup_ratio: 0.01 |
|
bf16: true |
|
flash_attn: fa2 |
|
|
|
### eval |
|
val_size: 0.02 |
|
per_device_eval_batch_size: 1 |
|
eval_strategy: steps |
|
eval_steps: 500 |
|
``` |
|
|
|
### QLoRA+ Training results |
|
|
|
| Training Loss | Epoch | Step | Validation Loss | |
|
|:-------------:|:------:|:----:|:---------------:| |
|
| 0.8591 | 0.4204 | 500 | 0.8457 | |
|
| 0.9098 | 0.8409 | 1000 | 0.8251 | |
|
| 0.735 | 1.2613 | 1500 | 0.8304 | |
|
| 0.6811 | 1.6817 | 2000 | 0.8252 | |
|
|
|
|