| | --- |
| | language: |
| | - it |
| | license: llama3.1 |
| | base_model: meta-llama/Meta-Llama-3.1-8B-Instruct |
| | datasets: |
| | - Nick06888/PreventiData |
| | tags: |
| | - safety |
| | - workplace-safety |
| | - italian |
| | - fine-tuned |
| | - gguf |
| | - unsloth |
| | - lora |
| | model_name: Infortun-IA |
| | pipeline_tag: text-generation |
| | --- |
| | |
| | # Infortun-IA |
| |
|
| | Modello LLM fine-tuned per la **prevenzione degli infortuni sul lavoro** in Italia. |
| |
|
| | Basato su Meta-Llama-3.1-8B-Instruct, addestrato su un dataset di oltre 10.000 casi reali di infortuni lavorativi italiani per fornire consulenza specializzata sulla sicurezza nei luoghi di lavoro. |
| |
|
| | ## Cosa fa |
| |
|
| | Dato un scenario di infortunio (tipo, settore, causa, luogo...), il modello: |
| |
|
| | - Analizza la dinamica dell'incidente |
| | - Identifica le cause e le mancanze |
| | - Fornisce raccomandazioni concrete e attuabili |
| | - Fa riferimento alla normativa italiana (D.Lgs. 81/2008) |
| |
|
| | ## Formati disponibili |
| |
|
| | | Formato | Cartella | Uso | |
| | |---|---|---| |
| | | GGUF Q4_K_M | `gguf/` | Ollama, llama.cpp, LM Studio | |
| | | Safetensors | `Unsloth/` | Transformers, vLLM, ulteriore fine-tuning | |
| |
|
| | ## Uso rapido con Ollama |
| |
|
| | ```bash |
| | # Scarica il file GGUF e il Modelfile dalla cartella gguf/ |
| | ollama create infortun-ia -f Modelfile |
| | ollama run infortun-ia |
| | ``` |
| |
|
| | ## Uso con Transformers |
| |
|
| | ```python |
| | from transformers import AutoModelForCausalLM, AutoTokenizer |
| | |
| | model = AutoModelForCausalLM.from_pretrained("Nick06888/Infortun-IA", subfolder="Unsloth") |
| | tokenizer = AutoTokenizer.from_pretrained("Nick06888/Infortun-IA", subfolder="Unsloth") |
| | |
| | messages = [ |
| | {"role": "system", "content": "Sei un consulente esperto di sicurezza sul lavoro in Italia."}, |
| | {"role": "user", "content": "Caduta da ponteggio in un cantiere edile, operaio senza imbracatura."} |
| | ] |
| | |
| | inputs = tokenizer.apply_chat_template(messages, return_tensors="pt") |
| | outputs = model.generate(inputs, max_new_tokens=1024, temperature=0.7) |
| | print(tokenizer.decode(outputs[0], skip_special_tokens=True)) |
| | ``` |
| |
|
| | ## Dettagli del training |
| |
|
| | | Parametro | Valore | |
| | |---|---| |
| | | Modello base | Meta-Llama-3.1-8B-Instruct | |
| | | Metodo | LoRA (rank 32) + Unsloth | |
| | | Dataset | [PreventiData](https://huggingface.co/datasets/Nick06888/PreventiData) - 10.000+ casi di infortuni lavorativi italiani | |
| | | Epoche | 2 | |
| | | Batch size effettivo | 32 | |
| | | Learning rate | 2e-4 | |
| | | Scheduler | Cosine | |
| | | Precisione | BF16, 4-bit quantization | |
| | | GPU | NVIDIA L40S | |
| |
|
| | ## Parametri estratti dal dataset |
| |
|
| | Ogni caso di infortunio nel dataset contiene 8 parametri strutturati: |
| |
|
| | 1. **Tipo di infortunio** - caduta, taglio, schiacciamento, ustione... |
| | 2. **Causa** - mancanza DPI, distrazione, guasto macchinario... |
| | 3. **Settore** - edilizia, metalmeccanico, chimico, agricoltura... |
| | 4. **Parte del corpo** - mano, schiena, occhi, piede... |
| | 5. **Gravita** - lieve, moderato, grave, mortale |
| | 6. **DPI utilizzati** - si, no, parziale + dettagli |
| | 7. **Luogo** - cantiere, officina, magazzino, campo aperto... |
| | 8. **Azioni preventive** - suggerimenti per prevenire l'infortunio |
| |
|
| | ## Limiti |
| |
|
| | - Il modello fornisce consigli generali, non sostituisce un consulente RSPP certificato |
| | - Le risposte si basano su pattern appresi dai dati e potrebbero non coprire tutti gli scenari |
| | - Riferimenti normativi: il modello conosce il D.Lgs. 81/2008 ma potrebbe non essere aggiornato su modifiche successive |
| |
|
| | ## Licenza |
| |
|
| | Questo modello eredita la licenza di Meta-Llama-3.1-8B-Instruct (Llama 3.1 Community License). |
| |
|