peft tensorboard safetensors gemma text-generation axolotl generated_from_trainer 7b alpaca lora qlora openhermes transformers dataset:teknium/openhermes base_model:google/gemma-7b license:apache-2.0 region:us
---
license: apache-2.0
tags:
- axolotl
- generated_from_trainer
- gemma
- 7b
- alpaca
- peft
- lora
- qlora
- openhermes
- transformers
base_model: google/gemma-7b
model-index:
- name: gemma-7b-Open-Hermes-v0.1
  results: []
datasets:
- teknium/openhermes
pipeline_tag: text-generation
---

<!-- This model card has been generated automatically according to the information the Trainer had access to. You
should probably proofread and complete it, then remove this comment. -->

[<img src="https://raw.githubusercontent.com/OpenAccess-AI-Collective/axolotl/main/image/axolotl-badge-web.png" alt="Built with Axolotl" width="200" height="32"/>](https://github.com/OpenAccess-AI-Collective/axolotl)
<details><summary>See axolotl config</summary>

axolotl version: `0.4.0`
```yaml
# use google/gemma-7b if you have access
#base_model: mhenrichsen/gemma-7b
base_model: google/gemma-7b
model_type: AutoModelForCausalLM
tokenizer_type: AutoTokenizer

hub_model_id: MaziyarPanahi/gemma-7b-Open-Hermes-v0.1
hf_use_auth_token: true

load_in_8bit: false
load_in_4bit: true
strict: false

# huggingface repo
datasets:
  - path: teknium/openhermes
    type: alpaca
val_set_size: 0.1
output_dir: ./qlora-gemma-7b-openhermes

adapter: qlora
lora_r: 32
lora_alpha: 16
lora_dropout: 0.05
lora_target_linear: true


sequence_len: 4096
sample_packing: false
pad_to_sequence_len: false

wandb_project:
wandb_entity:
wandb_watch:
wandb_name:
wandb_log_model:


gradient_accumulation_steps: 3
micro_batch_size: 2
num_epochs: 1
optimizer: adamw_bnb_8bit
lr_scheduler: cosine
learning_rate: 0.0002

train_on_inputs: false
group_by_length: false
bf16: auto
fp16:
tf32: false

gradient_checkpointing: true
early_stopping_patience:
resume_from_checkpoint:
local_rank:
logging_steps: 1
xformers_attention:
flash_attention: true

warmup_ratio: 0.1
evals_per_epoch: 4
eval_table_size:
eval_max_new_tokens: 128
saves_per_epoch: 1
debug:
deepspeed:
weight_decay: 0.0
fsdp:
fsdp_config:
special_tokens:
```

</details><br>

# gemma-7b-Open-Hermes-v0.1

This model is a fine-tuned version of [google/gemma-7b](https://huggingface.co/google/gemma-7b) on the None dataset.
It achieves the following results on the evaluation set:
- Loss: 1.4456

## How to use

**PEFT**
```python
from peft import PeftModel, PeftConfig
from transformers import AutoModelForCausalLM

model_id = "MaziyarPanahi/gemma-7b-Open-Hermes-v0.1"

config = PeftConfig.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained("google/gemma-7b")
model = PeftModel.from_pretrained(model, model_id)
```

**Transformers**
```python
# Use a pipeline as a high-level helper
from transformers import pipeline

model_id = "MaziyarPanahi/gemma-7b-Open-Hermes-v0.1"

pipe = pipeline("text-generation", model=model_id)

# Load model directly
from transformers import AutoTokenizer, AutoModelForCausalLM

tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id)
```

## Model description

More information needed

## Intended uses & limitations

More information needed

## Training and evaluation data

More information needed

## Training procedure

### Training hyperparameters

The following hyperparameters were used during training:
- learning_rate: 0.0002
- train_batch_size: 2
- eval_batch_size: 2
- seed: 42
- distributed_type: multi-GPU
- num_devices: 4
- gradient_accumulation_steps: 3
- total_train_batch_size: 24
- total_eval_batch_size: 8
- optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-08
- lr_scheduler_type: cosine
- lr_scheduler_warmup_steps: 227
- num_epochs: 1

### Training results

| Training Loss | Epoch | Step | Validation Loss |
|:-------------:|:-----:|:----:|:---------------:|
| 1.3258        | 0.0   | 1    | 1.9697          |
| 0.63          | 0.25  | 2277 | 1.5227          |
| 0.642         | 0.5   | 4554 | 1.4835          |
| 0.7721        | 0.75  | 6831 | 1.4456          |


### Framework versions

- PEFT 0.8.2
- Transformers 4.39.0.dev0
- Pytorch 2.2.0+cu121
- Datasets 2.17.0
- Tokenizers 0.15.0