En flersproget NLP-motor, der scanner dokumenter allerede indekseret i Elasticsearch, registrerer navne, steder og datoer, klassificerer derefter følsomt sprog i GDPR's særlige kategorier og skriver hvert fund tilbage på dokumentet. Dataene forlader aldrig kundens eget søgekluster.
Afsøg, profileer, gem. Gentag.
Den samme detektionskerne (handle_doc) driver både en højvolumen baggrundspipeline og et live-anmodningsendepunkt. Batcharbejde flyder fra venstre mod højre gennem scheduleren, en afgrænset kø og en pulje af spaCy-arbejdsprocesser; realtidsendepunktet sender et enkelt stykke tekst direkte ind i kernen og returnerer JSON.
Profileren læser dokumenter, der allerede er indekseret i Elasticsearch. For hvert dokument registrerer den navne, steder og datoer og søger derefter efter sprog, der afslører særlige kategorier af persondata: helbred, religion, politik, seksuel orientering, etnicitet, kriminel historik, fagforeningsmedlemskab og ansættelsesforhold. Hvert match mærkes med en type, den matchede tekst og dens position og gemmes derefter tilbage på dokumentet, så compliancearbejdet tager udgangspunkt i fakta frem for gætværk.
En baggrundstråd afsøger løbende Elasticsearch for dokumenter markeretDS_Status: REQUEST_AI og sender dem til en pulje af arbejdsprocesser. Dette er den metode, hvormed bulkarkiver profileres.
EnPOST /profile-text -rute profilerer et enkelt stykke tekst efter behov og returnerer farvekodede matches som JSON. En/health -rute rapporterer systemtilgængelighed.
Ved opstart venter applikationen på, at Elasticsearch-klusteret bliver tilgængeligt, og starter derefter scheduleren og arbejdsprocesspuljen. Nedenstående cyklus gentages i det uendelige.
data indekset for dokumenter, hvor DS_Status = REQUEST_AI, og henter 50 ad gangen med search-after.handle_doc, som beskrives nærmere nedenfor.FINISHED. Selv ved fejl skifter status til FINISHED, så intet genbehandles uendeligt.Inden nogen model kører, handle_doc filtrerer arbejde fra, som ikke bør udføres, og vælger derefter det rette værktøj til sproget. Først herefter aktiveres matcherne.
Kun godkendte dokumenttyper profileres (doc, docx, pdf, eml, txt og flere). Strukturerede formater som json, xml og log springes over. Tekst, der er længere end 20.000 tegn, markeres og afkortes, og indhold på ukendt sprog udelades.
Hvis et sprog har grammatiske dependency-mønstre, analyseres hele teksten på én gang. Ellers opdeles teksten i sætninger, og hver enkelt analyseres separat, med den flersprogede model som universel reserve.
Hvert fund bærer en præfikset etiket, så downstream-systemer ved, hvordan det blev fundet. De tre perspektiver kører over den samme sætning, og deres resultater sammensmeltes.
spaCy's statistiske model identificerer personer, organisationer, steder, datoer og tidspunkter. Navne af den rette form (to til tre distinkte alfabetiske ord, ingen cifre) forfremmes til fuldnavns-fund.
En lemma-bevidst sætningsmatching scanner efter termer fra kundespecifikke ordbøger over følsomt vokabular og opfanger derved bøjede former frem for udelukkende præcise strenge.
Grammatiske mønstre bekræfter, at der er tale om et reelt udsagn: en person eller et tilladt pronomen er subjekt, og et følsomt nøgleord er objekt. Dette reducerer falske positiver ved at kræve kontekst frem for blot et ord.
De præcise kategorier styres af kundespecifikke ordbøger indlæst fra Elasticsearch, så hvert abonnement kun kan aktivere de typer, der er relevante for den pågældende kunde.
Dedikerede modeller leveres til engelsk, dansk, tysk, nederlandsk, fransk, italiensk, spansk, svensk, norsk, finsk, polsk, portugisisk, litauisk, kroatisk (der også dækker serbisk, bosnisk og montenegrinsk) samt ukrainsk, suppleret af en flersproget model der dækker alt øvrigt og en universel sætningsopdeler i bunden.
AI Profiler omdanner et stille arkiv af dokumenter til et mærket kort over personoplysninger – alt sammen inden for kundens eget søgekluster – så compliance-arbejdet tager udgangspunkt i fakta frem for gætværk.