Views
No views yet


1model = FastLanguageModel.get_peft_model(
2 model,
3 r = 64,
4 target_modules = ["q_proj", "v_proj", "k_proj", "o_proj", "gate_proj", "up_proj", "down_proj"],
5 lora_alpha = 32,
6 lora_dropout = 0.05, # 0 for base pretraining
7 bias = "none",
8 use_gradient_checkpointing = "unsloth",
9 random_state = 3407,
10 max_seq_length = max_seq_length,
11 use_rslora = True,
12 loftq_config = None,
13)
14
15trainer = SFTTrainer(
16 model = model,
17 train_dataset = train_dataset,
18 dataset_text_field = "text",
19 max_seq_length = max_seq_length,
20 tokenizer = tokenizer,
21 args = TrainingArguments(
22 per_device_train_batch_size = 2,
23 warmup_steps = 45,
24 num_train_epochs=2, #1 for base-pretraining
25 fp16 = not torch.cuda.is_bf16_supported(),
26 bf16 = torch.cuda.is_bf16_supported(),
27 logging_steps = 15,
28 logging_dir="logs",
29 report_to="tensorboard",
30 output_dir = "outputs",
31 save_strategy=IntervalStrategy.STEPS,
32 save_steps=100,
33 save_total_limit=30,
34 optim = "adamw_torch_fused",
35 lr_scheduler_type="cosine", # <- Changed over time
36 learning_rate=5e-5,
37 weight_decay=0.10, # .15 for base pretraining
38 adam_beta1=0.88, # .9 for base pretraining
39 adam_beta2=0.99, # .999 for base pretraining
40 ),
41)