Zagreus 0.4B CulturaViva-ITA Chat

Questo modello è una versione fine-tuned e ottimizzata per la conversazione (Chat) del modello base mii-llm/zagreus-0.4B-ita. È stato addestrato sul dataset italiano DeepMount00/CulturaViva-ITA utilizzando il formato ChatML, rendendolo capace di interagire tramite turni di dialogo (Utente/Assistente).

Model Details

Model Description

Questo modello è stato creato applicando il Supervised Fine-Tuning (SFT) tramite la libreria trl e peft (LoRA). I pesi dell'adattatore LoRA sono stati successivamente fusi (merged) con il modello base per fornire un modello standalone pronto all'uso. Il vocabolario e gli embedding sono stati ridimensionati per supportare nativamente i token speciali del formato ChatML (<|im_start|> e <|im_end|>).

  • Developed by: nickprock (Sostituisci con il tuo nome/organizzazione)
  • Model type: Causal Language Model (AutoRegressive)
  • Language(s) (NLP): Italiano (it)
  • License: MIT
  • Finetuned from model: mii-llm/zagreus-0.4B-ita

Uses

Direct Use

Il modello è progettato per essere utilizzato come assistente conversazionale leggero in lingua italiana. Può rispondere a domande, fornire spiegazioni e interagire in modo naturale grazie all'addestramento sul dataset CulturaViva-ITA. È ideale per test, prototipazione veloce e applicazioni che richiedono bassi requisiti hardware.

Out-of-Scope Use

A causa delle sue dimensioni ridotte (circa 400 milioni di parametri), il modello è fortemente prono ad allucinazioni (inventare fatti). Non deve essere utilizzato per:

  • Fornire consigli medici, legali o finanziari.
  • Sistemi di produzione critici senza supervisione umana (Human-in-the-loop).
  • Generazione di informazioni fattuali garantite.

Bias, Risks, and Limitations

Il modello eredita i bias linguistici e culturali presenti nel modello base e nel dataset di fine-tuning. Poiché il dataset CulturaViva-ITA raccoglie dati in lingua italiana, le risposte rifletteranno le prospettive presenti in tali testi. Si consiglia cautela nell'uso in contesti sensibili.

Recommendations

Si raccomanda agli sviluppatori di implementare filtri di moderazione in output e di testare a fondo il modello per i propri casi d'uso specifici prima del rilascio ad un pubblico ampio.

How to Get Started with the Model

Usa il codice seguente per caricare il modello e chattare sfruttando il chat_template integrato.

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline

model_id = "nickprock/zagreus-0.4B-CulturaViva-ITA-Chat"

tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    device_map="auto",
    torch_dtype=torch.bfloat16
)

pipe = pipeline("text-generation", model=model, tokenizer=tokenizer)

messages = [
    {"role": "user", "content": "Parlami della storia di Roma in breve."}
]

prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)

outputs = pipe(
    prompt,
    max_new_tokens=256,
    do_sample=True,
    temperature=0.7,
    top_p=0.9
)

print(outputs[0]["generated_text"])

Training Details

Training Data

Il modello è stato addestrato sul dataset DeepMount00/CulturaViva-ITA, una raccolta di prompt e risposte in italiano volta a migliorare le capacità di instruction-following. I dati sono stati pre-processati per aderire alla struttura dei messaggi ChatML.

Training Procedure

L'addestramento è avvenuto tramite LoRA (Low-Rank Adaptation) per ottimizzare l'uso della memoria VRAM, utilizzando tecniche di gradient checkpointing e ottimizzazione della precisione (bfloat16).

Training Hyperparameters

  • Training regime: bfloat16 non-mixed precision
  • LoRA Rank (r): 16
  • LoRA Alpha: 16
  • Target Modules: all-linear
  • Learning Rate: 1e-4 (Optimizer: AdamW)
  • Epochs: 1
  • Max Steps: 3232
  • Per Device Train Batch Size: 1
  • Gradient Accumulation Steps: 16
  • Max Sequence Length: 512 tokens

Training Results

L'addestramento ha mostrato una convergenza eccellente e stabile nel corso di una singola epoca, come dimostrato dalla costante diminuzione della Loss di validazione e dall'aumento dell'accuratezza media sui token previsti.

Step Epoch Training Loss (Media) Validation Loss Validation Entropy Validation Accuracy
200 0.06 1.603 1.601 1.592 64.33%
400 0.12 1.547 1.539 1.524 65.28%
600 0.18 1.498 1.510 1.497 65.77%
800 0.24 1.508 1.493 1.489 66.05%
1000 0.30 1.464 1.481 1.463 66.25%
1200 0.37 1.465 1.472 1.459 66.41%
1400 0.43 1.467 1.465 1.449 66.52%
1600 0.49 1.484 1.459 1.457 66.61%
1800 0.55 1.457 1.454 1.442 66.71%
2000 0.61 1.441 1.450 1.435 66.77%
2200 0.68 1.448 1.447 1.435 66.82%
2400 0.74 1.443 1.445 1.436 66.87%
2600 0.80 1.465 1.443 1.430 66.88%
2800 0.86 1.440 1.442 1.430 66.91%
3000 0.92 1.453 1.441 1.435 66.92%
3200 0.99 1.458 1.440 1.429 66.93%

(Nota: La metrica "Validation Accuracy" indica l'accuratezza del modello nel prevedere il token successivo durante la generazione).

Environmental Impact

L'addestramento è stato eseguito su un'infrastruttura efficiente, minimizzando l'impatto grazie alla tecnica PEFT (Parameter-Efficient Fine-Tuning) e all'accumulo dei gradienti.

  • Hardware Type: Singola GPU NVIDIA serie RTX 5000
  • Precision: Native bfloat16
  • Training Time: ~6 ore

Technical Specifications

Model Architecture and Objective

Modello basato su architettura Transformer (decoder-only) addestrato con l'obiettivo del Causal Language Modeling (CLM) tramite Supervised Fine-Tuning (SFT).

Compute Infrastructure

Software

  • transformers
  • peft
  • trl
  • datasets
  • torch
Downloads last month
1
Safetensors
Model size
0.4B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for nickprock/zagreus-0.4B-CulturaViva-ITA-Chat

Finetuned
(5)
this model
Quantizations
1 model

Dataset used to train nickprock/zagreus-0.4B-CulturaViva-ITA-Chat