Een treffende visuele weergave van de botsing tussen het gezag van juridische verwijzingen en AI-gegenereerd verzinsel — een pleitnota waarvan de verwijzingstekst zichtbaar fragmenteert of oplost waar nepzaken verschijnen.
Artificial IntelligenceLawTechnology

De AI die een rechtszaak verzon — en de architectuur die we bouwden om dat onmogelijk te maken

Ashutosh SinghalAshutosh Singhal24 januari 202615 min

Ik herinner me het exacte moment waarop ik het vertrouwen verloor in de manier waarop de meeste mensen juridische AI bouwen.

Het was laat op een dinsdag, en ik las het gerechtelijk transcript van Mata v. Avianca. Geen samenvatting. Geen tweetdraad. De daadwerkelijke processtukken. Een advocaat had een pleitnota ingediend waarin hij Varghese v. China Southern Airlines, Shaboon v. Egyptair en Petersen v. Iran Air aanhaalde — compleet met dossiernummers, data en geciteerde uitspraken. Overtuigend genoeg dat de tegenpartij ernaar op zoek moest gaan. De zaken bestonden niet. ChatGPT had ze verzonnen. En toen de advocaat teruggng naar ChatGPT om het te dubbelchecken, bevestigde het model vrolijk zijn eigen verzinsels: "Ja, die zaken bestaan inderdaad en zijn te vinden in gerenommeerde juridische databases."

Ik legde het transcript neer en dacht: dit is geen prompting-probleem. Dit is een architectuurprobleem. En het grootste deel van de juridische AI-industrie doet alsof dat niet zo is.

Dat incident — dat leidde tot een boete van $5.000, een berisping door de rechter en een reputatiekrater — werd de fundamentele casestudy voor wat mijn team bij Veriprajna nu bouwt: Citation-Enforced GraphRAG-systemen voor juridische AI. Systemen waarin de AI fysiek niet in staat is een zaakverwijzing te produceren die niet overeenkomt met een geverifieerde vermelding in een Knowledge Graph. Niet "waarschijnlijk niet zal". Niet kan.

Ik wil uitleggen waarom dat onderscheid ertoe doet, wat er nodig was om het te bouwen, en waarom ik geloof dat het tijdperk van een chatbot-interface op een foundation model plakken en het "juridische AI" noemen voorbij is.

Waarom verzon ChatGPT een rechtszaak?

Dit is de vraag die iedereen stelt, en die bijna niemand correct beantwoordt.

De gebruikelijke verklaring is "hallucinatie" — een woord dat zo overmatig is gebruikt dat het zijn diagnostische waarde heeft verloren. Wat er werkelijk gebeurde in Mata v. Avianca is specifieker en veel bezwarender. Het model werd gevraagd om precedenten te vinden over aansprakelijkheid van luchtvaartmaatschappijen voor letsel bij passagiers. Het doorzocht geen database. Het heeft er geen. Het voorspelde de statistisch meest waarschijnlijke volgende reeks woorden.

"Varghese" is een plausibele naam voor een eiser. "China Southern Airlines" is een plausibele gedaagde. Een dossiernummer zoals "2017 WL 3245891" volgt het syntactische patroon van echte verwijzingen. Het model zette deze fragmenten op dezelfde manier in elkaar als een gedicht of een marketing-e-mail — door het minimaliseren van iets dat perplexity heet, wat in wezen een maat is voor hoe "verrast" het model is door zijn eigen output. Weinig verrassing staat gelijk aan vloeiende tekst. Vloeiende tekst is niet hetzelfde als ware tekst.

Het model is getraind om perplexity te minimaliseren — hoe verrast het is door het volgende woord. Het is niet getraind om te optimaliseren voor provenance — of dat woord teruggaat op iets echts.

Dit is de kernspanning. LLM's optimaliseren voor coherentie. Recht vereist provenance. Dit zijn fundamenteel verschillende doelstellingen, en geen enkele hoeveelheid prompt-engineering overbrugt de kloof. Je kunt GPT-4 vertellen "Je bent een zorgvuldige advocaat, citeer alleen echte zaken." Het zal knikken en gehoorzamen — precies tot het moment dat zijn trainingsdata de zaak die je nodig hebt niet bevat, waarna het er een zal verzinnen die juist klinkt, want juist klinken is letterlijk waarvoor het geoptimaliseerd is.

Onderzoekers van Stanford hebben dit rigoureus getest. Algemene chatbots, zelfs die met internettoegang of basale ophaalmogelijkheden, hallucineerden tussen de 58% en 82% van de tijd bij complexe juridische vragen. Geen randgevallen. Routinematige juridische onderzoeksvragen.

De Wrapper-val

Na Mata begon ik de juridische AI-tools op de markt te catalogiseren. De meeste ervan waren wat de industrie beleefd "wrappers" noemt — dunne gebruikersinterfaces gelaagd over de API van OpenAI of Anthropic. Een system prompt die zegt "Je bent een behulpzame juridische assistent." Misschien een pdf-uploadfunctie. Misschien een mooier lettertype.

Ik had een gesprek met een potentiële klant — general counsel bij een middelgroot kantoor — die me vertelde dat ze een van deze tools aan het evalueren waren. "Het is snel," zei ze. "Maar vorige week citeerde het een afwijkende mening alsof het de meerderheidsuitspraak was. Mijn medewerker had het bijna ingediend." Ze pauzeerde. "Het enge is dat de zaak echt was. De uitspraak was alleen... verkeerd."

Dat is het aan juridische hallucinaties dat me 's nachts wakker houdt. Mata was dramatisch omdat de zaken volledig verzonnen waren. Maar de subtielere fouten — echte zaak, verkeerde uitspraak; geldig statuut, sindsdien ingetrokken; bindend precedent uit de verkeerde jurisdictie — zijn moeilijker te betrappen en aantoonbaar gevaarlijker. Een nepzaak wordt bij de eerste verificatiestap gemarkeerd. Een echte zaak geciteerd voor een stelling die ze niet ondersteunt? Die kan meerdere beoordelingsrondes overleven.

De wrapper-aanpak kan dit niet oplossen omdat ze de datalaag niet bezit. Ze weet niet welke zaken bestaan. Ze weet niet welke zijn vernietigd. Ze begrijpt niet dat een beslissing van het Second Circuit een Ninth Circuit-rechtbank niet bindt. Het is een chique tekstvak verbonden met een waarschijnlijkheidsmachine.

En de economie is meedogenloos. Analyse van de wrapper-markt laat zien dat, hoewel sommige snel omzet bereiken, de overgrote meerderheid faalt omdat ze geen enkele verdedigbare technologie hebben. Naarmate foundation models beter worden, wordt elke functie die de wrapper nuttig maakte — samenvatten, opstellen, Q&A — geabsorbeerd in het basismodel. Je bouwt op gehuurde grond, en de verhuurder is OpenAI.

Wat gebeurt er als je AI een kaart van het recht geeft?

Vergelijkingsdiagram naast elkaar dat laat zien hoe Vector RAG geïsoleerde tekstfragmenten ophaalt op basis van gelijkenis, terwijl GraphRAG expliciete juridische relaties doorloopt (citeert, vernietigt, interpreteert) om structureel verbonden gezag te vinden.

Hier begint de obsessie van mijn team.

De standaardoplossing voor hallucinatie is Retrieval-Augmented Generation — RAG. In plaats van te vertrouwen op het geheugen van het model, haal je relevante documenten uit een database en voed je ze als context. Het is een echte verbetering. Maar voor het recht is het niet genoeg, en ik wil uitleggen waarom aan de hand van een specifiek voorbeeld dat ons wekenlang gek maakte.

We testten een standaard vector-RAG-pipeline op een vraag over de vraag of een specifieke milieuregeling uit 1990 nog afdwingbaar was na een uitspraak van het Supreme Court uit 2023. Vector RAG deed wat het doet: het vond tekstfragmenten die semantisch vergelijkbaar waren met de zoekopdracht. Het gaf de regeling terug. Het gaf de uitspraak van het Supreme Court terug. Het gaf een artikel uit een juridisch tijdschrift terug dat beide besprak.

De LLM naaide ze aan elkaar tot een zelfverzekerd, goed geschreven antwoord dat volledig verkeerd was. Het behandelde het tijdschriftartikel — een overtuigend maar niet-bindend academisch commentaar — alsof het hetzelfde gewicht droeg als de uitspraak van het Supreme Court. Erger nog, het miste dat de regeling feitelijk ongeldig was verklaard, omdat de keten van gezag die de regeling verbond met de ongeldigverklarende uitspraak liep via een tussenliggende appelzaak die de vector-zoekopdracht niet had opgehaald. De verbinding was niet semantisch. Ze was structureel.

Ik herinner me dat mijn hoofdengineer, halverwege het debuggen hiervan, zich naar me toedraaide en zei: "Het probleem is niet het ophalen. Het probleem is dat vectoren geen relaties begrijpen."

Ze had gelijk. En dat is het inzicht achter GraphRAG — Graph-based Retrieval-Augmented Generation.

In plaats van juridische documenten op te slaan als geïsoleerde punten in de vectorruimte, brengen we ze in kaart in een Knowledge Graph: een netwerk waarin elk statuut, elke zaak, elke regeling en elke juridische doctrine een knooppunt is, en de relaties ertussen — citeert, vernietigt, onderscheidt, interpreteert, bevestigt — expliciete, gelabelde verbindingen zijn. Ik heb over de volledige architectuur geschreven in de interactieve versie van ons onderzoek.

Vector RAG vraagt: "Vind tekst die lijkt op deze zoekopdracht." GraphRAG vraagt: "Vind het statuut, doorloop de 'interpreteert'-verbinding om jurisprudentie te vinden, en doorloop vervolgens de 'vernietigt'-verbinding om te controleren of het nog geldig is."

Dat is geen subtiel verschil. Dat is het verschil tussen een bibliotheek doorzoeken op gevoel en haar tegelijkertijd doorzoeken via de kaartcatalogus, de citatie-index en het Shepard's-rapport.

Hoe voorkom je dat een AI een verwijzing verzint?

Stapsgewijs diagram dat het KG-Trie constrained decoding-proces toont — de LLM genereert een gedeeltelijke verwijzing, de Trie controleert geldige voortzettingen aan de hand van de Knowledge Graph, en ongeldige token-paden worden geblokkeerd (waarschijnlijkheid op min oneindig gezet).

Dit is het deel dat ons het langst kostte om goed te krijgen, en het is het deel waar ik het meest trots op ben.

Een Knowledge Graph hebben is noodzakelijk maar niet voldoende. De graph geeft je structuur. Maar de LLM genereert nog steeds tekst token voor token, en op elk moment kan het van de graph afwijken en beginnen te verzinnen. We hadden een mechanisme nodig dat het model niet alleen aanmoedigt om echte zaken te citeren — het verhindert fysiek dat het nepzaken citeert.

Wij noemen dit Graph-Constrained Decoding, en het kernmechanisme is iets dat een KG-Trie heet.

Zo werkt het in gewoon Nederlands. We nemen elke geldige entiteit in onze Knowledge Graph — elke zaaknaam, elke reporter-verwijzing, elk dossiernummer — en we bouwen er een prefixboom (een Trie) van uit die identifiers. Wanneer de LLM tekst genereert en een punt bereikt waar het op het punt staat een verwijzing te produceren, wordt het beperkingsmechanisme geactiveerd. Het controleert: wat zijn de geldige volgende tokens volgens de Trie?

Als het model "Mata v. A" heeft gegenereerd — laat de Trie tokens toe die geldige zaaknamen voltooien die met die reeks beginnen. "Avianca" is geldig. Alles anders krijgt zijn waarschijnlijkheid op min oneindig gezet. Geblokkeerd.

Als het model probeert "Varghese v. Chi" te genereren — vindt de Trie geen geldige voortzetting. De generatie wordt gestopt. Het model wordt gedwongen terug te gaan en ofwel een echte verwijzing te vinden ofwel iets te produceren als "Geen precedent gevonden."

De AI kan geen zaak verzinnen omdat het fysiek de tokenreeks niet kan produceren voor een zaak die niet in de geverifieerde database staat.

Dit is een structurele garantie, geen probabilistische. We zeggen niet "het model is 95% minder waarschijnlijk om te hallucineren." We zeggen dat het pad naar verzinsel is afgesloten. De tokenreeks voor een nepverwijzing kan letterlijk niet worden geproduceerd.

Nu wil ik precies zijn over wat dit wel en niet doet. Het voorkomt verzinsel — het uitvinden van een zaak die niet bestaat. Het voorkomt geen misinterpretatie — het citeren van een echte zaak maar er de verkeerde conclusie uit trekken. Dat is een redeneerfout, en die vereist nog steeds menselijke beoordeling. Maar het elimineren van verzinsel is enorm. Het haalt de meest catastrofale faalmodus — het Mata-scenario — volledig van tafel.

Er was een nacht, vroeg in de ontwikkeling, waarin we onze eerste end-to-end-test uitvoerden. We voedden het systeem met precies de zoekopdracht die de nepverwijzingen in Mata had geproduceerd. Het beperkte systeem probeerde "Varghese" te genereren, liep tegen de Trie-muur aan, ging terug en gaf een echte zaak terug met een geldige verwijzingsketen. Mijn engineer stuurde om 1:47 uur een screenshot naar onze groepschat. Niemand reageerde met woorden. Alleen een rij vuur-emoji's.

Waarom kunnen wrappers dit niet?

Mensen vragen me dit voortdurend, en het antwoord is architectonisch, niet commercieel.

Graph-Constrained Decoding vereist het manipuleren van de token-waarschijnlijkheden van het model — de logits — in realtime tijdens de generatie. Je hebt toegang nodig tot de inference-engine op decodeerniveau. Standaard commerciële API's zoals GPT-4 stellen dit niet bloot. Je kunt een prompt sturen en een antwoord krijgen. Je kunt het generatieproces niet midden in een token onderscheppen en beperkingen injecteren.

Daarom bouwen we op open-weights-modellen — Llama, Mistral — of implementeren we via enterprise-endpoints die aangepaste decodeerloops toestaan. Wij hosten het model. Wij beheren de inference-pipeline. Wij injecteren de KG-Trie-beperkingen rechtstreeks in de waarschijnlijkheidsverdeling van elk token terwijl het wordt gegenereerd.

Een wrapper kan dit per definitie niet doen. Het roept iemand anders' API aan. Het is een passagier, niet de piloot.

Het moeilijkste deel waar niemand het over heeft

Het bouwen van het beperkingsmechanisme was intellectueel bevredigend. Het bouwen van de Knowledge Graph eronder was een zware klus.

Juridische tekst is rommelig op manieren waar een data-engineer van gaat huilen. Eén zaak kan aangehaald worden als "Mata v. Avianca," "Mata," "678 F. Supp. 3d 443," "de Avianca-zaak," of simpelweg "Id." — een afkorting van twee letters die "de zaak die ik zojuist noemde" betekent. Al die moeten oplossen naar één canoniek knooppunt in de graph. Mis er één, en je hebt een gat in het verwijzingsnetwerk.

We besteedden maanden aan het bouwen van Entity Resolution-pipelines die ontdubbeling afhandelen ("Smith v. Jones, 123 F.3d 456" en "Smith, 123 F.3d at 456" zijn dezelfde zaak), disambiguatie ("Smith v. Jones (1995)" versus "Smith v. Jones (2002)" — verschillende zaken, dezelfde naam), en de bijzondere hel van het oplossen van "Id."-verwijzingen met behulp van sliding-window-contextparsing.

En dan is er nog negatieve behandeling — het "red flag"-systeem. Een juridische Knowledge Graph die vernietigde zaken als geldig gezag behandelt is erger dan nutteloos. We nemen citator-signalen op — taal zoals "overruled," "abrogated," "superseded" — en coderen ze als blokkerende verbindingen in de graph. Wanneer het systeem een pad doorloopt en op een OVERRULES-verbinding stuit, wordt dat pad ongeldig verklaard voor bindend gezag. Als iemand vraagt over Roe v. Wade op het gebied van reproductieve rechten, brengt de graph onmiddellijk de OVERRULES-verbinding van Dobbs v. Jackson naar boven. Een vector-zoekopdracht zou Roe nog steeds enthousiast kunnen citeren omdat het pure volume aan historische tekst dat het ondersteunt de gelijkenisscores domineert.

Voor de volledige technische uiteenzetting van het graph-schema, de entity-resolution-pipeline en de beperkingsarchitectuur, zie ons onderzoeksrapport.

Wat betekent dit eigenlijk voor een advocatenkantoor?

Ik had een gesprek met een managing partner die het botweg stelde: "Ik geef niets om Knowledge Graphs. Ik geef erom of mijn medewerkers me voor schut gaan zetten voor een rechter."

Terecht. Dus laat me het vertalen.

De kosten van Mata v. Avianca waren geen $5.000. Het was de publieke vernedering, de verplichting om de klant te informeren, de blootstelling aan beroepsaansprakelijkheid, en het signaal aan elke potentiële klant dat dit kantoor zijn werk niet verifieert. Voor een groot kantoor is één gehallucineerd processtuk een existentiële reputatiegebeurtenis.

Citation-Enforced GraphRAG functioneert als een verzekeringspolis tegen verzinsel. De wrapper-aanpak biedt lage aanloopkosten en onbeperkte aansprakelijkheid. Onze aanpak vereist een echte investering in de datalaag en de beperkingsarchitectuur, maar hij reduceert het risico op verwijzingsverzinsel tot nul.

Er is ook een efficiëntieargument dat minder voor de hand ligt. Op dit moment, als een kantoor AI gebruikt voor onderzoek, moet een medewerker elke afzonderlijke verwijzing verifiëren. Die verificatiestap duurt vaak langer dan het onderzoek zelf, wat het doel tenietdoet. GraphRAG-benchmarks laten een verbetering van 30-35% zien ten opzichte van standaard RAG bij multi-hop-redeneertaken — het soort complexe, verbind-de-punten-onderzoek dat er werkelijk toe doet in geschillen. Belangrijker nog, omdat de verwijzingen structureel gegarandeerd geldig zijn, verschuift de menselijke rol van "factchecker" naar "strategiebeoordelaar." Je bent geen drie uur bezig te bevestigen dat zaken bestaan. Je besteedt die tijd aan de vraag of het argument overtuigend is.

Wanneer elke verwijzing structureel is geverifieerd, verschuift het werk van de advocaat van het factchecken van de AI naar het nadenken over strategie. Daar zit de echte hefboomwerking.

En er is een transparantiedimensie die ertoe doet voor compliance. Een wrapper kan niet uitleggen waarom het een zaak koos. Een GraphRAG-systeem kan het exacte doorloop-pad tonen: "Ik selecteerde Zaak A omdat die Statuut B interpreteert en werd bevestigd door Rechtbank C, die bindend is in jouw jurisdictie." Dat auditspoor is niet alleen fijn om te hebben — het wordt een regelgevende verwachting.

Waar gaat dit vervolgens heen?

De industrie beweegt zich van chatbots naar agents — AI-systemen die niet alleen vragen beantwoorden maar meerstaps-taken plannen en uitvoeren. Een juridische agent die wordt gevraagd een verzoek tot niet-ontvankelijkheid op te stellen, moet de toepasselijke norm onderzoeken, ondersteunende jurisprudentie vinden, verifiëren dat de zaken geldig recht zijn, procedurele vereisten controleren en het argument samenstellen.

Een agent die op vector-zoeken draait heeft geen kaart. Het heeft een stapel documenten en een goede gok. Een agent die op een Knowledge Graph draait heeft een expliciete structuur die het kan doorlopen: statuut → interpreterende zaken → procedurele regels → jurisdictie-specifieke vereisten. De graph is de planningslaag van de agent.

Daarom geloof ik dat de investering in graph-infrastructuur nu later samengestelde rendementen oplevert. Wrappers laten chatlogs achter. Knowledge Graphs laten een gestructureerde, groeiende, steeds waardevollere kaart van juridisch gezag achter die met elke toegevoegde zaak, elke gecodeerde relatie en elk opgenomen signaal van negatieve behandeling nuttiger wordt.

Het eerlijke bezwaar

Mensen brengen er op twee fronten tegenin, en ik wil beide direct behandelen.

Ten eerste: "Is dit niet gewoon Westlaw met extra stappen?" Nee. Westlaw is een zoekmachine voor mensen. Het geeft documenten terug die een advocaat leest en interpreteert. Wat wij bouwen is een beperkingsarchitectuur voor AI — een systeem dat bepaalt wat de AI wel en niet kan zeggen. Westlaw helpt advocaten recht te vinden. GraphRAG voorkomt dat AI het verzint. Ze zijn complementair, niet concurrerend.

Ten tweede: "Kun je het model niet gewoon fijnafstemmen om te stoppen met hallucineren?" We hebben het geprobeerd. Vroeg in ons werk experimenteerden we met fijnafstemming op geverifieerde juridische datasets. Het verminderde de hallucinatiegraad. Het elimineerde die niet. Een fijnafgestemd model is nog steeds een waarschijnlijkheidsmachine. Het is een betere waarschijnlijkheidsmachine, maar "beter" bij juridische verwijzingen betekent "minder vaak fout," en "minder vaak fout" is geen norm die enige rechtbank zal accepteren. De enige manier om nul verzinsel te garanderen is verzinsel structureel onmogelijk te maken, wat betekent het beperken van de outputruimte, niet alleen het verbeteren van de inputdata.

Het einde van "goed genoeg"

Dit is waar ik telkens op terugkom. Het juridische beroep is gebouwd op een simpel uitgangspunt: wanneer je gezag aanhaalt, moet dat gezag echt zijn. Niet waarschijnlijk echt. Niet meestal echt. Echt.

Gedurende twee jaar na Mata hebben rechtbanken de sancties opgeschroefd, permanente bevelen uitgevaardigd over AI-openbaarmaking, en duidelijk gemaakt dat "de AI heeft het gedaan" geen verdediging is. Het beroep trekt een grens: als je AI gebruikt, moet de output ervan worden geverifieerd. En als het verifiëren van de output langer duurt dan het werk handmatig doen, is de AI geen gereedschap — het is een aansprakelijkheid.

Het wrapper-tijdperk loste het verkeerde probleem op. Het maakte juridisch onderzoek sneller. Het moest juridisch onderzoek betrouwbaar maken. Snelheid zonder vertrouwen is gewoon efficiënte beroepsfout.

Wat wij bij Veriprajna bouwen is geen chatbot die toevallig wat recht kent. Het is een beperkt redeneersysteem waarin elke verwijzing een geverifieerde doorloop door een Knowledge Graph is, elke relatie expliciet en controleerbaar is, en het generatieve model fysiek wordt verhinderd de fictie in te gaan.

Het beroep dat het concept van bindend precedent uitvond verdient AI die het daadwerkelijk respecteert.

Related Research

Also Published On