73 lines
2.7 KiB
Markdown
73 lines
2.7 KiB
Markdown
---
|
|
base_model: Qwen/Qwen3-1.7B
|
|
license: apache-2.0
|
|
language:
|
|
- it
|
|
tags:
|
|
- qwen3
|
|
- italian
|
|
- europagen
|
|
- merged
|
|
datasets:
|
|
- open-ita-llms/OpenSFT-ita
|
|
- anakin87/fine-instructions-ita-70k
|
|
- DeepMount00/o1-ITA-REASONING
|
|
---
|
|
|
|
# EuropaGen v1 (1.7B) — merged weights
|
|
|
|
**EuropaGen v1** è un modello linguistico open source da 1.7 miliardi di parametri, basato su **Qwen3-1.7B** e specializzato per l'italiano. È un progetto indipendente sviluppato e mantenuto da **Federico Barros** come unico sviluppatore.
|
|
|
|
Questo repository contiene i **pesi completi già uniti** (LoRA/QLoRA adapter fuso nel modello base) — nessun PEFT necessario per caricarlo, pronto per il deploy diretto (es. con vLLM).
|
|
|
|
Per la versione solo-adapter (più leggera, ~140MB), vedi [signorbuco/europagen-v1](https://huggingface.co/signorbuco/europagen-v1).
|
|
|
|
## Dettagli del modello
|
|
|
|
- **Modello base:** [Qwen/Qwen3-1.7B](https://huggingface.co/Qwen/Qwen3-1.7B) (Apache-2.0)
|
|
- **Metodo di fine-tuning:** QLoRA (rank 32, alpha 64), poi merge nei pesi completi
|
|
- **Parametri:** ~2.03B
|
|
- **Lingua:** Italiano
|
|
- **Sviluppatore:** Federico Barros (unico sviluppatore del progetto)
|
|
- **Licenza:** Apache-2.0
|
|
|
|
## Dati di training
|
|
|
|
| Dataset | Licenza |
|
|
|---|---|
|
|
| [open-ita-llms/OpenSFT-ita](https://huggingface.co/datasets/open-ita-llms/OpenSFT-ita) | Apache-2.0 |
|
|
| [anakin87/fine-instructions-ita-70k](https://huggingface.co/datasets/anakin87/fine-instructions-ita-70k) | Apache-2.0 |
|
|
| [DeepMount00/o1-ITA-REASONING](https://huggingface.co/datasets/DeepMount00/o1-ITA-REASONING) | CC BY 4.0 |
|
|
|
|
Tutte le licenze permettono uso commerciale con attribuzione.
|
|
|
|
## Come usarlo
|
|
|
|
```python
|
|
from transformers import AutoModelForCausalLM, AutoTokenizer
|
|
|
|
tokenizer = AutoTokenizer.from_pretrained("REPO_ID_QUI")
|
|
model = AutoModelForCausalLM.from_pretrained("REPO_ID_QUI", torch_dtype="bfloat16", device_map="auto")
|
|
|
|
messages = [{"role": "user", "content": "Chi sei?"}]
|
|
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
|
|
inputs = tokenizer(text, return_tensors="pt").to(model.device)
|
|
output = model.generate(**inputs, max_new_tokens=200, do_sample=False)
|
|
print(tokenizer.decode(output[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True))
|
|
```
|
|
|
|
Oppure con vLLM:
|
|
|
|
```bash
|
|
vllm serve REPO_ID_QUI
|
|
```
|
|
|
|
## Limiti
|
|
|
|
- Modello da 1.7B parametri: capacità di conoscenza enciclopedica limitata, non affidabile per fatti storici/tecnici precisi.
|
|
- Fine-tuning di scala contenuta (20k esempi, early stopping a ~64% della prima epoca): buona aderenza allo stile del dataset, non un salto di capacità generale.
|
|
|
|
## Licenza
|
|
|
|
Apache-2.0, in eredità dalla licenza del modello base Qwen3-1.7B e di tutti i dataset di training utilizzati.
|