Views
No views yet
0.10.0.dev01# === Start-up Commands ===
2# curl -LsSf https://astral.sh/uv/install.sh | sh
3# export PATH="$HOME/.local/bin:$PATH"
4# uv venv
5# source .venv/bin/activate
6# git clone https://github.com/axolotl-ai-cloud/axolotl
7# cd axolotl
8# uv pip install torch==2.5.1 packaging ninja setuptools ftfy deepspeed huggingface_hub[cli,hf_transfer]
9# uv pip install "cut-cross-entropy[transformers] @ git+https://github.com/strangedove/ml-cross-entropy.git@gemma3-multimodal"
10# uv pip install apollo-torch
11# uv pip install --no-build-isolation -e .[flash-attn]
12# uv pip install git+https://github.com/huggingface/transformers.git
13# uv pip install git+https://github.com/linkedin/Liger-Kernel.git
14# export HF_HUB_ENABLE_HF_TRANSFER=1
15# huggingface-cli login --token $hf_key && wandb login $wandb_key
16
17# apt update && apt install -y libopenmpi-dev && curl -LsSf https://astral.sh/uv/install.sh | sh && export PATH="$HOME/.local/bin:$PATH" && git clone https://github.com/axolotl-ai-cloud/axolotl && uv venv && source .venv/bin/activate && cd axolotl && uv pip install torch==2.5.1 packaging ninja mpi4py setuptools ftfy deepspeed huggingface_hub[cli,hf_transfer] && uv pip install apollo-torch && uv pip install "cut-cross-entropy[transformers] @ git+https://github.com/strangedove/ml-cross-entropy.git@qwen3" && uv pip install git+https://github.com/linkedin/Liger-Kernel.git && uv pip install --no-build-isolation -e .[flash-attn] && uv pip install git+https://github.com/huggingface/transformers.git && export HF_HUB_ENABLE_HF_TRANSFER=1 && cd .. && huggingface-cli login --token $hf_key && wandb login $wandb_key
18
19# === Model Configuration ===
20base_model: Columbidae/Qwen3-30B-A3B-Noisy
21load_in_8bit: false
22load_in_4bit: true
23
24# === HF Configuration ===
25hub_model_id: ToastyPigeon/qwen3-30b-noised-iter1
26hub_strategy: "every_save"
27
28# === Training Setup ===
29num_epochs: 1
30micro_batch_size: 4
31gradient_accumulation_steps: 2
32sequence_len: 8192
33sample_packing: true
34pad_to_sequence_len: true
35
36# === Evaluation ===
37val_set_size: 300
38evals_per_epoch: 10
39#eval_table_size:
40eval_max_new_tokens: 256
41eval_sample_packing: true
42#eval_strategy: "no"
43
44# === LoRA Configuration ===
45adapter: lora
46lora_model_dir:
47lora_r: 32
48lora_alpha: 32
49lora_dropout: 0
50lora_target_linear:
51lora_fan_in_fan_out:
52lora_target_modules:
53 - gate_proj
54 - down_proj
55 - up_proj
56 - q_proj
57 - v_proj
58 - k_proj
59 - o_proj
60
61#lora_mlp_kernel: true
62#lora_qkv_kernel: true
63#lora_o_kernel: true
64
65# === Hyperparameter Configuration ===
66#optimizer: apollo_adamw_layerwise
67optimizer: paged_adamw_8bit
68# Apollo-mini configuration:
69#optim_args: "proj=random,rank=1,scale=128.0,scale_type=tensor,update_proj_gap=200"
70# Regular Apollo configuration:
71# optim_args:
72#optim_target_modules: all_linear
73learning_rate: 1e-5
74lr_scheduler: rex
75weight_decay: 0.01
76warmup_steps: 0
77#warmup_ratio: 0.05
78
79
80# === Data Configuration ===
81#chat_template: jinja
82#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 %}"
83#special_tokens:
84# eos_token: "<end_of_turn>"
85shuffle_merged_datasets: true
86datasets:
87 - path: ToastyPigeon/mixed-data-for-qwen
88 type: chat_template
89 data_files: mixed_data_for_qwen_part1.json
90
91dataset_prepared_path: last_run_prepared
92
93
94# === Plugins ===
95plugins:
96 - axolotl.integrations.liger.LigerPlugin
97 - axolotl.integrations.cut_cross_entropy.CutCrossEntropyPlugin
98
99# === Hardware Optimization ===
100gradient_checkpointing: true
101#gradient_checkpointing_kwargs:
102# use_reentrant: true
103liger_rope: true
104liger_rms_norm: true
105liger_glu_activation: true
106#liger_fused_linear_cross_entropy: true
107#unsloth_cross_entropy_loss: true
108cut_cross_entropy: true
109# Only if using multiple GPUs:
110#deepspeed: axolotl/deepspeed_configs/zero2.json
111
112# === Wandb Tracking ===
113wandb_project: Qwen3MoE
114# wandb_entity: [WANDB_ENTITY]
115# wandb_name: [WANDB_RUN_NAME]
116
117# === Checkpointing ===
118saves_per_epoch: 10
119save_total_limit: 1
120
121# === Advanced Settings ===
122output_dir: ./ckpts
123bf16: auto
124flash_attention: true
125train_on_inputs: false
126group_by_length: false
127save_safetensors: true
128logging_steps: 1
129gc_steps: 10
130seed: 69| Training Loss | Epoch | Step | Validation Loss |
|---|---|---|---|
| 0.7597 | 0.0035 | 1 | 0.8862 |
| 0.9744 | 0.1019 | 29 | 0.7604 |
| 0.8101 | 0.2039 | 58 | 0.6862 |
| 0.7025 | 0.3058 | 87 | 0.6667 |
| 0.6058 | 0.4077 | 116 | 0.6552 |
| 0.5499 | 0.5097 | 145 | 0.6466 |
| 0.494 | 0.6116 | 174 | 0.6404 |
| 0.6 | 0.7135 | 203 | 0.6358 |
| 0.7872 | 0.8155 | 232 | 0.6325 |
| 0.7281 | 0.9174 | 261 | 0.6300 |