Built with Axolotl

See axolotl config

axolotl version: 0.8.0.dev0

# === Start-up Commands ===
# curl -LsSf https://astral.sh/uv/install.sh | sh
# export PATH="$HOME/.local/bin:$PATH"
# git clone https://github.com/axolotl-ai-cloud/axolotl
# cd axolotl
# git checkout d8b4027200de0fe60f4ae0a71272c1a8cb2888f7
# uv venv
# source .venv/bin/activate
# uv pip install packaging ninja setuptools ftfy deepspeed huggingface_hub[cli,hf_transfer]
# uv pip install "cut-cross-entropy[transformers] @ git+https://github.com/strangedove/ml-cross-entropy.git"
# uv pip install apollo-torch
# uv pip install --no-build-isolation -e .[flash-attn]
# uv pip install git+https://github.com/huggingface/transformers.git
# export HF_HUB_ENABLE_HF_TRANSFER=1
# huggingface-cli login --token $hf_key && wandb login $wandb_key
# axolotl preprocess qwen21-pretrain.yml
# axolotl train qwen21-pretrain.yml

# curl -LsSf https://astral.sh/uv/install.sh | sh && export PATH="$HOME/.local/bin:$PATH" && git clone https://github.com/axolotl-ai-cloud/axolotl && uv venv && source .venv/bin/activate && cd axolotl && git checkout 9f00465a5cb2349c23853c4a020a928709e506f2 && uv pip install torch==2.5.1 packaging ninja setuptools ftfy deepspeed huggingface_hub[cli,hf_transfer] && uv pip install "cut-cross-entropy[transformers] @ git+https://github.com/strangedove/ml-cross-entropy.git@gemma3" && uv pip install apollo-torch && uv pip install --no-build-isolation -e .[flash-attn] && uv pip install git+https://github.com/huggingface/transformers.git@c9d1e5238a752813ba91a8751a638a09b5efbb73 && export HF_HUB_ENABLE_HF_TRANSFER=1 && cd .. && huggingface-cli login --token $hf_key && wandb login $wandb_key

# === Model Configuration ===
base_model: unsloth/gemma-3-4b-it
load_in_8bit: true
load_in_4bit: false

# === HF Configuration === 
hub_model_id: ToastyPigeon/g3-4b-it-creative-qlora
hub_strategy: "every_save"

# === Training Setup ===
num_epochs: 1
micro_batch_size: 3
gradient_accumulation_steps: 6
sequence_len: 8192
sample_packing: true
pad_to_sequence_len: true

# === Evaluation ===
val_set_size: 100
evals_per_epoch: 5
#eval_table_size:
eval_max_new_tokens: 256
eval_sample_packing: true
#eval_strategy: "no"

# === LoRA Configuration ===
adapter: lora
lora_model_dir:
lora_r: 64
lora_alpha: 64
lora_dropout: 0.5
lora_target_linear: 
lora_fan_in_fan_out:
lora_target_modules:
  - gate_proj
  - down_proj
  - up_proj
  - q_proj
  - v_proj
  - k_proj
  - o_proj

#lora_mlp_kernel: true
#lora_qkv_kernel: true
#lora_o_kernel: true

# === Hyperparameter Configuration ===
#optimizer: apollo_adamw_layerwise
optimizer: paged_adamw_8bit
# Apollo-mini configuration:
#optim_args: "proj=random,rank=1,scale=128.0,scale_type=tensor,update_proj_gap=200"
# Regular Apollo configuration:
# optim_args: 
#optim_target_modules: all_linear
learning_rate: 1e-5
lr_scheduler: rex
weight_decay: 0.01
#warmup_ratio: 0.05


# === Data Configuration ===
#chat_template: jinja
#chat_template_jinja: "{{ bos_token }}{% for message in messages %}{% if (message['role'] == 'assistant') %}{% set role = 'model' %}{% else %}{% set role = message['role'] %}{% endif %}{{ '<start_of_turn>' + role + '\n' + message['content'] | trim + '<end_of_turn>\n' }}{% endfor %}{% if add_generation_prompt %}{{'<start_of_turn>model\n'}}{% endif %}"
#special_tokens:
#  eos_token: "<end_of_turn>"
shuffle_merged_datasets: true
datasets:
  - path: ToastyPigeon/some-rp-extended
    type: customgemma-regex
  - path: allura-org/inkstructmix-v0.2.1a-system-reasoning-separated
    type: customgemma-regex
    data_files: inkstruct-system.json
    split: train[:750]
  - path: ToastyPigeon/unalign-v2
    type: chat_template
    field_messages: conversations
    message_property_mappings:
      role: from
      content: value
  - path: ToastyPigeon/unalign-v2 # yes, twice on purpose 
    type: chat_template
    field_messages: conversations
    message_property_mappings:
      role: from
      content: value
  - path: ToastyPigeon/synth-rp
    split: train[:20%]
    type: customgemma-regex
  - path: PocketDoc/Floyd-Text-Adventures
    data_files: floyd-pktdc.json
    type: customgemma-regex
  - path: ToastyPigeon/new-story-dataset
    type: customcompletion-regex
    field: text
    
dataset_prepared_path: last_run_prepared


# === Plugins ===
plugins:
  - axolotl.integrations.liger.LigerPlugin
  - axolotl.integrations.cut_cross_entropy.CutCrossEntropyPlugin

# === Hardware Optimization ===
gradient_checkpointing: true
#gradient_checkpointing_kwargs:
#  use_reentrant: true
liger_rope: true
liger_rms_norm: true
liger_glu_activation: true
#liger_fused_linear_cross_entropy: true
#unsloth_cross_entropy_loss: true
cut_cross_entropy: true
# Only if using multiple GPUs:
#deepspeed: axolotl/deepspeed_configs/zero2.json

# === Wandb Tracking ===
wandb_project: Gemma
# wandb_entity: [WANDB_ENTITY]
# wandb_name: [WANDB_RUN_NAME]

# === Checkpointing ===
saves_per_epoch: 10
save_total_limit: 1

# === Advanced Settings ===
output_dir: ./ckpts
bf16: auto
flash_attention: true
train_on_inputs: false
group_by_length: false
save_safetensors: true
logging_steps: 1
gc_steps: 10
seed: 69

g3-4b-it-creative-qlora

This model is a fine-tuned version of unsloth/gemma-3-4b-it on the ToastyPigeon/some-rp-extended, the allura-org/inkstructmix-v0.2.1a-system-reasoning-separated, the ToastyPigeon/unalign-v2, the ToastyPigeon/unalign-v2, the ToastyPigeon/synth-rp, the PocketDoc/Floyd-Text-Adventures and the ToastyPigeon/new-story-dataset datasets. It achieves the following results on the evaluation set:

  • Loss: 2.7299

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: 1e-05
  • train_batch_size: 3
  • eval_batch_size: 3
  • seed: 69
  • gradient_accumulation_steps: 6
  • total_train_batch_size: 18
  • optimizer: Use OptimizerNames.PAGED_ADAMW_8BIT with betas=(0.9,0.999) and epsilon=1e-08 and optimizer_args=No additional optimizer arguments
  • lr_scheduler_type: cosine
  • lr_scheduler_warmup_steps: 8
  • num_epochs: 1.0

Training results

Training Loss Epoch Step Validation Loss
4.5251 0.0034 1 4.6010
3.9623 0.1995 58 3.7722
2.8668 0.3991 116 3.2242
2.8385 0.5986 174 2.8821
2.7389 0.7982 232 2.7648
2.5117 0.9977 290 2.7299

Framework versions

  • PEFT 0.15.0
  • Transformers 4.51.0.dev0
  • Pytorch 2.5.1+cu124
  • Datasets 3.4.1
  • Tokenizers 0.21.1
Downloads last month
1
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for ToastyPigeon/g3-4b-it-creative-qlora

Adapter
(6)
this model

Datasets used to train ToastyPigeon/g3-4b-it-creative-qlora