| --- |
| license: openrail |
| authors: |
| - Egomnia S.p.A. |
| language: |
| - it |
| tags: |
| - llm |
| - italian |
| - gpt |
| - onnx |
| - text-generation |
| - int8 |
| - lightweight |
| - swiGLU |
| - gqa |
| library_name: onnxruntime |
| pipeline_tag: text-generation |
| datasets: |
| - custom-mixture |
| --- |
| |
| # 🇮🇹 Emma-3 (ONNX) |
|
|
| ## Overview |
|
|
| Questo modello è un **Large Language Model sperimentale decoder-only ottimizzato per lingua italiana**, progettato da **Egomnia S.p.A.** per scenari a bassa latenza e utilizzo su hardware consumer. |
|
|
| 👉 Sito ufficiale: https://emma.egomnia.com |
|
|
| È un modello **ultra-leggero (125,3 milioni di parametri)** pensato per: |
| - inferenza rapida |
| - basso consumo computazionale |
| - utilizzo locale (laptop / edge devices) |
| - task NLP generalisti |
|
|
| Non è progettato per ragionamento complesso o uso critico ad alta affidabilità. |
|
|
| ## Architettura |
|
|
| - Tipo: GPT decoder-only |
| - Transformer blocks: 16 |
| - Hidden size: 768 |
| - Attention heads: 12 query + 4 KV (GQA 3:1) |
| - Head dimension: 64 |
| - Feed-forward dimension: 2.048 (SwiGLU, ff_mult 8/3) |
| - Activation function: SwiGLU |
| - Normalization: RMSNorm |
| - Positional encoding: RoPE (theta 10.000) |
| - Dropout: 0.0 |
| - Embeddings: tied (token embedding = lm_head) |
|
|
| ## Contesto e vocabolario |
|
|
| - Context length: 2.048 token |
| - Vocabulary size: 32.000 token |
| - Tokenizer: SentencePiece BPE con byte fallback |
|
|
| ## Dataset di training |
|
|
| Distribuzione del dataset utilizzato: |
|
|
| - Generalista: 39,97% |
| - Enciclopedico: 35,22% |
| - Codice: 17,15% |
| - Colloquiale: 3,91% |
| - Politico: 2,96% |
| - Libri: 0,79% |
|
|
| ## Alignment |
|
|
| - Supervised Fine-Tuning (SFT) |
| - Direct Preference Optimization (DPO): disabilitato |
|
|
| ## Export e ottimizzazione |
|
|
| - Framework originale: PyTorch |
| - Export: ONNX |
| - Opset: 18 |
| - Quantizzazione: INT8 |
| - Peso modello ONNX: 601,6 MB |
|
|
| ## Uso consigliato |
|
|
| Questo modello è ottimizzato per: |
|
|
| - autocompletamento semplice |
| - NLP italiano generalista |
| - sistemi a bassa latenza |
|
|
| ## Uso non consigliato |
|
|
| - ragionamento multi-step complesso |
| - applicazioni mediche, legali o finanziarie |
| - sistemi ad alta affidabilità o safety-critical |
| - analisi avanzate |
|
|
| ## Focus prestazionale |
|
|
| Il modello è ottimizzato per: |
|
|
| - latenza minima |
| - inference su CPU |
| - footprint ridotto |
| - risposta rapida più che profondità logica |
|
|
| ## Limitazioni |
|
|
| - capacità di ragionamento limitata (modello piccolo) |
| - possibile generazione di contenuti imprecisi |
| - sensibilità a prompt complessi o ambigui |
| - contesto limitato a 2.048 token |
|
|
| ## Licenza |
|
|
| Distribuito sotto licenza **OpenRAIL-M**, con eventuali vincoli derivati dalle licenze dei dataset utilizzati. |
| Questa licenza consente l’uso, la modifica e la distribuzione del modello anche in ambito commerciale, imponendo tuttavia restrizioni sull’utilizzo in scenari potenzialmente dannosi, illegali o non etici, secondo i principi di Responsible AI e nel rispetto delle eventuali restrizioni derivanti dalle licenze dei dataset utilizzati. |
| Si richiede esprezzamente di citare **Egomnia S.p.A.** come autore del modello in caso di utilizzo di quest'ultimo per prodotti, servizi, pubblicazioni o documentazione tecnica. |
|
|
| ## Autore |
|
|
| Egomnia S.p.A. |
|
|
| ## Sito ufficiale |
|
|
| https://emma.egomnia.com |
|
|
| ## Manifesto di Emma — LLM italiano per la sovranità tecnologica |
|
|
| Per la sovranità tecnologica italiana |
|
|
| Noi crediamo che l’intelligenza artificiale non sia soltanto una tecnologia, ma un’infrastruttura critica per il futuro economico, culturale e democratico di una nazione. |
|
|
| Per troppo tempo, i modelli linguistici che plasmano informazione, lavoro e conoscenza sono stati sviluppati altrove, secondo logiche, valori e priorità non sempre allineate con il contesto italiano ed europeo. |
|
|
| I nostri modelli nascono per cambiare questo paradigma. |
| Non è solo il lancio di un nuovo modello, ma una presa di posizione chiara: rilanciare un ecosistema italiano dell’intelligenza artificiale, capace di essere autonomo, competitivo e coerente con le esigenze del nostro Paese. |
|
|
| La famiglia dei LLM "Emma" è anche il risultato di un lavoro costruito nel tempo. Il modello è stato addestrato utilizzando, in parte, dataset proprietari realizzati e custoditi per anni, mai ceduti a terzi. Un patrimonio informativo unico, che siamo convinti possa diventare nel tempo il nostro vero elemento distintivo rispetto ai grandi attori globali. |
|
|
| Oggi non abbiamo la presunzione di competere con i nomi che guidano il settore: Emma rappresenta un primo passo, concreto ma ancora iniziale, all'interno di un percorso di crescita e innovazione che intendiamo sviluppare negli anni a venire. |
|
|
| Questa non è solo innovazione tecnologica. |
| È una scelta di indipendenza. |
| È una visione industriale. |
|
|
| È il nostro contributo. |
|
|
| Dedicato a mia figlia, Emma. |
|
|
| Matteo Achilli |
| Fondatore di Egomnia |
|
|
| ## Note |
|
|
| Italian Ultra-Light GPT: Emma-3 è un modello della prima fase evolutiva della famiglia Emma, progettato per garantire efficienza e bassa latenza in contesti di utilizzo basilari. |
|
|
| --- |
|
|
| ## Inference (ONNX Runtime) |
|
|
| ```python |
| import onnxruntime as ort |
| import numpy as np |
| |
| session = ort.InferenceSession("model.onnx") |
| |
| outputs = session.run( |
| None, |
| { |
| "input_ids": input_ids, |
| "attention_mask": attention_mask |
| } |
| ) |