s-conia's picture
Update README.md
c4bac46 verified
|
raw
history blame
4.43 kB
metadata
license: mit
language:
  - it

Model Card for Modello Italia 9B

Modello Italia is the first Large Language Model (LLM) developed by iGenius in collaboration CINECA.

  • More information about Modello Italia: click here.

🚨 Disclaimers

  • This is an UNOFFICIAL conversion of the OFFICIAL model checkpoint released by iGenius.
  • The original model was developed using LitGPT, therefore, the weights need to be converted before they can be used with Hugging Face transformers.
  • Note: By using this model, you accept the iGenius' terms and conditions.

🚨 Biases and Risks

From the terms and conditions of iGenius for Modello Italia:

Modello Italia è concepito per essere utilizzato da tutti e per adattarsi a una vasta gamma di casi d'uso. È stato progettato con l'obiettivo di essere accessibile a persone provenienti da background, esperienze e prospettive diverse. Modello Italia si rivolge agli utenti e alle loro esigenze senza inserire giudizi superflui o normative, riconoscendo al contempo che anche contenuti potenzialmente problematici in determinati contesti possono avere scopi validi in altri. Il rispetto per la dignità e l'autonomia di tutti gli utenti, specialmente in termini di libertà di pensiero ed espressione, è un pilastro fondamentale del suo design. Tuttavia, essendo una nuova tecnologia, Modello Italia comporta rischi legati al suo utilizzo. I test condotti finora sono stati eseguiti in italiano e non hanno potuto coprire tutte le possibili situazioni. Pertanto, come per tutti gli LLM, non è possibile prevedere in anticipo gli output di Modello Italia e il modello potrebbe in alcuni casi generare risposte imprecise, tendenziose o altre risposte discutibili. Prima di utilizzare Modello Italia in qualsiasi contesto, gli sviluppatori sono fortemente incoraggiati a eseguire test di sicurezza e adattamento specifici per le loro applicazioni.

We are aware of the biases and potential problematic/toxic content that current pretrained large language models exhibit: more specifically, as probabilistic models of (Italian and English) languages, they reflect and amplify the biases of their training data.

For more information about this issue, please refer to our survey paper:

Training dataset

The following information is based on the information we could gather, that is, it is NOT official. Please take it with a pinch of salt as we continue to study Modello Italia.

  • The training data of Modello Italia is unknown;
  • Modello Italia is probably trained on around 1T tokens of Italian text;
  • We know that the training data is mostly Italian text and source code;
  • We know that the training data includes text from Editoria Nazionale.

Tokenizer

The following information is based on the information we could gather, that is, it is NOT official. Please take it with a pinch of salt as we continue to study Modello Italia.

  • The tokenizer is vanilla SentencePiece, probably trained from scratch on Italian data;
  • Vocabulary size is 50000.

Model architecture

The following information is based on the information we could gather, that is, it is NOT official. Please take it with a pinch of salt as we continue to study Modello Italia.

  • The model architecture is based on GPT-NeoX.

How to use Modello Italia with Hugging Face transformers

import torch
import transformers as tr

device = "cuda" if torch.cuda.is_available() else "cpu"

tokenizer = tr.AutoTokenizer.from_pretrained("sapienzanlp/modello-italia-9b")
model = tr.AutoModelForCausalLM.from_pretrained(
  "sapienzanlp/modello-italia-9b",
  device_map="auto",
  torch_dtype=torch.bfloat16
)

MY_SYSTEM_PROMPT_SHORT = (
  "Tu sei Modello Italia, un modello di linguaggio naturale addestrato da iGenius."
)
prompt = "Ciao, chi sei?"
messages = [
  {"role": "system", "content": MY_SYSTEM_PROMPT_SHORT},
  {"role": "user", "content": prompt},
]
tokenized_chat = tokenizer.apply_chat_template(
  messages, tokenize=True, add_generation_prompt=True, return_tensors="pt"
).to(device)

out = model.generate(
  tokenized_chat,
  max_new_tokens=200,
  do_sample=False
)