Taal: NL

Zo rekenen we

Slopcheck geeft een tekst twee getallen: informatiewinst en slop. Hieronder lees je wat ze betekenen en hoe we de methode in 5 versies hebben gebouwd. We gebruikten meer dan 10.000 openbare bugrapporten uit Apache Jira en Mozilla Bugzilla, 35 met de hand beoordeelde teksten en 2.424 trainingsteksten die een taalmodel beoordeelde, en we noemen wat niet werkte.

Methodeversie s3, 24 oktober 2026.

Informatiewinst

Een lezer komt met vragen naar een tekst: wat er precies moet gebeuren, waar, wanneer, hoeveel, onder welke voorwaarden en waarom. Informatiewinst is het aandeel van die vragen dat de tekst beantwoordt. Bij 100% heeft de lezer niets meer te vragen; een formulier met lege velden zit dicht bij 0%. Het model in je browser schat dit aandeel als een cijfer van 0 tot 10 en toont het in stappen van 5%.

Het idee gaat terug op Claude Shannon, die informatie in bits mat: één bit is het antwoord op één ja-neevraag (Shannon, 1948). Een bugrapport dat zegt “grote exports mislukken”, laat de ontwikkelaar gissen naar “12.300 rijen of 11.000”, de ene ja-neevraag na de andere; “exports van meer dan 10.000 rijen mislukken” beantwoordt ze allemaal tegelijk. Warren Weaver beschreef drie niveaus van communicatie: of de symbolen aankomen, of ze de bedoelde betekenis overbrengen en of ze veranderen wat de ontvanger doet (Weaver, 1949); Slopcheck werkt op het tweede en het derde niveau.

Informatiewinst in SEO

In SEO betekent informatiewinst (in het Engels: “information gain”) wat een pagina toevoegt aan de pagina’s die de lezer al heeft gezien. Google heeft een octrooi op zo’n score, “Contextual estimation of link information gain” (US 11,354,342 B2, verleend op 7 juni 2022). Een octrooi bewijst niet dat een score in de ranking wordt gebruikt; de openbare richtlijnen van Google vragen of content “originele informatie, verslaggeving, onderzoek of analyse” biedt (in het Engels: “original information, reporting, research, or analysis”, Google Search Central). Slopcheck meet het deel dat 1 tekst op zichzelf laat zien, zonder vergelijking met andere pagina’s: het aandeel van de vragen van de lezer dat de tekst beantwoordt, van 0 tot 100%.

Wat een bewering uitsluit

Rudolf Carnap en Yehoshua Bar-Hillel beschreven de betekeniskant van informatie: een bewering bevat meer informatie naarmate ze meer mogelijke toestanden van de wereld uitsluit (Carnap en Bar-Hillel, 1952). “De export mislukt bij bestellingen van meer dan 500 regels in Chrome 128” sluit veel meer uit dan “de export mislukt soms”. Een benoemde drempel is de sterkste vorm: “3.1.4 werkt, 3.2.0 mislukt” vertelt de ontwikkelaar welke release hij moet openen.

Of een bewering waar is, is een aparte vraag (Stanford Encyclopedia of Philosophy): Slopcheck controleert geen feiten, en “bestellingen van meer dan 500 regels” scoort hetzelfde, of de echte drempel nu 500 of 5.000 is.

Wat voor de lezer telt

Ronald Howard liet in 1966 zien dat informatie zoveel waard is als wat ze verandert aan een beslissing (Howard, 1966). Voor een ontwikkelaar bepaalt “Chrome 128” welke van de 3 browsers hij test; “de export is belangrijk” bepaalt niets. Op een productpagina verandert “4 EUR per gebruiker per maand, eerste 30 dagen gratis” de beslissing om te kopen; “een naadloze ervaring” doet dat niet. In een bugrapport zijn het de versie, de stappen en de drempel die de volgende stap van de ontwikkelaar bepalen.

Slop

Slop is het deel van de tekst, geteld in woorden, dat geen enkele vraag van de lezer beantwoordt. We zien 4 soorten: lege zinnen die in elke tekst zouden passen, vanzelfsprekende zinnen die niets uitsluiten wat de lezer overwoog, irrelevante zinnen die geen beslissing veranderen, en onoplosbare verwijzingen, bijvoorbeeld “zoals besproken” of “zelfde als daar”. Herhalingen van wat de tekst al heeft gezegd, tellen ook mee. In het resultaat wordt elke slopzin gemarkeerd.

Slop schendt 2 van de gespreksmaximes die Paul Grice beschreef: wees zo informatief als nodig en niet meer, en zeg wat relevant is (Grice, 1975). Herhalingen zijn wat Shannon redundantie noemde: het deel van een bericht dat de lezer uit de rest kan voorspellen.

Stijl is geen slop: “we hebben de CSV-export gerepareerd” en “het probleem met de CSV-export is opgelost” tellen hetzelfde.

Hoe de twee getallen samenhangen

Slop bevat geen informatie, dus hoe meer van een tekst slop is, hoe lager het plafond voor de informatiewinst: een tekst die voor 60% uit slop bestaat, scoort hooguit ongeveer 50%, en een tekst met 95% slop of meer hooguit 10%. Een volle 100% verschijnt alleen als geen enkele zin slop is; anders stopt de informatiewinst bij 95%. Lengte is niet het doel: een bugrapport van 50 woorden kan 90% scoren.

Bugrapporten, taken en productpagina’s

We schreven 27 vragen op die een lezer aan een tekst stelt: 7 voor elke tekst, 8 voor bugrapporten, 7 voor taken en 5 voor productpagina’s. Een bugrapport beantwoordt welke versie, welke stappen, wat er werd verwacht en wat er gebeurde, altijd of soms, en sinds welke release. Een taak of user story beantwoordt wat, waar, waarom, hoe je controleert dat ze af is en wat je niet moet aanraken; goede acceptatiecriteria lezen als dit voorbeeld: “34 instellingen, 4 tabbladen, geen tekstwijzigingen”. Een productpagina of productbeschrijving beantwoordt voor wie, wat het product doet, waaruit dat blijkt, de prijs en de volgende stap. Het model leerde deze verschillen uit 2.424 voorbeelden die een taalmodel beoordeelde, dus je hoeft geen genre te kiezen voordat je een tekst plakt.

5 versies in 4 dagen

Versie 1, op 19 oktober 2026, telde functiewoorden, vulwoorden en concrete details per 100 woorden. Versie 2 voegde de zeldzaamheid van woorden toe, gemeten aan frequentielijsten die we per taal uit ongeveer 600.000 woorden Wikipedia-tekst telden; op 55 webpagina’s die twee taalmodellen beoordeelden, was dat ruis (AUROC 0,45 tot 0,49), dus lieten we het vallen. Versie 3 oordeelde op basis van concreetheid per 100 woorden; op 37 nieuwe pagina’s die we apart hielden voor tests, klopte het oordeel “te weinig inhoud” in 1 van de 9 gevallen, dus werd het een hint.

Versie 4 gebruikte een catalogus van ongeveer 1.000 patronen in 5 talen en onderscheidde op dezelfde 37 pagina’s opgevulde van compacte pagina’s (AUROC 0,75; we hadden die resultaten tijdens de ontwikkeling gezien, dus het cijfer is optimistisch). Op echte bugrapporten zat het op toevalsniveau (0,47 tot 0,52). Die mislukking bracht ons van het tellen van woorden naar het tellen van de open vragen van de lezer, en naar versie 5 (s2) op 22 oktober; op 24 oktober hebben we die opnieuw getraind voor 12 talen (s3).

Wat bugtrackers ons leerden

We namen 1.355 rapporten uit Mozilla Bugzilla van 2023 tot 2025. Rapporten die werden gesloten als onvolledig of als “works for me”, of waarvan de auteur om meer informatie werd gevraagd, waren langer dan rapporten die zonder zo’n verzoek werden opgelost (een mediaan van 165 woorden tegen 124) en concreter: buitenstaanders vullen het volledige sjabloon in, dat in 38% van de “works for me”-rapporten voorkomt en in 14% van de opgeloste, terwijl engineers korte notities schrijven die op gedeelde context leunen. De uitkomst mat wie het rapport schreef, dus vanaf toen vergeleken we rapporten van dezelfde auteur.

In Apache Jira verzamelden we 11.129 bugrapporten uit 165 projecten, ingediend sinds 2022, en vergeleken we opgeloste rapporten met rapporten die als “Cannot Reproduce” of “Incomplete” werden gesloten. Eén bevinding bepaalde de methode: een taalmodel las 240 van deze rapporten, 120 paren van dezelfde auteur, zonder de uitkomst of de auteur te kennen. Op de vraag of een versie of omgeving werd genoemd, vond het die vaker in de slecht ontvangen rapporten (63% tegen 50%). Op de vraag wat een ontwikkelaar nog nodig zou hebben, noemde het voor dezelfde rapporten vaker de versie of omgeving (48% tegen 33%). Een detail noemen is niet hetzelfde als de vraag beantwoorden.

Regels uit een handmatige review

We beoordeelden 35 teksten met de hand, de meeste op een schaal van 0 tot 10: 0 is een leeg formulier, 5 tot 6 is uitvoerbaar na een paar vragen, bij 9 blijft één vraag open en bij 10 valt er niets toe te voegen. Bij 28 van deze teksten leverde onze eerste vragencatalogus 86 vragen op; we beoordeelden er 35, 26 als terecht en 9 als overbodig. Het resultaat is een geschreven handleiding van 37 regels en 33 testgevallen.

Voorbeelden van regels: een bewering zonder grens betekent altijd en overal, dus een ontbrekende versie kost niets, tenzij de tekst “soms” of “na de update” zegt; een verbod telt alleen als het een pad afsluit dat de taak impliceert; tegenstrijdige eisen kosten het meest. In één test gingen dezelfde feiten, herschreven met een expliciete link en een benoemd object, van 1 naar 9–10 op 10. In een andere test was een rapport dat met de hand een 10 kreeg, gesloten als “Cannot Reproduce”: de uitkomst in een tracker is een signaal, geen oordeel.

Taalmodellen als beoordelaars en als leraar

We maakten van de 37 regels een beoordelingshandleiding voor grote taalmodellen en vergeleken 5 modellen op de 27 teksten met een cijfer uit de handmatige beoordeling. De regels kwamen uit deze teksten, dus dit laat zien hoe nauw elk model de regels volgt, niet hoe het op nieuwe teksten presteert: de beste twee zaten bij 22 van de 27 teksten binnen 1 punt van het handmatige cijfer (rangcorrelatie tot 0,94); het zwakste bij 12 van de 27.

Een van die twee beoordeelde daarna 2.424 teksten zin voor zin: 600 openbare taken en bugrapporten uit Apache Jira, 384 teksten met dezelfde feiten die taalmodellen in 4 stijlen schreven, 600 teksten die hetzelfde model voor de training schreef in het Duits, Pools, Tsjechisch, Kroatisch en Russisch, en 840 teksten, 120 per taal in het Slowaaks, Sloveens, Bulgaars, Frans, Italiaans, Spaans en Nederlands, die taalmodellen schreven zonder de regels te zien. Dat zijn 18.420 gelabelde zinnen, waarvan 21,4% slop. Het kleine model in je browser leerde van deze labels. In kruisvalidatie stemt het met de leraar overeen met een rangcorrelatie van 0,85, en op teksten waarvan het niet leerde, vindt het de slopzinnen van de leraar met een AUROC van 0,92. Op 25 met de hand beoordeelde teksten komt het met de handmatige cijfers overeen met een rangcorrelatie van 0,81, maar de regels erbovenop komen uit dezelfde teksten, dus de tests op apart gehouden teksten hieronder zijn de eerlijkere maatstaf.

Geen enkel taalmodel leest je tekst als je die controleert. Een aanroep van een taalmodel stuurt de tekst naar een derde partij, kan op dezelfde tekst een ander antwoord geven en kost per controle geld; het kleine model draait op ongeveer 350 KB aan vaste gewichten.

Voorspellingen eerst opgeschreven

Bij 5 experimenten schreven we onze voorspellingen in een bestand voordat we de test draaiden; voor de patroontest van 20 oktober 2026 begint de MD5-checksum van dat bestand met ff01ce1a. We voorspelden dat de eenvoudige versie van een tekst in 85% tot 95% van de paren zou winnen van de versie in assistentstijl; dat gebeurde in 79%. We voorspelden dat afgewezen Bugzilla-rapporten korter zouden zijn; ze waren langer, met een mediaan van 165 woorden tegen 124. Bij Jira-paren van dezelfde auteur zaten 3 van de 4 voorspellingen ernaast. Na de misser bij Bugzilla gebruikte elke latere vergelijking rapporten van dezelfde auteur.

Wat niet werkte

Zeldzaamheid van woorden (AUROC 0,45 tot 0,49). Het aandeel functiewoorden en vulwoorden, dat op apart gehouden pagina’s maar een AUROC van 0,31 haalde, slechter dan toeval. Een oordeel “te weinig inhoud” dat 1 op de 9 keer klopte. Betekeniseenheden tellen of een checklist van 5 punten voor volledigheid afvinken, wat met een lezing van de hele tekst overeenkwam met een rangcorrelatie van maar 0,18 tot 0,26. 8 indicatoren naar het voorbeeld van signalen van zoekmachines, al in de ontwerpfase afgewezen. Een pagina vergelijken met de top 3 tot 10 zoekresultaten, wat een betaalde zoek-API vereist. Brede versies van de expliciete regels, die op 33 Jira-rapporten afgingen; elk rapport dat we controleerden, was vals alarm. Een taalmodel tijdens de controle: dat kwam het dichtst bij de handmatige cijfers, maar dan gaat je tekst naar een derde partij.

Zo testen we de methode

We houden 24 briefings in het Engels en Duits apart, elk door taalmodellen in 4 versies geschreven. De eenvoudige versie scoort in alle 24 paren hoger dan de opgevulde en in 83% hoger dan de versie in assistentstijl. Voor elk van de 7 talen die op 24 oktober zijn toegevoegd, houden we nog 6 briefings in 4 versies apart: de eenvoudige versie wint in elk paar van de opgevulde, en van de versie in assistentstijl in 100% van de paren in het Slowaaks en Sloveens, 92% in het Italiaans en Nederlands, 83% in het Bulgaars en Frans en 58% in het Spaans.

Op 120 apart gehouden paren Jira-rapporten van dezelfde auteur scoort het opgeloste rapport in ongeveer 60% van de paren hoger. Een taalmodel dat dezelfde 240 rapporten blind leest, zonder de uitkomst of de auteur, haalt 64%. De Engelse en Duitse briefings en de Jira-paren bleven buiten de training, maar we gebruikten ze om te kiezen tussen varianten van de expliciete regels, dus op nieuwe teksten kunnen de resultaten iets lager uitvallen. Of een rapport uiteindelijk wordt opgelost of als “Cannot Reproduce” wordt gesloten, hangt ook af van de bug zelf: die kan in een nieuwere versie al zijn opgelost, alleen in één omgeving optreden of uit een configuratiefout voortkomen, dus 100% is op deze test niet haalbaar.

Zo wordt de schatting berekend

Voor de hele tekst leest het model 182 signalen, zoals getallen, versies, voorwaarden, drempels, namen, geciteerde meldingen, vage woorden, onbewezen claims, herhalingen en lege kopjes uit sjablonen, plus woorden en woordparen die met hashing over 16.384 cellen zijn verdeeld; een tweede model met 68 signalen en dezelfde gehashte woorden beslist per zin of die slop is. Het tekstmodel is een lineaire regressie op deze signalen en het zinsmodel een logistische regressie, allebei getraind op de 2.424 beoordeelde teksten. Bovenop het model gelden 3 regels uit de handmatige review. Een starttijd na de deadline kost 25 punten. Een taak die opent met “opsplitsen in 4 tabbladen” en nergens zegt wat er opgesplitst moet worden, krijgt hooguit 20%. Een sjabloon met lege kopjes krijgt hooguit 10%. De gewichten nemen ongeveer 350 KB in beslag en laden met de pagina mee, en een tekst van 3.000 tekens wordt in minder dan 100 milliseconden gecontroleerd.

Zinnen en talen

We splitsen de tekst in zinnen bij punten, vraag- en uitroeptekens, beletseltekens en regeleinden, maar niet binnen “v8.1”, “1.200” of een webadres, en niet na een datum zoals “7. Juni”. 12 talen worden ondersteund: Engels, Pools, Tsjechisch, Slowaaks, Kroatisch, Sloveens, Bulgaars, Duits, Frans, Italiaans, Spaans en Nederlands. De taal wordt automatisch herkend: 99,6% correct op onze eerdere testsets en 97,1% op korte teksten in de nieuwe talen. De lijsten met slopfrasen voor de 11 talen naast het Engels hebben we zelf samengesteld; voor Duits, Pools, Tsjechisch en Kroatisch vonden we geen open lijsten. Gratis controles verwerken 80 tot 3.000 tekens, wat 97,5% dekt van de Jira-bugrapporten die we verzamelden, codeblokken niet meegerekend. Bekende vertekening: de taal alleen verschuift de schatting met een paar punten. Met dezelfde signalen scoren Spaanse, Franse, Tsjechische en Italiaanse teksten 5 tot 8 punten lager dan Engelse teksten; Duitse en Nederlandse teksten scoren ongeveer 4 punten hoger, dus vergelijk scores binnen één taal.

Wat we niet meten

Slopcheck meet niet wie een tekst heeft geschreven, of hij klopt en hoe hij zal ranken in Google of Bing. Op een steekproef uit de openbare RAID-benchmark in het Engels vingen regelgebaseerde tekstkenmerken hooguit 28% van de door AI geschreven teksten bij 5% valse alarmen, en daarom bieden we geen detectie van auteurschap aan. Een notitie van 2 regels kan precies goed zijn voor een team dat zijn context deelt: de schatting ziet alleen de tekst.

Vragen

Hoe controleer ik een tekst op AI-slop?

Plak hem in het veld op de homepage: 80 tot 3.000 tekens, tot 5 teksten per dag gratis. Je krijgt de informatiewinst, het aandeel slop en de slopzinnen gemarkeerd in de tekst.

Wordt mijn tekst ergens bewaard of naartoe gestuurd?

Nee. De controle draait in je browser: de tekst wordt niet naar ons verstuurd en niet bewaard. De resultaatlink bewaart de tekst in het deel van het adres na het teken #, dat browsers niet naar servers sturen.

Welke teksten kan ik controleren?

Artikelen, productpagina’s, posts, taken, user stories en bugrapporten in 12 talen: Engels, Pools, Tsjechisch, Slowaaks, Kroatisch, Sloveens, Bulgaars, Duits, Frans, Italiaans, Spaans en Nederlands, van 80 tot 3.000 tekens.

Hoe schrijf ik een goed bugrapport?

Beschrijf hoe het probleem te reproduceren is: welke stappen, welke versie, welk apparaat en bij welke drempel het misgaat. In een onderzoek naar 180 reproduceerbare Android-bugrapporten ontbrak in 92,2% minstens 1 stap (Johnson et al., 2022). “De export mislukt bij bestellingen van meer dan 500 regels in Chrome 128” sluit veel meer uit dan “de export mislukt soms”. Plak het rapport in de controle om te zien welke zinnen geen van deze vragen beantwoorden.

Is Slopcheck een AI-detector?

Nee. Slopcheck schat hoeveel een tekst de lezer vertelt. Het zegt niet wie of wat de tekst schreef: een gegenereerde tekst met echte feiten kan hoog scoren, en een zelfgeschreven tekst zonder feiten scoort laag.

Wat is het verschil met checkers die naar AI-kenmerken zoeken?

Tools die lange streepjes, “delve” of “tapestry” tellen, kijken naar de oppervlakte van een tekst. Slopcheck kijkt naar wat de lezer krijgt: een tekst kan elk kenmerk vermijden en toch geen enkele vraag van de lezer beantwoorden.

Wat is een tekstpaspoort?

Een vastlegging van één exacte tekst: de hash, de informatiewinst, de slop, de methodeversie en de datum van de controle, op een pagina met een eigen link. Wie de tekst heeft, kan hem daar plakken en zien of hij overeenkomt: als er ook maar 1 teken verschilt, verschilt de hash. Elke bewerking wordt opgeslagen als nieuwe versie met eigen scores.

Heb ik een plug-in of een SDK nodig voor de API?

Nee. Met het Team-abonnement is de controle één HTTP-verzoek met de tekst. Dat past in een CI-stap, een pre-publish-hook in een CMS of een veld in je issuetracker.

Bronnen

  1. C. E. Shannon (1948). A Mathematical Theory of Communication. Bell System Technical Journal
  2. C. E. Shannon, W. Weaver (1949). The Mathematical Theory of Communication. University of Illinois Press
  3. Google LLC (2022). Contextual estimation of link information gain. Amerikaans octrooi US 11,354,342 B2
  4. Google Search Central. Creating helpful, reliable, people-first content
  5. R. Carnap, Y. Bar-Hillel (1952). An Outline of a Theory of Semantic Information. MIT Research Laboratory of Electronics
  6. S. Sequoiah-Grayson, L. Floridi. Semantic Conceptions of Information. Stanford Encyclopedia of Philosophy
  7. R. A. Howard (1966). Information Value Theory. IEEE Transactions on Systems Science and Cybernetics
  8. H. P. Grice (1975). Logic and Conversation; de maximes zijn samengevat in “Implicature”, Stanford Encyclopedia of Philosophy
  9. J. Johnson et al. (2022). An Empirical Investigation into the Reproduction of Bug Reports for Android Apps. SANER 2022, sectie IV-C
  10. Apache Software Foundation. Jira-issuetracker, openbare bugrapporten en taken 2022–2026
  11. Mozilla. Bugzilla, openbare bugrapporten 2023–2025
  12. L. Dugan et al. (2024). “RAID: A Shared Benchmark for Robust Evaluation of Machine-Generated Text Detectors”. ACL 2024

Controleer je tekst

Plak een artikel, een productpagina, een taak of een bugrapport en bekijk de informatiewinst en de slop.

Tekst gratis controleren

Vroege toegang

We geven auteurs en teams één voor één toegang: automatische controles van websites, de API voor issuetrackers en tekstpaspoorten. Laat je e-mailadres achter: we sturen je een uitnodiging en nemen contact met je op. Er wordt nu niets in rekening gebracht.