q3-14b-completion-lora
4
14.0B
license:apache-2.0
by
ToastyPigeon
Other
OTHER
14B params
New
4 downloads
Early-stage
Edge AI:
Mobile
Laptop
Server
32GB+ RAM
Mobile
Laptop
Server
Quick Summary
This model is a fine-tuned version of Qwen/Qwen3-14B-Base on the ToastyPigeon/new-story-dataset, the ToastyPigeon/new-story-dataset, the ToastyPigeon/some-eroti...
Device Compatibility
Mobile
4-6GB RAM
Laptop
16GB RAM
Server
GPU
Minimum Recommended
14GB+ RAM
Code Examples
=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-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=== Model Configuration ===yaml
# === Model Configuration ===
base_model: Qwen/Qwen3-14B-Base
load_in_8bit: false
load_in_4bit: true
# === HF Configuration ===
hub_model_id: ToastyPigeon/q3-14b-completion-lora
hub_strategy: "every_save"
# === Training Setup ===
num_epochs: 2
micro_batch_size: 1
gradient_accumulation_steps: 8
sequence_len: 16384
sample_packing: true
pad_to_sequence_len: false
# === 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"
# === Experimental QAT ===
qat:
activation_dtype: int4
weight_dtype: int4
group_size: 32
fake_quant_after_n_steps: 10
# === LoRA Configuration ===
adapter: qlora
lora_model_dir:
lora_r: 16
lora_alpha: 32
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: 20
optimizer: adamw_torch_fused
#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: 1e-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: 20
save_total_limit: 1
# === Advanced Settings ===
output_dir: /workspace/aibox-standalone-pool/axolotl/qwen14b-ckpts
bf16: auto
flash_attention: true
train_on_inputs: false
group_by_length: false
save_safetensors: true
logging_steps: 1
gc_steps: 10
seed: 69Deploy This Model
Production-ready deployment in minutes
Together.ai
Instant API access to this model
Production-ready inference API. Start free, scale to millions.
Try Free APIReplicate
One-click model deployment
Run models in the cloud with simple API. No DevOps required.
Deploy NowDisclosure: We may earn a commission from these partners. This helps keep LLMYourWay free.