Edit model card

This is the Instruction Fine Tuned version of Tiny Llama on @Teknium1's openhermes dataset.

"The TinyLlama project aims to pretrain a 1.1B Llama model on 3 trillion tokens. With some proper optimization, we can achieve this within a span of "just" 90 days using 16 A100-40G GPUs 🚀🚀. The training has started on 2023-09-01."

See axolotl config

axolotl version: 0.3.0

base_model: ./TinyLlama-1.1B-intermediate-step-1431k-3T

model_type: LlamaForCausalLM
tokenizer_type: LlamaTokenizer
is_llama_derived_model: true

load_in_8bit: false
load_in_4bit: false
strict: false

datasets:
  - path: ./openhermes
    type: alpaca
dataset_prepared_path:
val_set_size: 0.05
output_dir: ./out

sequence_len: 4096
sample_packing: false

adapter: 
lora_model_dir:
lora_r: 
lora_alpha: 
lora_dropout:
lora_target_linear:
lora_fan_in_fan_out:

wandb_project: tinyllama-openhermes
wandb_entity: tensoic
wandb_watch:
wandb_name: 
wandb_log_model:

gradient_accumulation_steps: 2
micro_batch_size: 8
num_epochs: 1
optimizer: adamw_bnb_8bit
adam_epsilon: 0.00001
max_grad_norm: 1.0
lr_scheduler: cosine
learning_rate: 0.0002

train_on_inputs: false
group_by_length: false
bf16: false
fp16: true
tf32: false

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

warmup_steps: 100
evals_per_epoch: 4
eval_table_size:
saves_per_epoch: 1
debug:
deepspeed: zero2.json
weight_decay: 0.0
fsdp:
fsdp_config:
special_tokens:
  bos_token: "<s>"
  eos_token: "</s>"
  unk_token: "<unk>"

image/png

The model achieves the following loss:

  • Loss: 1.3647

The loss exploded after a couple hundred steps. As suggested by winglian, we set the following values in the config file:

adam_epsilon: 0.00001
max_grad_norm: 1.0

Training hyperparameters

The following hyperparameters were used during training:

  • learning_rate: 0.0002
  • train_batch_size: 8
  • eval_batch_size: 8
  • seed: 42
  • distributed_type: multi-GPU
  • num_devices: 8
  • gradient_accumulation_steps: 2
  • total_train_batch_size: 128
  • total_eval_batch_size: 64
  • optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-05
  • lr_scheduler_type: cosine
  • lr_scheduler_warmup_steps: 100
  • num_epochs: 1
  • mixed_precision_training: Native AMP

Training results

Training Loss Epoch Step Validation Loss
3.0006 0.0 1 1.6838
0.8195 0.25 451 1.4620
0.6836 0.5 902 1.4158
0.6811 0.75 1353 1.3647

Framework versions

  • Transformers 4.36.2
  • Pytorch 2.0.1+cu117
  • Datasets 2.15.0
  • Tokenizers 0.15.0
Downloads last month
46

Dataset used to train Tensoic/TinyLlama-1.1B-3T-openhermes