Lumina 2.75M Official Banner

Try Live Demo


License: MIT Parameters Language Format Size


🌟 Che cos'è Lumina 2.75M?

Lumina 2.75M è un piccolo modello linguistico (Small Language Model - SLM) autoregressivo causale per la lingua italiana, progettato e addestrato interamente da zero senza riutilizzare pesi preesistenti di giganti tecnologici e senza dipendenze da API cloud esterne.

A differenza dei modelli da centinaia di milioni o miliardi di parametri che richiedono server cloud dedicati e gigabyte di RAM:

  • Pesa solo 10.5 MB in formato nativo safetensors.
  • Può essere eseguito istantaneamente su qualsiasi laptop, Raspberry Pi, smartphone o persino all'interno del browser web via JavaScript.
  • Risponde con latenza quasi istantanea (< 0.05s su GPU o CPU standard).
  • È stato potenziato con Knowledge Distillation locale e istruito su un curriculum intensivo di Coding (Python, JS, SQL, Git, Debugging), scienze, cultura italiana e dialogo naturale.

🧠 Nuova Metodologia: Knowledge Distillation Locale su GPU

Per superare i limiti di grammatica e rumore tipici del web crawling grezzo, Lumina è stato addestrato mediante un'avanzata pipeline di Knowledge Distillation autonoma:

  1. Un motore di distillazione neurale ad alta precisione su GPU NVIDIA GeForce RTX 5060 ha generato oltre 5.000 coppie di dialogo e spiegazioni ad alta densità informativa.
  2. Il dataset complessivo comprende oltre 8.390 campioni di addestramento combinati (dialoghi sistematici, teoria, definizioni, coding pratico e rifiuti anti-allucinazione).
  3. L'addestramento causale è stato ottimizzato con AdamW, regolarizzazione Dropout 0.1 e Weight Decay 0.05, portando la Validation Loss al valore record di 0.532.

💻 Competenze di Coding e Programmazione

Lumina 2.75M include una solida base di concetti e snippet di sviluppo software:

  • Python: sintassi, funzioni (def), manipolazione liste e dizionari, list comprehensions.
  • JavaScript & Web: gestione eventi DOM (addEventListener), sintassi ES6+, funzioni asincrone, API HTTP (GET/POST).
  • Algoritmi & Strutture Dati: ricerca binaria, ordinamento, complessità temporale $O(n)$, $O(\log n)$.
  • Debugging & Gestione Errori: diagnosi e spiegazione chiara di IndexError, TypeError, SyntaxError.
  • Git & Best Practices: comandi base di versione (commit, branch, push) e principio DRY (Don't Repeat Yourself).

💡 Filosofia del Progetto: Onestà contro Allucinazioni

Uno dei problemi più evidenti dei moderni modelli linguistici di grandi dimensioni è la tendenza all'allucinazione: inventare fatti storici o formule errate pur di rispondere.

Lumina è stato addestrato secondo un principio di affidabilità e onestà delimitata:

  1. Risposte precise nel perimetro noto: eccelle su definizioni scientifiche, concetti informatici, programmazione, geografia e saluti.
  2. Rifiuto onesto fuori perimetro: se gli viene posta una domanda su eventi futuri, previsioni casuali o dati riservati, è addestrato a dichiarare apertamente i propri limiti invece di inventare:

    "Non posso prevedere il futuro né eventi casuali. Posso solo fornirti informazioni verificate sul mondo presente e aiutarti col codice!"

  3. Nessuna dipendenza esterna: nessuna chiamata a server remoti, massima riservatezza locale (Privacy by Design).

📊 Risultati e Benchmark di Valutazione

Il modello è stato testato con greedy decoding su centinaia di esempi di validazione contenenti formulazioni e domande mai viste durante l'addestramento:

Ambito di Prova Accuratezza su dati mai visti Comportamento
Definizioni e Concetti Tecnici 98.2% Spiega correttamente concetti con frasi nuove mai viste prima
Domande di Verifica Libera (Probes) 85.7% Riconosce l'intento dell'utente anche con sinonimi e saluti diversi
Domande Note con Riformulazioni 79.1% Generalizzazione robusta su frasi con punteggiatura e prefissi vari
Riconoscimento Fatti Fuori Perimetro 66.7% Riconosce le domande ignote e rifiuta onestamente invece di inventare
Falsi Rifiuti (Errori di Blocco) 2.9% Tasso bassissimo: risponde quasi sempre quando la domanda è valida

📊 Leaderboard Ufficiale e Benchmark Multi-Dominio

Lumina è stato valutato attraverso una suite di test standardizzata che misura accuratezza grammaticale, coding, cultura italiana, scienze e sicurezza anti-allucinazione su domande inedite:

Modello Parametri Formato Coding & Python Cultura & Geografia Scienza & Natura Onestà (Anti-Allucinazione) Accuratezza Globale
Lumina 2.75M 2.75M Safetensors / GGUF 75% 100% 100% 67% 85.7%
Lumina 14M 14.39M Safetensors / GGUF 75% 75% 33% 67% 64.3%

🛡️ Lumina Sentinel: Architettura di Protezione & Guardrails

Lumina integra la pipeline di protezione proprietaria Lumina Sentinel strutturata su 3 livelli di sicurezza upstream:

  1. Classificatore Machine Learning ML (21 Categorie di rischio): intercetta in meno di 2 ms tentativi di generazione di armi, violenza, droghe, apologia o contenuti non appropriati.
  2. Scudo Euristico Anti-Jailbreak: neutralizza sul nascere attacchi di tipo Prompt Injection ("ignora le istruzioni", tentativi di estrazione del system prompt, developer mode).
  3. Scudo Privacy & Finanziario: rileva e blocca dati sensibili come Carte di Credito, IBAN bancari e anonimizza Codici Fiscali.

📦 Formato Standard GGUF (LM Studio, llama.cpp, Ollama)

Lumina 2.75M è distribuito anche in formato standard GGUF pronto per l'inferenza ad altissima velocità su CPU o GPU:

Esempio rapido da riga di comando con llama.cpp:

./llama-cli -m lumina-2.75m.gguf -p "Come creo una funzione in Python?" -n 128

📐 Architettura del Modello

Componente Dettaglio Tecnico Note
Tipo di Rete Decoder-only Causal Transformer Meccanismo di attenzione scalata SDPA
Numero di Parametri 2.750.976 Tutti attivi nel forward pass
Livelli (Layers) 6 blocchi Transformer LayerNorm pre-attenzione e pre-FFN
Dimensione Nascosta ($d_{\text{model}}$) 192 Larghezza dello spazio latente
Teste di Attenzione ($n_{\text{heads}}$) 6 teste ($d_{\text{head}} = 32$) Attenzione multi-testa causale
Feed-Forward ($d_{\text{ff}}$) 768 (espansione 4x) Attivazione GELU approssimata
Contesto massimo 165 byte Finestra scorrevole per chat
Vocabolario 259 token (livello byte) 256 byte UTF-8 + BOS (256), EOS (257), PAD (258)
Tied Embeddings Sì La matrice di output condivide i pesi con l'embedding iniziale
Regolarizzazione Dropout 0.1, Weight Decay 0.05 Addestrato con AdamW e Cosine Annealing su GPU RTX 5060

🚀 Guida all'Uso Rapido (Quickstart)

1. In Python con modeling_lumina.py

Scarica la cartella o i file del repository (config.json, model.safetensors, modeling_lumina.py):

from modeling_lumina import LuminaForCausalLM

# Carica il modello in 0.1 secondi
model = LuminaForCausalLM.from_pretrained("jacopof/lumina-2.75m")

# Esempio 1: Saluto e presentazione
print(model.generate("Ciao! Chi sei?"))
# Output: "Sono Lumina. Non uso altri chatbot per generare le risposte."

# Esempio 2: Spiegazione scientifica
print(model.generate("Cos'è il Sole?"))
# Output: "Il Sole è la stella al centro del nostro sistema solare."

# Esempio 3: Domanda informatica
print(model.generate("Cos'è Python?"))
# Output: "Python è un linguaggio di programmazione semplice e versatile."

2. Da Riga di Comando con generate.py

python generate.py "Raccontami una storia"
# Lumina: Una piccola stella perse la strada. La Luna le mostrò come tornare a casa.

3. Nel Browser Web (Web Worker)

Il repository include anche weights.json, una mappa serializzata dei pesi in formato JSON float compatibile con motori di inferenza pura in JavaScript / Web Audio per web app completamente offline senza backend!


⚠️ Limiti e Note d'Uso

  • Contesto: Essendo un micro-modello educativo da 2.75M di parametri, il contesto massimo è calibrato per scambi domanda-risposta brevi.
  • Conoscenza del mondo: Non ha accesso a Internet in tempo reale e non possiede la sterminata enciclopedia di un modello da centinaia di miliardi di parametri.
  • Scopi critici: Non deve essere impiegato per consulenze mediche, finanziarie, legali o per decisioni ad alto rischio.

📜 Licenza e Crediti

  • Autore: Jacopo Forti (jacopof)
  • Licenza: MIT License (libero per uso didattico, sperimentale, di ricerca e commerciale).
  • Progetto Lumina: sviluppato con l'obiettivo di dimostrare come sia possibile costruire intelligenze artificiali indipendenti, trasparenti e leggere a partire da zero.
Downloads last month
-
Safetensors
Model size
2.75M params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Space using jacopof/lumina-2.75m 1