Hoe het werkt
Tokenize, verwerken, detokenize, opruimen.
Vier stappen tussen de medewerker en het AI-model. De verwerking vindt volledig server-side plaats; de browser ontvangt geen sleutel en geen token-mapping.
De flow
Wat er per bericht gebeurt
medewerker
│ "Bel Jan de Vries op 06-12345678 over de cv-storing"
▼
┌──────────────┐ POST /filter ┌──────────────────┐
│ AVGFILTER │ ──────────────────────▶ │ filterservice │
│ (server) │ ◀────────────────────── │ (EU, Azure) │
└──────────────┘ tokens + session_id └──────────────────┘
│ "Bel [NAAM_a41] op [TEL_7c2] over de cv-storing"
▼
┌──────────────┐
│ AI-model │ ziet uitsluitend tokens
└──────────────┘
│ "Plan een monteur bij [NAAM_a41]; bel [TEL_7c2] vooraf."
▼
┌──────────────┐ POST /detokenize
│ AVGFILTER │ ──────────────────────▶ filterservice
└──────────────┘
│ "Plan een monteur bij Jan de Vries; bel 06-12345678 vooraf."
▼
medewerkerPer stap
De details
1. Tokenize (fail-closed)
Elke gebruikersinvoer gaat server-side naar het /filter-endpoint. De service retourneert de getokeniseerde tekst, het aantal gedetecteerde persoonsgegevens en een session_id. Faalt de call of duurt deze langer dan vijf seconden, dan wordt de aanvraag afgebroken met een 502 en volgt geen AI-call. Een fallback naar de originele tekst bestaat niet.
2. Uitsluitend tokens naar het model
De systeemprompt schrijft voor dat placeholders als [NAAM_xxx], [BSN_xxx], [TEL_xxx], [EMAIL_xxx] en [IBAN_xxx] letterlijk worden overgenomen. Ook de meegestuurde gespreksgeschiedenis bestaat uitsluitend uit getokeniseerde tekst.
3. Detokenize (fail-open)
Het volledige antwoord wordt gebufferd en vervolgens in één bewerking teruggemapt met hetzelfde session_id. Is de sessie verlopen of onbekend, dan wordt het antwoord met tokens weergegeven. Sessies blijven dertig dagen geldig, zodat een gesprek herlaadbaar blijft.
4. Opslag
Waar gesprekken worden bewaard, slaan we naast de leesbare tekst ook de getokeniseerde versie en het session_id op. Voor AI-context wordt altijd de getokeniseerde versie gebruikt. In de demo op deze site wordt niets opgeslagen.
5. Cleanup bij verwijderen
Bij het verwijderen van een gesprek worden alle unieke session_id's opgehaald en per sessie aangeboden aan /cleanup. Pas daarna worden de records verwijderd, zodat er geen token-mapping achterblijft.