Built with Axolotl

See axolotl config

axolotl version: 0.10.0.dev0

# === Start-up Commands ===
# curl -LsSf https://astral.sh/uv/install.sh | sh
# export PATH="$HOME/.local/bin:$PATH"
# uv venv
# source .venv/bin/activate
# git clone https://github.com/axolotl-ai-cloud/axolotl
# cd axolotl
# 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-multimodal"
# uv pip install apollo-torch
# uv pip install --no-build-isolation -e .[flash-attn]
# uv pip install git+https://github.com/huggingface/transformers.git
# uv pip install git+https://github.com/linkedin/Liger-Kernel.git
# export HF_HUB_ENABLE_HF_TRANSFER=1
# huggingface-cli login --token $hf_key && wandb login $wandb_key

# apt update && apt install -y libopenmpi-dev && 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 0ba7d362fa32a89bf3767d185c8623e917af674d && uv pip install torch==2.5.1 packaging ninja mpi4py setuptools ftfy deepspeed huggingface_hub hf_xet && uv pip install "cut-cross-entropy[transformers] @ git+https://github.com/apple/ml-cross-entropy.git" && uv pip install --no-build-isolation -e .[flash-attn] && cd .. && huggingface-cli login --token $hf_key && wandb login $wandb_key

# === Model Configuration ===
base_model: Columbidae/Qwen3-16B-A3B-Base
load_in_8bit: false
load_in_4bit: true

# === HF Configuration === 
hub_model_id: allura-forge/qwen3-16b-a3b-completion-lora
hub_strategy: "every_save"

# === Training Setup ===
num_epochs: 1
micro_batch_size: 2
gradient_accumulation_steps: 8
sequence_len: 8192
sample_packing: true
pad_to_sequence_len: true

# === Evaluation ===
#val_set_size: 250
#evals_per_epoch: 5
#eval_steps: 20
#max_steps: 60
#eval_table_size:
#eval_max_new_tokens: 256
#eval_sample_packing: true
eval_strategy: "no"

# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 128
lora_alpha: 128
lora_dropout: 0.25
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
warmup_steps: 0
#optimizer: adamw_torch_8bit
optimizer: paged_adamw_8bit
#optim_args:
#  enable_stochastic_rounding: true
#  enable_cautious: true
#  enable_8bit: true
# Apollo-mini configuration:
#optim_args: "proj=random,rank=128,scale=128.0,scale_type=tensor,update_proj_gap=100"
# Regular Apollo configuration:
# optim_args: 
#optim_target_modules: all_linear
learning_rate: 5e-5
lr_scheduler: rex
cosine_min_lr_ratio: 0.2
#lr_scheduler: cosine_with_min_lr
#lr_scheduler_kwargs:
#  cosine_min_lr: 1e-6
weight_decay: 0.01
max_grad_norm: 1.0
#warmup_steps: 0
#warmup_ratio: 0.025


# === 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: "<|im_end|>"
#chat_template: jinja
#chat_template_jinja: chat_template.jinja
shuffle_merged_datasets: true
datasets:
  - path: ToastyPigeon/new-story-dataset
    type: completion
    data_files: new-story-dataset-v2.json
  - path: ToastyPigeon/new-story-dataset
    type: completion
    data_files: ehl_samples.json
  - path: ToastyPigeon/some-erotica
    type: completion
    split: train[:50%]
  - path: ToastyPigeon/skein-text-adventures
    type: completion
    split: train[:50%]
  - path: ToastyPigeon/SpringDragon
    type: completion
    split: train
  - path: ToastyPigeon/disco-chat
    type: completion
    split: train
dataset_prepared_path: last_run_prepared


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

# === Hardware Optimization ===
gradient_checkpointing: offload
gradient_checkpointing_kwargs:
  use_reentrant: false
liger_rope: true
liger_rms_norm: true
liger_layer_norm: true
liger_glu_activation: true
cut_cross_entropy: true

#deepspeed: axolotl/deepspeed_configs/zero3_bf16.json

# === FSDP Config === 
#fsdp:
#  - full_shard
#  - auto_wrap
#fsdp_config:
#  fsdp_limit_all_gathers: true
#  fsdp_sync_module_states: true
#  fsdp_offload_params: true
#  fsdp_activation_checkpointing: true
#  fsdp_use_orig_params: false
#  fsdp_cpu_ram_efficient_loading: true
#  fsdp_auto_wrap_policy: TRANSFORMER_BASED_WRAP
#  fsdp_transformer_layer_cls_to_wrap: Qwen3DecoderLayer
#  fsdp_state_dict_type: FULL_STATE_DICT
#  fsdp_sharding_strategy: FULL_SHARD


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

# === Checkpointing ===
saves_per_epoch: 5
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

qwen3-16b-a3b-completion-lora

This model is a fine-tuned version of Columbidae/Qwen3-16B-A3B-Base on the ToastyPigeon/new-story-dataset, the ToastyPigeon/new-story-dataset, the ToastyPigeon/some-erotica, the ToastyPigeon/skein-text-adventures, the ToastyPigeon/SpringDragon and the ToastyPigeon/disco-chat datasets.

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: 5e-05
  • train_batch_size: 2
  • eval_batch_size: 2
  • seed: 69
  • gradient_accumulation_steps: 8
  • total_train_batch_size: 16
  • 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
  • num_epochs: 1.0

Training results

Framework versions

  • PEFT 0.15.2
  • Transformers 4.51.3
  • Pytorch 2.5.1+cu124
  • Datasets 3.5.0
  • Tokenizers 0.21.1
Downloads last month
3
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for allura-forge/qwen3-16b-a3b-completion-lora

Adapter
(1)
this model

Datasets used to train allura-forge/qwen3-16b-a3b-completion-lora