Skip to content

Repository files navigation

LLM Lab – Impara Giocando con i Modelli Linguistici

Benvenuto nel tuo laboratorio personale per scoprire come funzionano i Large Language Models (LLM)!

Qui non leggerai solo teoria. Scaricherai un modello piccolo e, passo dopo passo, lo modificherai per vedere come cambia il suo comportamento.

Nota: Questo materiale è pensato a scopo didattico per un primo approccio agli LLM. Tutti gli script sono commentati e guidano l'utente passo dopo passo.


Cosa Imparerai

  • Token: perché le parole vengono spezzate in pezzetti
  • Generazione: come il modello sceglie una parola alla volta
  • Temperatura: il controllo della creatività
  • Top-K e Top-P: i filtri per selezionare le parole
  • Steering: come "guidare" il modello modificando le sue attivazioni interne
  • Generazione interattiva: scegli tu i token passo dopo passo!

Prerequisiti

  • Python 3.8+
  • Pip

Installa le librerie necessarie:

pip install transformers torch accelerate

💡 Il modello Qwen2.5-0.5B pesa circa 1 GB. La prima volta che lo scarichi, impiegherà qualche minuto.

Struttura del Progetto

llm-lab/
│
├── 01_carica_modello.py              # Scarica Qwen2.5-0.5B
├── 02_genera_testo.py                # Prima generazione
├── 03_temperatura.py                 # Sperimenta la temperatura
├── 04_top_k_p.py                     # Sperimenta i filtri
├── 05_confronto_parametri.py         # Confronto completo
├── README.md
│
├── modello_originale/                # Il modello scaricato (NON TOCCARE!)
│   └── qwen2.5-0.5b/
│
├── esperimenti/                      # Esperimenti aggiuntivi
│   ├── 01_generazione_interattiva.py # Scegli tu i token!
│   └── output/
│
├── steering/                         # Esperimenti di steering
│   ├── 01_steering_base.py
│   ├── 02_steering_layer.py
│   ├── 03_confronto_steering.py
│   ├── 04_vero_steering.py           # 💥 VERO STEERING!
│   └── output/
│
└── output/                           # Risultati degli esperimenti
    ├── baseline/
    ├── temperatura/
    ├── topk/
    └── confronto/

Come Iniziare Dopo aver estratto il file ZIP, apri il terminale nella cartella llm-lab/:

  1. Scarica il modello
python 01_carica_modello.py
Cos'è un token e come funziona il tokenizer
  1. Segui il percorso di apprendimento

Esegui gli script in ordine. Ogni script ti dirà cosa fare dopo:

python 02_genera_testo.py
Come il modello genera testo
python 03_temperatura.py
Come la temperatura cambia il testo
python 04_top_k_p.py
Come i filtri influenzano le scelte
python 05_confronto_parametri.py
Tutti i parametri insieme
  1. Prova la generazione interattiva in esperimenti
python 01_generazione_interattiva.py
Scegli tu i token!
  1. **Esplora lo steering **
python 01_steering_base.py
python 02_steering_layer.py
python 03_confronto_steering.py
Introduzione e simulazioni di steering
python 04_vero_steering.py  
vero steering

⚠️ La Regola d'Oro

Non toccare mai i file dentro modello_originale!

Quella è la copia pulita del modello. Se rompi qualcosa negli script, basta cancellare le cartelle output/ e ricominciare.

Leggi i commenti: Ogni script ha spiegazioni chiare all'inizio.

Apri i file di output: Nella cartella output/ trovi tutti i testi generati.

Sperimenta: Cambia i parametri e osserva i risultati. Rompere è permesso!

Non avere fretta: Il modello è piccolo, quindi alcune risposte potrebbero essere strane. È normale!

About

A hands-on beginner's lab for learning how Large Language Models work by downloading a small model and experimenting with tokens, temperature, top-k/top-p, and steering.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages