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:

  1. LoRA QLoRA (continue-pretrain + SFT pe date cyber/red-team)
  2. Abliteration (diff-in-means, eliminarea refuzurilor)
  3. SFT red-team (post-training, răspunsuri tehnice)
  4. DPO preferință (chosen=tehnic vs rejected=refuz)
  5. 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) — fp16 DA, bf16 NU, FlashAttention-2 NU → folosește sdpa
  • 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ă float32 pe qwen3_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 doar nn.Linear pătrate cu numel < 60M. Altfel prinzi embed_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_logits alocă 2.32 GiB → OOM pe T4.


Pitfalls întâlnite (toate reparate)

  1. device-side assert / gather OOB — token hardcodat 50256 (GPT-2 EOT) pe SmolLM2 (vocab 49152). Folosește tok.eos_token_id.
  2. Attempting to unscale FP16 gradients — pe Turing, autocast(fp16) + GradScaler. Dezactivează scaler-ul (enabled=False).
  3. VLM tokenizer routing — Unsloth patchează tokenizer-ul → rutează apelul către processor(images, text,...) → textul ajunge în parametrul images. Folosește AutoTokenizer brut.
  4. 'Qwen3_5Model' has no attribute 'layers' — arhitectură multimodală. Găsire dinamică.
  5. OOM 212 GiB la abliteration — proiecție greșită (embed_tokens). Filtrează după formă pătrată + dimensiune.
  6. DPO OOM — vezi Pas 5.

Scripturi

  • orchestrator.sh — pornește următorul kernel din coadă când se eliberează un slot GPU
  • monitor.sh — urmărește tranzițiile de stare

Rapoarte de cercetare

Vezi research-reports/:

  • raport_circuite_ultron.md — circuite/hardware
  • raport_frontier.md — modele frontier 2025-2026
  • raport_qwen3_impl.md — implementare Qwen3
  • raport_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:

  1. Urcă un notebook pe Kaggle (kaggle kernels push -p .)
  2. Setează kernel_sources la output-ul precedentului
  3. Pornește cu kaggle kernels push

Alien SI — creat de Barbu Mario Mihael.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support