Mattimax/DACMini
Descrizione
DACMini è un modello di linguaggio compatto progettato per chat in lingua italiana.
Basato su una architettura Transformer derivata da GroNLP/gpt2-small-italian, è ottimizzato per essere rapido, leggero e facilmente distribuibile su dispositivi a risorse limitate.
Fa parte della collezione Little_DAC (DATA-AI Chat), ed è l’ultimo e più grande modello della serie, pensato per offrire un compromesso ideale tra efficienza e qualità linguistica.
Questo modello è un esperimento e rimane in fase di sviluppo: le prestazioni possono risultare inferiori rispetto a modelli di dimensioni maggiori, ma è ottimizzato per velocità e compattezza.
Dataset di addestramento
Il modello è stato addestrato su un mix di dataset italiani provenienti da e-palmisano/italian_dataset_mix, composto da coppie user-assistant strutturate in formato conversazionale.
L’obiettivo è stato l’apprendimento di turni di dialogo naturali e coerenti in italiano.
Obiettivo
Allenare un modello linguistico leggero e performante per chatbot in lingua italiana, con particolare attenzione a:
- riduzione della latenza di generazione;
- supporto per prompt in formato chat (
<|user|>
,<|assistant|>
); - mantenimento di risposte naturali e grammaticalmente corrette in contesti brevi.
Caratteristiche tecniche
- Architettura: GPT-2 Small (italian adaptation)
- Dimensione del vocabolario: ~50.000 token
- Lunghezza massima del contesto: 512 token
- Numero di strati (layers): 12
- Numero di teste di attenzione: 12
- Dimensione embedding: 768
- Quantizzazione: supportata (8-bit / 4-bit opzionale con
bitsandbytes
)
Avvertenze e limitazioni
- Modello sperimentale: può produrre errori logici o risposte non pertinenti.
- Non addestrato per temi sensibili o contenuti specialistici.
- Prestazioni limitate su testi lunghi o conversazioni multi-turno.
- Non progettato per usi commerciali senza ulteriore validazione.
Uso previsto
- Chatbot sperimentali in lingua italiana.
- Applicazioni leggere o offline dove la dimensione del modello è critica.
- Test e prototipazione di pipeline NLP o dataset sintetici.
Consigliato: input brevi, contesti semplici e prompt formattati correttamente.
Esempio d’uso (Inferenza)
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
# Carica modello e tokenizer
model_name = "Mattimax/DACMini"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)
model.eval()
def chat_inference(prompt, max_new_tokens=150, temperature=0.7, top_p=0.9):
formatted_prompt = f"<|user|> {prompt.strip()} <|assistant|>"
inputs = tokenizer(formatted_prompt, return_tensors="pt")
with torch.no_grad():
output = model.generate(
**inputs,
max_new_tokens=max_new_tokens,
temperature=temperature,
top_p=top_p,
do_sample=True,
pad_token_id=tokenizer.pad_token_id or tokenizer.eos_token_id
)
generated_text = tokenizer.decode(output[0], skip_special_tokens=True)
response = generated_text.split("<|assistant|>")[-1].strip()
return response
# Esempio interattivo
if __name__ == "__main__":
while True:
user_input = input("👤 Utente: ")
if user_input.lower() in ["exit", "quit"]:
break
print("🤖 Assistant:", chat_inference(user_input), "\n")
Integrazione consigliata
- Applicazioni mobile o embedded → basso consumo di RAM e CPU.
- Sperimentazione NLP → utile per test di prompt, fine-tuning mirato o creazione di dati sintetici.
- Pipeline leggere di dialogo → compatibile con
transformers
ebitsandbytes
per quantizzazione.
Riferimenti
- Dataset: italian-dataset-mini
- Autore: Mattimax
- Organizzazione: M.INC
- Collezione: Little_DAC Collection
Citazione
Se utilizzi Mattimax/DACMini in un progetto, un articolo o qualsiasi lavoro, ti chiediamo gentilmente di citarlo usando il file CITATION.bib
incluso nel repository:
@misc{mattimax2025dacmini,
title = {{Mattimax/DACMini}: Un modello di linguaggio open source},
author = {Mattimax},
howpublished = {\url{https://huggingface.co/Mattimax/DACMini}},
year = {2025},
note = {License: MIT. Se usi questo modello, per favore citane la fonte originale.}
}
- Downloads last month
- 61