|
Quantization made by Richard Erkhov. |
|
|
|
[Github](https://github.com/RichardErkhov) |
|
|
|
[Discord](https://discord.gg/pvy7H8DZMG) |
|
|
|
[Request more models](https://github.com/RichardErkhov/quant_request) |
|
|
|
|
|
GePpeTto - bnb 8bits |
|
- Model creator: https://huggingface.co/LorenzoDeMattei/ |
|
- Original model: https://huggingface.co/LorenzoDeMattei/GePpeTto/ |
|
|
|
|
|
|
|
|
|
Original model description: |
|
--- |
|
language: it |
|
--- |
|
|
|
# GePpeTto GPT2 Model 🇮🇹 |
|
|
|
Pretrained GPT2 117M model for Italian. |
|
|
|
You can find further details in the paper: |
|
|
|
Lorenzo De Mattei, Michele Cafagna, Felice Dell’Orletta, Malvina Nissim, Marco Guerini "GePpeTto Carves Italian into a Language Model", arXiv preprint. Pdf available at: https://arxiv.org/abs/2004.14253 |
|
|
|
## Pretraining Corpus |
|
|
|
The pretraining set comprises two main sources. The first one is a dump of Italian Wikipedia (November 2019), |
|
consisting of 2.8GB of text. The second one is the ItWac corpus (Baroni et al., 2009), which amounts to 11GB of web |
|
texts. This collection provides a mix of standard and less standard Italian, on a rather wide chronological span, |
|
with older texts than the Wikipedia dump (the latter stretches only to the late 2000s). |
|
|
|
## Pretraining details |
|
|
|
This model was trained using GPT2's Hugging Face implemenation on 4 NVIDIA Tesla T4 GPU for 620k steps. |
|
|
|
Training parameters: |
|
|
|
- GPT-2 small configuration |
|
- vocabulary size: 30k |
|
- Batch size: 32 |
|
- Block size: 100 |
|
- Adam Optimizer |
|
- Initial learning rate: 5e-5 |
|
- Warm up steps: 10k |
|
|
|
## Perplexity scores |
|
|
|
| Domain | Perplexity | |
|
|---|---| |
|
| Wikipedia | 26.1052 | |
|
| ItWac | 30.3965 | |
|
| Legal | 37.2197 | |
|
| News | 45.3859 | |
|
| Social Media | 84.6408 | |
|
|
|
For further details, qualitative analysis and human evaluation check out: https://arxiv.org/abs/2004.14253 |
|
|
|
## Load Pretrained Model |
|
|
|
You can use this model by installing Huggingface library `transformers`. And you can use it directly by initializing it like this: |
|
|
|
```python |
|
from transformers import GPT2Tokenizer, GPT2Model |
|
|
|
model = GPT2Model.from_pretrained('LorenzoDeMattei/GePpeTto') |
|
tokenizer = GPT2Tokenizer.from_pretrained( |
|
'LorenzoDeMattei/GePpeTto', |
|
) |
|
``` |
|
|
|
## Example using GPT2LMHeadModel |
|
|
|
```python |
|
from transformers import AutoTokenizer, AutoModelWithLMHead, pipeline, GPT2Tokenizer |
|
|
|
tokenizer = AutoTokenizer.from_pretrained("LorenzoDeMattei/GePpeTto") |
|
model = AutoModelWithLMHead.from_pretrained("LorenzoDeMattei/GePpeTto") |
|
|
|
text_generator = pipeline('text-generation', model=model, tokenizer=tokenizer) |
|
prompts = [ |
|
"Wikipedia Geppetto", |
|
"Maestro Ciliegia regala il pezzo di legno al suo amico Geppetto, il quale lo prende per fabbricarsi un burattino maraviglioso"] |
|
|
|
|
|
samples_outputs = text_generator( |
|
prompts, |
|
do_sample=True, |
|
max_length=50, |
|
top_k=50, |
|
top_p=0.95, |
|
num_return_sequences=3 |
|
) |
|
|
|
|
|
for i, sample_outputs in enumerate(samples_outputs): |
|
print(100 * '-') |
|
print("Prompt:", prompts[i]) |
|
for sample_output in sample_outputs: |
|
print("Sample:", sample_output['generated_text']) |
|
print() |
|
|
|
``` |
|
|
|
Output is, |
|
|
|
``` |
|
---------------------------------------------------------------------------------------------------- |
|
Prompt: Wikipedia Geppetto |
|
Sample: Wikipedia Geppetto rosso (film 1920) |
|
|
|
Geppetto rosso ("The Smokes in the Black") è un film muto del 1920 diretto da Henry H. Leonard. |
|
|
|
Il film fu prodotto dalla Selig Poly |
|
|
|
Sample: Wikipedia Geppetto |
|
|
|
Geppetto ("Geppetto" in piemontese) è un comune italiano di 978 abitanti della provincia di Cuneo in Piemonte. |
|
|
|
L'abitato, che si trova nel versante valtellinese, si sviluppa nella |
|
|
|
Sample: Wikipedia Geppetto di Natale (romanzo) |
|
|
|
Geppetto di Natale è un romanzo di Mario Caiano, pubblicato nel 2012. |
|
|
|
---------------------------------------------------------------------------------------------------- |
|
Prompt: Maestro Ciliegia regala il pezzo di legno al suo amico Geppetto, il quale lo prende per fabbricarsi un burattino maraviglioso |
|
Sample: Maestro Ciliegia regala il pezzo di legno al suo amico Geppetto, il quale lo prende per fabbricarsi un burattino maraviglioso. Il burattino riesce a scappare. Dopo aver trovato un prezioso sacchetto si reca |
|
|
|
Sample: Maestro Ciliegia regala il pezzo di legno al suo amico Geppetto, il quale lo prende per fabbricarsi un burattino maraviglioso, e l'unico che lo possiede, ma, di fronte a tutte queste prove |
|
|
|
Sample: Maestro Ciliegia regala il pezzo di legno al suo amico Geppetto, il quale lo prende per fabbricarsi un burattino maraviglioso: - A voi gli occhi, le guance! A voi il mio pezzo! |
|
``` |
|
|
|
## Citation |
|
|
|
Please use the following bibtex entry: |
|
|
|
``` |
|
@misc{mattei2020geppetto, |
|
title={GePpeTto Carves Italian into a Language Model}, |
|
author={Lorenzo De Mattei and Michele Cafagna and Felice Dell'Orletta and Malvina Nissim and Marco Guerini}, |
|
year={2020}, |
|
eprint={2004.14253}, |
|
archivePrefix={arXiv}, |
|
primaryClass={cs.CL} |
|
} |
|
``` |
|
|
|
## References |
|
|
|
Marco Baroni, Silvia Bernardini, Adriano Ferraresi, |
|
and Eros Zanchetta. 2009. The WaCky wide web: a |
|
collection of very large linguistically processed webcrawled corpora. Language resources and evaluation, 43(3):209–226. |
|
|
|
|
|
|