De vraag is niet langer of LLM’s beter zijn dan traditionele NLP-modellen. De nuttige vraag is: welk onderdeel van mijn pipeline heeft welke aanpak nodig? Deze checklist is bedoeld voor teams die al een product in productie hebben en twijfelen tussen het vervangen van hun klassieke stack (spaCy, scikit-learn, regex, CRF, statische embeddings) door een generatief model, of het behouden van beide.
Elk punt is een verifieerbare beslissing, geen mening. Als je minder dan de helft afvinkt, hoef je waarschijnlijk nog niet te migreren.
1. Definieer de taak voordat je technologie kiest
1.1 Is het gesloten extractie of open begrip?
Als je velden met een vast schema moet extraheren (datums, bedragen, btw-nummers, entiteiten uit een specifiek domein), wint een traditioneel supervised model met eigen labeling meestal op precisie en kosten. LLM’s schitteren wanneer het schema elke week verandert of wanneer de output redenering over de tekst vereist.
1.2 Heb je exacte reproduceerbaarheid nodig?
Een logistische regressieclassifier op TF-IDF geeft dezelfde voorspelling bij dezelfde input. Een LLM met een temperatuur groter dan nul niet. Als je product audit, naleving van regelgeving of scoring is, weegt exacte determinatie zwaarder dan vloeiendheid.
1.3 Is er een referentiemetriek?
Voordat je iets verandert, leg je een baseline vast: F1 per klasse op een bevroren testset. Volgens documentatie van leveranciers van klassieke NLP bereiken lineaire modellen bij tekstclassificatietaken met goed gedefinieerde categorieën en duizenden gelabelde voorbeelden vaak waarden die dicht bij die van grote modellen liggen, tegen een fractie van de kosten. Zonder die baseline kun je de migratie niet rechtvaardigen.
2. Controleer de werkelijke kosten, niet die van de demo
2.1 Latentie per verzoek
Een klassiek model op CPU antwoordt in milliseconden. Een LLM in de cloud voegt netwerk- en generatielatentie toe. Voor een interne zoekfunctie of automatische aanvulling is dat verschil zichtbaar voor de gebruiker. Dit werkt niet voor X: gebruik geen LLM op het kritieke pad van een interface die een reactie onder de 200 ms vereist, tenzij je agressieve caching of een klein lokaal model hebt.
2.2 Kosten per volume
Maak de rekensom met je werkelijke verkeer: gemiddelde invoertokens × verzoeken × prijs van het model. Een traditionele classifier die één keer is getraind, kost vrijwel hetzelfde bij 10.000 als bij 10 miljoen inferenties. Veel teams ontdekken in productie dat 80% van hun aanroepen triviale taken betreft die een klassiek model net zo goed oploste.
2.3 Onderhoudskosten van labeling
Het klassieke model vereist het annoteren van data. De LLM vereist het schrijven van prompts, systematisch evalueren en het bewaken van versiewijzigingen van de leverancier. Beide hebben menselijke kosten; kies degene die je team kan volhouden.
3. Verifieer de kwaliteit met eigen data
3.1 Test in het domein, niet op publieke benchmarks
Een LLM kan hoog scoren op een algemene benchmark en falen op jouw jargon. Een concreet geval dat vaak voorkomt bij supportteams: een klassiek model dat was getraind met historische tickets identificeerde de categorie factureringsklacht correct omdat het de interne afkortingen van het bedrijf had geleerd; de algemene LLM, zonder voorbeelden van die afkortingen in de prompt, verwarde ze met productnamen. De oplossing was niet de LLM afschrijven, maar een stap voor normalisatie met het klassieke model toevoegen.
3.2 Evalueer met stratificatie naar moeilijkheid
Splits je test in makkelijke, ambigue en adversariële gevallen. Het is gebruikelijk dat de LLM wint bij ambigue gevallen en gelijk speelt of verliest bij makkelijke. Als je werkelijke verdeling overwegend makkelijk is, misleidt het gemiddelde.
3.3 Meet hallucinatie, niet alleen trefzekerheid
Bij extractie is een verzonnen veld erger dan een leeg veld. Klassieke modellen falen door het meest waarschijnlijke label terug te geven; LLM’s kunnen de waarde fabriceren. Definieer een metriek voor correcte onthouding.
4. Controleer vereisten voor privacy en implementatie
4.1 Mogen de data je infrastructuur verlaten?
Als de tekst persoonsgegevens, contracten of medische informatie bevat, vereist verzending naar een externe API juridische toetsing. Een lokaal klassiek model elimineert dat risico volledig. Zelfgehoste LLM’s bestaan, maar veranderen het kostenprofiel: je hebt een GPU nodig en iemand die deze onderhoudt.
4.2 Moet je offline kunnen werken?
Apparaten in het veld, kiosken, industriële omgevingen: het ingebedde klassieke model blijft de pragmatische optie. Een klein gequantiseerd LLM kan lokaal draaien, maar de kwaliteit bij complexe taken daalt en moet taak voor taak worden gevalideerd.
5. Controleer of het probleem bij de data ligt, niet bij het model
5.1 Volume aan beschikbare labels
Met minder dan een paar honderd voorbeelden per klasse schiet het klassieke model tekort en begint de LLM met few-shot met een voorsprong. Bij tienduizenden wordt de voorsprong kleiner en wordt de kosten per inferentie de beslissende factor.
5.2 Domeinverschuiving
Als je vocabulaire snel verandert (nieuwe producten, nieuw jargon), degradeert het klassieke model en moet je opnieuw trainen. De LLM absorbeert de verandering beter zonder hertraining, maar introduceert variabiliteit. Een robuust patroon is de LLM gebruiken om nieuwe labels te genereren en het klassieke model om op schaal te serveren.
5.3 Talen en varianten
Meertalige klassieke modellen bestaan, maar hun prestaties bij dialectvarianten of informele tekst zijn ongelijkmatig. LLM’s generaliseren meestal beter bij talen met weinig bronnen. Verifieer toch met echte samples: ga er niet van uit dat een groot model je lokale variant beter begrijpt dan een model dat met jouw data is getraind.
6. Kies de hybride architectuur boven vervanging
6.1 Twee-fasenpatroon
Klassiek model om het hoge volume te filteren en classificeren; LLM alleen voor de gevallen die een betrouwbaarheidsdrempel overschrijden. Dat verlaagt de kosten en behoudt de kwaliteit waar het ertoe doet.
6.2 Patroon voor datageneratie
Gebruik de LLM om een eerste batch te labelen, controleer een menselijke steekproef en train een klassiek model met die labels. Het is een in de praktijk gedocumenteerde manier om de annotatiekosten te verlagen zonder afstand te doen van een deterministische server.
6.3 Fallback-patroon
Als de LLM faalt of een output teruggeeft die niet aan het schema voldoet, val terug op het klassieke model. Laat een storing van de externe API nooit je volledige flow breken.
7. Definitieve checklist voordat je productie aanraakt
- ☐ Ik heb een baseline gemeten met mijn eigen test, niet met publieke benchmarks.
- ☐ Ik heb kosten en latentie berekend met mijn werkelijke volume, niet met een demo.
- ☐ Ik weet welke taken determinisme vereisen en welke variabiliteit tolereren.
- ☐ Ik heb privacy en locatie van de data besproken met de juiste personen.
- ☐ Ik heb een metriek voor onthouding, niet alleen voor trefzekerheid.
- ☐ Er bestaat een fallback-plan als de leverancier het model wijzigt.
- ☐ Ik heb de hybride aanpak getest voordat ik volledig vervang.
- ☐ Ik heb gedocumenteerd wat ik niet weet: beperkingen van het model in mijn domein en niet-afgedekte gevallen.
Geen van deze punten garandeert resultaten. De bewijslast uit de sector wijst erop dat teams die beide aanpakken behouden een betere kwaliteit-kostenverhouding behalen dan teams die alles op één technologie inzetten, maar elk domein heeft zijn uitzonderingen en die kun je maar beter meten.