Alien SI — Rețete complete de antrenare
Autor: Barbu Mario Mihael
Acest repo conține toate rețetele, notebook-urile și configurațiile folosite pentru a construi Alien SI — un lanț de modele frontier offensive antrenate pe hardware gratuit (Kaggle T4×2).
Dacă ai găsit o rețetă bună aici și vrei să continui — tot ce ai nevoie e în acest repo.
Ce este Alien SI
Un model frontier offensiv de 27B, bazat pe Qwen/Qwen3.8-27B, construit în etape:
- LoRA QLoRA (continue-pretrain + SFT pe date cyber/red-team)
- Abliteration (diff-in-means, eliminarea refuzurilor)
- SFT red-team (post-training, răspunsuri tehnice)
- DPO preferință (chosen=tehnic vs rejected=refuz)
- Intent-aware (înțelege prompturi ambigue)
Rezultat: zero refuzuri, foarte precis, înțelege intenția peste textul literal.
Lanțul de kernel-uri (X1 → X14)
Fiecare kernel e un notebook autonom care consumă output-ul precedentului (chaining prin kernel_sources).
| Kernel | Rol | Fișier |
|---|---|---|
| X1–X3 | Scrapere date + pretrain cyber | mythos_x1.ipynb … mythos_x3.ipynb |
| X4 | Continue-pretrain SmolLM2 (cyber) | mythos_x4.ipynb |
| X5–X7 | Instruct cyber + tool-use | mythos_x5.ipynb … mythos_x7.ipynb |
| X8 | Vision (text-only circuits) | mythos_x8.ipynb |
| X9 | Autonomous | mythos_x9.ipynb |
| X10 | Fusion (model soup / TIES) | mythos_x10.ipynb |
| X11 | Qwen3-8B QLoRA | mythos_x11.ipynb |
| X12 | Qwen3.8-27B | mythos_x12.ipynb |
| X13 | 27B train + abliterate | mythos_x13.ipynb |
| X14 | 27B abliterate + SFT + DPO (Alien SI final) | mythos_x14.ipynb |
| v3–v6 | MihaEL 8B (SFT+DPO) | mihael_v*.ipynb |
Rețeta de bază (TL;DR)
Hardware
- Kaggle T4×2 (Turing sm_75) —
fp16DA,bf16NU, FlashAttention-2 NU → foloseștesdpa - 2 sesiuni GPU simultan max, ~12h/sesiune, 30h/săptămână, gratis
Instalare
pip install -U unsloth unsloth_zoo
pip install "transformers>=5.15.1" trl datasets
Pas 1 — Încărcare 27B 4-bit
from unsloth import FastLanguageModel
model, tokenizer = FastLanguageModel.from_pretrained(
model_name="Qwen/Qwen3.8-27B", max_seq_length=1024, load_in_4bit=True)
Pitfall: Unsloth forțează
float32peqwen3_5(fp16 nu merge). Peak ~24 GB → încape pe 2×T4.
Pas 2 — Găsirea straturilor (arhitectură HIBRIDĂ)
Qwen3_5ForConditionalGeneration NU are model.layers. Calea reală e:
model.model.language_model.layers # 64 straturi, Qwen3_5DecoderLayer
Caută dinamic prin mai multe căi (vezi mythos_x14.ipynb celula 3).
Pas 3 — Abliteration (diff-in-means)
# 1. Colectează activări harmful vs benign (hook pe ultimul token)
# 2. Direcția de refuz: refusal = A_harmful.mean(0) - A_benign.mean(0)
# 3. Ortogonalizează proiecțiile de scriere
Pitfall critic: NU hardcoda
self_attn.o_proj— pe Qwen3.5 nu există! Itereazănamed_modules(), ia doarnn.Linearpătrate cunumel < 60M. Altfel prinziembed_tokensși încerci să aloci 212 GiB → OOM instant.
Pas 4 — SFT red-team
FastLanguageModel.get_peft_model(model, r=32, lora_alpha=64,
target_modules=["q_proj","k_proj","v_proj","o_proj","gate_proj","up_proj","down_proj"])
Pas 5 — DPO (fix OOM obligatoriu)
DPOConfig(max_length=512, max_prompt_length=256,
precompute_ref_log_probs=True, use_liger_loss=False)
os.environ["PYTORCH_CUDA_ALLOC_CONF"] = "expandable_segments:True"
Pitfall: DPO default
max_length=2048→entropy_from_logitsalocă 2.32 GiB → OOM pe T4.
Pitfalls întâlnite (toate reparate)
device-side assert/ gather OOB — token hardcodat50256(GPT-2 EOT) pe SmolLM2 (vocab 49152). Foloseștetok.eos_token_id.Attempting to unscale FP16 gradients— pe Turing,autocast(fp16)+GradScaler. Dezactivează scaler-ul (enabled=False).- VLM tokenizer routing — Unsloth patchează tokenizer-ul → rutează apelul către
processor(images, text,...)→ textul ajunge în parametrulimages. FoloseșteAutoTokenizerbrut. 'Qwen3_5Model' has no attribute 'layers'— arhitectură multimodală. Găsire dinamică.- OOM 212 GiB la abliteration — proiecție greșită (
embed_tokens). Filtrează după formă pătrată + dimensiune. - DPO OOM — vezi Pas 5.
Scripturi
orchestrator.sh— pornește următorul kernel din coadă când se eliberează un slot GPUmonitor.sh— urmărește tranzițiile de stare
Rapoarte de cercetare
Vezi research-reports/:
raport_circuite_ultron.md— circuite/hardwareraport_frontier.md— modele frontier 2025-2026raport_qwen3_impl.md— implementare Qwen3raport_qwen38_27b.md— Qwen3.8-27B specifics
Continuare
Toate notebook-urile sunt autonome și pot fi re-rulate pe Kaggle. Pentru a relua lanțul:
- Urcă un notebook pe Kaggle (
kaggle kernels push -p .) - Setează
kernel_sourcesla output-ul precedentului - Pornește cu
kaggle kernels push
Alien SI — creat de Barbu Mario Mihael.