CoolFace
Modelpublic

Tensoic/TinyLlama-1.1B-3T-openhermes

sourceHugging Faceupdated 3y agoView on Hugging Face
8likes41downloads
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."

<details><summary>See axolotl config</summary>

axolotl version: 0.3.0

yaml
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>"

</details><br>

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
  • โ€”trainbatchsize: 8
  • โ€”evalbatchsize: 8
  • โ€”seed: 42
  • โ€”distributed_type: multi-GPU
  • โ€”num_devices: 8
  • โ€”gradientaccumulationsteps: 2
  • โ€”totaltrainbatch_size: 128
  • โ€”totalevalbatch_size: 64
  • โ€”optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-05
  • โ€”lrschedulertype: cosine
  • โ€”lrschedulerwarmup_steps: 100
  • โ€”num_epochs: 1
  • โ€”mixedprecisiontraining: Native AMP

Training results

Training LossEpochStepValidation Loss
3.00060.011.6838
0.81950.254511.4620
0.68360.59021.4158
0.68110.7513531.3647

Framework versions

  • โ€”Transformers 4.36.2
  • โ€”Pytorch 2.0.1+cu117
  • โ€”Datasets 2.15.0
  • โ€”Tokenizers 0.15.0