Views
No views yet
0.13.21base_model: Qwen/Qwen2.5-Coder-7B-Instruct
2model_type: Qwen2ForCausalLM
3tokenizer_type: AutoTokenizer
4
5load_in_8bit: false
6load_in_4bit: false
7
8# Pre-tokenized datasets produced by scripts/preprocess_diff_mask_chat.py
9# (from felixwangg/prime_vul_minus_splitted which has a fixed validation split).
10# Columns: input_ids, attention_mask, labels, diff_mask.
11# Labels are already -100 for non-assistant tokens; axolotl keeps them as-is.
12datasets:
13 - path: felixwangg/prime_vul_minus_splitted_token_diff_mask_skip_indent_ctx3_chat_v2
14 type: pretokenized
15 split: train
16test_datasets:
17 - path: felixwangg/prime_vul_minus_splitted_token_diff_mask_skip_indent_ctx3_chat_v2
18 type: pretokenized
19 split: validation
20dataset_prepared_path: /scratch/tkwang/SecSteer/axolotl-datasets/lora/Qwen2.5-Coder-7B/prime_vul_minus_splitted_token_diff_mask_skip_indent_ctx3_chat_v2_alpha_0p5
21val_set_size: 0
22output_dir: /scratch/tkwang/SecSteer/axolotl-outputs/lora/Qwen2.5-Coder-7B-sft-minus-alpha-0p5-token-diff-ctx3-v2
23sequence_len: 4096
24sample_packing: false
25eval_sample_packing: false
26pad_to_sequence_len: true
27
28adapter: lora
29lora_model_dir:
30lora_r: 16
31lora_alpha: 16
32lora_dropout: 0.05
33lora_target_linear: true
34merge_lora: true
35
36wandb_project: diff-mask-sft-primevul-ctx-3
37wandb_entity: wtkuan
38wandb_watch: "false"
39wandb_name: Qwen2.5-Coder-7B-sft-minus-alpha-0p5-token-diff-ctx3-v2
40wandb_log_model: "false"
41
42gradient_accumulation_steps: 8
43micro_batch_size: 4
44optimizer: adamw_torch
45lr_scheduler: cosine
46learning_rate: 4e-05
47
48bf16: true
49tf32: false
50
51gradient_checkpointing: true
52resume_from_checkpoint:
53logging_steps: 1
54flash_attention: true
55
56num_epochs: 1
57warmup_ratio: 0.1
58early_stopping_patience: 1000
59eval_steps: 15
60save_steps: 15
61save_total_limit: 1000
62load_best_model_at_end: true
63
64weight_decay: 0.02
65special_tokens:
66
67# Diff-mask weighted loss: CE(logit_t, label_t) * (1 + alpha * diff_mask_{t+1})
68# Security-sensitive tokens (diff_mask=1) get weight (1 + diff_mask_alpha).
69# Requires PYTHONPATH to include the repo root so diff_mask_trainer is importable.
70diff_mask_alpha: 0.5
71
72plugins:
73 - diff_mask_trainer.plugin.DiffMaskPlugin
74 # - sec_bench_callback.SecBenchPlugin
75| Training Loss | Epoch | Step | Validation Loss | Ppl | Active (gib) | Allocated (gib) | Reserved (gib) |
|---|---|---|---|---|---|---|---|
| No log | 0 | 0 | 0.8612 | 2.3659 | 42.36 | 42.36 | 51.15 |
| 6.7851 | 0.2632 | 15 | 0.8141 | 2.2570 | 42.7 | 42.7 | 60.61 |
| 6.1767 | 0.5263 | 30 | 0.7648 | 2.1485 | 42.7 | 42.7 | 61.19 |
| 6.2943 | 0.7895 | 45 | 0.7554 | 2.1286 | 42.7 | 42.7 | 61.19 |