Collection - Leesplank Noot
Nederlandstalige taalmodellen gefinetuned voor tekstvereenvoudiging naar B1-niveau.
Modellen & Prestaties
Gepubliceerde Modellen
| Model | HuggingFace Link | SARI Score | Snelheid (beam/greedy) | #Params |
|---|---|---|---|---|
| Granite-3.3-2b | UWV/leesplank-noot-granite-3.3-2b | 67.80 ±0.22 | 8.30 / 9.53 | 2B |
| Llama-3.2-3b | UWV/leesplank-noot-llama-3.2-3b | 67.50 ±0.50 | 13.96 / 15.91 | 3B |
| EuroLLM-1.7b | UWV/leesplank-noot-eurollm-1.7b | 66.44 ±0.32 | 24.08 / 27.50 | 1.7B |
SARI Benchmark: Beam Search (num_beams=5), 1000 samples, 3 runs met 95% betrouwbaarheidsinterval Snelheid: Beam Search / Greedy decoding (tokens per seconde) ran on RTX3090
Model Selectie
- Hoogste kwaliteit → Granite-3.3-2b (SARI 67.80)
- Snelste inferentie → EuroLLM-1.7b (27.50 tokens/sec met greedy)
- Beperkt GPU geheugen → EuroLLM-1.7b (1.7B parameters)
- Gebalanceerd → Granite-3.3-2b (beste kwaliteit) of Llama-3.2-3b (goede snelheid)
Gebruik
Quick Start
from transformers import pipeline
models = [
"UWV/leesplank-noot-llama-3.2-3b",
"UWV/leesplank-noot-eurollm-1.7b",
"UWV/leesplank-noot-granite-3.3-2b"
]
text = "Een pekdruppelexperiment is een langetermijnexperiment dat het vloeien van een stuk pek meet over vele jaren. Pek is een verzamelnaam voor een aantal vloeistoffen met een zeer hoge viscositeit, zoals teer en bitumen, die er bij kamertemperatuur uitzien als een vaste stof, maar in feite zeer dik vloeibaar zijn en uiteindelijk druppels vormen."
results = {}
for model_path in models:
model_short_name = model_path.split("/")[-1]
model = pipeline(
"text-generation",
model=model_path,
torch_dtype="auto",
device_map="auto"
)
if "eurollm" in model_path:
# EuroLLM performs better without system prompt
messages = [{
"role": "user",
"content": f"Vereenvoudig: {text}"
}]
else:
# Use unified system prompt for both Llama and Granite
messages = [
{
"role": "system",
"content": "Je bent een AI-assistent die Nederlandse teksten vereenvoudigt naar een helder, toegankelijk niveau voor iedereen, vergelijkbaar met de heldere taal die het Jeugdjournaal gebruikt. Behoud de betekenis en belangrijke informatie, maar gebruik eenvoudigere woorden en kortere zinnen. Schrijf niet kinderlijk, maar wel toegankelijk."
},
{"role": "user", "content": f"Vereenvoudig: {text}"}
]
output = model(
messages,
max_new_tokens=150,
return_full_text=False,
do_sample=False, # Gebruik greedy decoding voor consistentie
eos_token_id=model.tokenizer.eos_token_id # Zorg voor proper stopping
)
generated_text = output[0]["generated_text"]
results[model_short_name] = generated_text
print(f"Original text: \"{text}\"")
for model_name, simplified_text in results.items():
print(f'\n{model_name}:')
Dit produceert deze uitvoer:
- Original text: "Een pekdruppelexperiment is een langetermijnexperiment dat het vloeien van een stuk pek meet over vele jaren. Pek is een verzamelnaam voor een aantal vloeistoffen met een zeer hoge viscositeit, zoals teer en bitumen, die er bij kamertemperatuur uitzien als een vaste stof, maar in feite zeer dik vloeibaar zijn en uiteindelijk druppels vormen."
- leesplank-noot-llama-3.2-3b: "Een pekdruppelexperiment is een test die heel lang duurt. Het kijkt hoe lang het duurt voordat een stuk pek verandert in druppels. Pek is een soort dikke vloeistof die lijkt op een vaste stof als het niet warm is. Maar eigenlijk is het heel dik en kan het uiteindelijk in druppels veranderen. Dit experiment meet hoe lang het duurt voordat dat gebeurt."
- leesplank-noot-eurollm-1.7b: "Een pekdruppelexperiment is een test die laat zien hoe een stuk pek, dat heel dik is, langzaam verandert in druppels over een lange tijd. Pek is een soort dikke vloeistof die lijkt op teer of bitumen. Als het niet warm is, ziet het eruit als een harde stof. Maar als het afkoelt, wordt het heel dun en vormt het uiteindelijk druppels. Dit experiment helpt ons te begrijpen hoe dik vloeistoffen kunnen worden."
- leesplank-noot-granite-3.3-2b: "Een pekdruppelexperiment is een test die heel lang duurt. Het kijkt hoe een stuk pek langzaam beweegt en verandert in druppels. Pek is een soort dikke vloeistof, zoals teer. Het lijkt hard, maar als je het beweegt, wordt het vloeibaar en vormt het druppels. Dit experiment laat zien hoe lang het duurt voordat de pek helemaal in druppels verandert."
Aanbevolen voor
- Vereenvoudigen van teksten naar B1-niveau
- Begrijpelijk maken van klantcommunicatie en formulieren
- Genereren van toegankelijke content voor dienstverlening
- Vertaling van complexe teksten naar lekentaal
Niet aanbevolen voor
- Besluitvorming zonder menselijk toezicht
- Medische of juridische adviezen zonder review
- Domeinen waar nuanceverlies direct schadelijk kan zijn
- Real-time kritieke systemen zonder fallback
Training Details
Dataset
UWV/Leesplank_NL_wikipedia_simplifications_preprocessed (CC-BY-SA 4.0)
- 1.89M training, 540k validation, 269k test samples
- Paragraaf-niveau vereenvoudiging (niet woord/zin niveau)
- 99.4% past binnen 1024 tokens
Training Setup
- Method: Full fine-tuning (geen LoRA/QLoRA)
- Epochs: 2
- Batch size: 64
- Learning rate: 5e-5 (Granite/Llama), 7e-5 (EuroLLM)
- Precision: bfloat16
EU AI Act Compliance
Voor productie gebruik in overheidscontext:
- Menselijk toezicht - Alle output moet gecontroleerd worden
- Transparantie - Label output als "AI-vereenvoudigde tekst"
- Logging - Registreer input/output veilig en versleuteld
- Registratie - Voeg toe aan algoritmeregister
- FRIA - Voer lichte fundamentele rechten assessment uit
Beperkingen
- Nuanceverlies kan optreden
- Bias uit trainingsdata mogelijk aanwezig
- Minder geschikt buiten Wikipedia domeinen
- Vereist menselijke review voor kritieke toepassingen
Licenties
- Modellen: Apache 2.0
- Dataset: CC-BY-SA 4.0
- Code: Apache 2.0
Waarom Open Source?
Nederlandse overheidsorganisaties werken aan vergelijkbare oplossingen voor tekstvereenvoudiging. Door deze modellen open source te publiceren kunnen organisaties voortbouwen op bestaand werk, tijd en middelen besparen, en kennis delen. De modellen zijn ontwikkeld met aandacht voor EU AI Act principes: transparantie, herleidbaarheid en controleerbaarheid.
Contact
- Maintainer: UWV Innovatie Hub - [email protected]
- Issues: Via HuggingFace