Files
Ailo152m-events-it/README.md
ModelHub XC 52abc0f51a 初始化项目,由ModelHub XC社区提供模型
Model: xxrickyxx/Ailo152m-events-it
Source: Original Platform
2026-08-14 11:23:17 +08:00

104 lines
3.8 KiB
Markdown

---
license: cc-by-nc-sa-4.0
language:
- it
tags:
- text-generation
- information-extraction
- structured-output
- json
- ner
- small-language-model
- edge-ai
- on-device
- ollama
- gguf
- calendar
- italian
pipeline_tag: text-generation
library_name: gguf
model-index:
- name: AILO-152M-Events-IT
results: []
---
# AILO-152M-Events-IT Linguaggio naturale italiano → evento JSON 🇮🇹⚡
> **Uno specialista da 152M** che trasforma una frase italiana in un **evento JSON** pulito — titolo, data, ora, luogo, partecipanti — e gira quasi ovunque.
Specialista di un solo compito, costruito su AILO-152M: legge la descrizione di un evento in italiano e produce JSON strutturato. Minuscolo, veloce, deterministico — ideale come "parser" di un'app calendario, un assistente o un'automazione.
```bash
ollama run Alieno/ailo-152m-events-it
>>> Pranzo con Sara domani alle 13 al nuovo ristorante giapponese
{"titolo": "pranzo", "data": "domani", "ora": "13:00", "luogo": "ristorante giapponese", "partecipanti": ["Sara"]}
```
## Schema
```json
{"titolo": str, "data": str|null, "ora": "HH:MM"|null, "luogo": str|null, "partecipanti": [str]}
```
- **ora normalizzata** a 24h `HH:MM`*"alle 3 del pomeriggio"*`15:00`, *"alle 7 e mezza"*`07:30`, *"a mezzogiorno"*`12:00`.
- **data estratta com'è scritta** (*"domani"*, *"venerdì prossimo"*, *"15 marzo"*) — **non** risolta in data di calendario (il modello non ha un orologio).
- Campi assenti → `null`; nessun partecipante → `[]`.
## Benchmark (test set held-out, 1500 esempi mai visti)
| Metrica | Valore |
|---|---|
| **JSON valido** | **100%** |
| Oggetto esatto | 85.7% |
| `titolo` | 97.7% |
| `data` | **100%** |
| `ora` (normalizzata) | 99.7% |
| `luogo` | 87.3% |
| `partecipanti` | 97.7% |
**Generalizza** su frasi libere reali (ha imparato a *copiare lo span*, non a classificare): *"Chiama la mamma stasera"*`{"titolo": "chiamare la mamma", ...}`, *"Festa di compleanno sabato da Luca con tutti"*`{"titolo": "festa di compleanno", "luogo": "da Luca", "partecipanti": ["tutti"]}`.
## Usarlo in un'app
```bash
curl http://localhost:11434/api/chat -d '{
"model": "Alieno/ailo-152m-events-it",
"messages": [{"role": "user", "content": "Riunione veloce col team lunedì alle 10 su Zoom"}],
"stream": false,
"options": {"temperature": 0.0}
}'
```
Tag: `:latest` / `:q8_0` (migliore, 156 MB) · `:q4_k_m` (più piccolo, 97 MB) · `:f16` (291 MB).
Usa **temperature 0** per JSON deterministico; `repeat_penalty` basso (1.05) così la punteggiatura del JSON non viene penalizzata.
## Dettagli
| Proprietà | Valore |
|---|---|
| Parametri | 151,9M |
| Architettura | Transformer decoder-only (LayerNorm · RoPE · SwiGLU), 12L/768/12H, ctx 512 |
| Base | AILO-152M-v2-ITA → specializzato sull'estrazione eventi |
| Training | 26k coppie sintetiche (frase → JSON), vocabolario aperto/compositivo (~1500 titoli unici) per imparare a **copiare lo span** |
| Formati | GGUF (q4_k_m, q8_0, f16) + PyTorch |
## Limiti
- **Le date non vengono risolte** in date assolute — la frase è estratta com'è.
- Forme orarie/locuzioni rare (*"all'una"*, *"col"* al posto di *"con il"*) possono sfuggire.
- Un evento per input; solo italiano; contesto 512 token (frasi brevi).
- Per voci di calendario esatte, risolvi la data relativa a valle con fuso/orologio dell'utente.
## Licenza & contatti
Doppia licenza: **CC BY-NC-SA 4.0** (libera per ricerca/didattica/uso personale) + **commerciale** con accordo separato.
**Riccardo Sparacino** — [LinkedIn](https://www.linkedin.com/in/riccardo-sparacino-developer-php-javascript-mysql-app-ios-android/)
```bibtex
@misc{ailo152m_events_it_2026,
title = {AILO-152M-Events-IT: estrattore italiano da linguaggio naturale a evento JSON},
author = {Sparacino, Riccardo}, year = {2026},
note = {Dual-licensed CC BY-NC-SA 4.0 / commerciale}
}
```