German Phishing Detection
Collection
6 items
•
Updated
axolotl version: 0.8.0.dev0
# Basismodell und Zugriff
base_model: meta-llama/Llama-3.2-3B-Instruct
model_type: LlamaForCausalLM
tokenizer_type: AutoTokenizer
trust_remote_code: true
special_tokens:
bos_token: "<|begin_of_text|>"
eos_token: "<|eot_id|>"
pad_token: "<|eot_id|>"
# Quantisierung und Hardware-Optimierungen (QLoRA)
load_in_4bit: true
bnb_4bit_quant_type: nf4
bnb_4bit_compute_dtype: bfloat16 # oder float16
bnb_4bit_use_double_quant: true
gradient_checkpointing: true
# bf16: true # Wenn bnb_4bit_compute_dtype bf16 ist und GPU es gut unterstützt
fp16: false # Nur eines von bf16/fp16 sollte true sein, oder beide false wenn compute_dtype anders
# Sequenzlänge
# Llama 3.2 3B hat ein Kontextfenster von 8192 Tokens.
# Wir können mit 4096 starten, wie bei deinen vorherigen Modellen, oder sogar 8192 versuchen,
# wenn es der Speicher auf deiner GPU zulässt und deine Daten davon profitieren.
# Für den Anfang und Vergleichbarkeit bleiben wir bei 4096.
sequence_len: 4096
# sample_packing: true # Kann Trainingseffizienz bei variablen Längen erhöhen
# Adapter-Konfiguration (QLoRA)
adapter: lora
lora_r: 16 # Für 3B kann man r=16 oder r=32 gut probieren
lora_alpha: 32 # Oft 2*r
lora_dropout: 0.05
lora_target_modules: # Typische Targets für Llama-Architekturen
- q_proj
- k_proj
- v_proj
- o_proj
- gate_proj
- up_proj
- down_proj
# Datensatz-Konfiguration
datasets:
- path: AndyAT/Phishing_indicators # DEIN PFAD ZU DEN AUGMENTIERTEN ALPACADATEN
type: alpaca
train_file: train_alpaca.jsonl
validation_file: val_alpaca.jsonl
test_file: test_alpaca.jsonl # Optional
dataset_processes: 32
val_set_size: 0.001
shuffle_merged_datasets: true
# Trainingsparameter
num_epochs: 3.0 # Starte mit 1 Epoche
micro_batch_size: 2 # Bei 3B und 4096 seq_len sollte das auf einer A40 mit QLoRA gut passen, ggf. 4
gradient_accumulation_steps: 16 # Effektive Batch-Größe: 2 * 16 = 32 (oder 4*8=32, 4*16=64)
optimizer: paged_adamw_8bit
learning_rate: 1e-4 # (0.0001) Guter Startwert für QLoRA
lr_scheduler: cosine
# warmup_ratio: 0.03 # oder warmup_steps
# Ausgabe und Speichern
output_dir: ./outputs/llama_3_2_3b_instruct_phishing_v1 # Neuer Name!
save_strategy: steps
save_steps: 100 # Anpassen an die Gesamtanzahl der Schritte pro Epoche
save_total_limit: 2
save_safetensors: true
# Evaluation
evaluation_strategy: steps
eval_steps: 100 # Anpassen
load_best_model_at_end: true
# Logging
logging_steps: 10
# Tokenizer Einstellungen (oft automatisch gut, aber pad_token ist wichtig)
# Llama 3 Tokenizer hat spezielle EOS-Tokens, aber Axolotl und `AutoTokenizer` sollten das handhaben.
# pad_token: "<|reserved_special_token_0|>" # Ein ungenutzter Special Token als Pad-Token, falls benötigt und nicht automatisch gesetzt
# eos_token: "<|eot_id|>" # Einer der EOS-Tokens von Llama 3
# Weitere Axolotl-Einstellungen
train_on_inputs: false
seed: 42
This model is a fine-tuned version of meta-llama/Llama-3.2-3B-Instruct on the AndyAT/Phishing_indicators dataset. It achieves the following results on the evaluation set:
More information needed
More information needed
More information needed
The following hyperparameters were used during training:
Training Loss | Epoch | Step | Validation Loss |
---|---|---|---|
No log | 0.0016 | 1 | 1.3003 |
0.8021 | 0.1626 | 100 | 0.4031 |
0.6948 | 0.3251 | 200 | 0.3433 |
0.6982 | 0.4877 | 300 | 0.3297 |
0.6886 | 0.6502 | 400 | 0.3144 |
0.6359 | 0.8128 | 500 | 0.3012 |
0.6114 | 0.9753 | 600 | 0.2963 |
0.5544 | 1.1365 | 700 | 0.2812 |
0.5697 | 1.2991 | 800 | 0.2742 |
0.579 | 1.4616 | 900 | 0.2793 |
0.5342 | 1.6242 | 1000 | 0.2693 |
0.5546 | 1.7868 | 1100 | 0.2687 |
0.5213 | 1.9493 | 1200 | 0.2584 |
0.4919 | 2.1105 | 1300 | 0.2574 |
0.4981 | 2.2731 | 1400 | 0.2550 |
0.4973 | 2.4356 | 1500 | 0.2565 |
0.465 | 2.5982 | 1600 | 0.2517 |
0.4582 | 2.7607 | 1700 | 0.2531 |
0.4969 | 2.9233 | 1800 | 0.2517 |
4-bit
5-bit
16-bit
Base model
meta-llama/Llama-3.2-3B-Instruct