Traccia: OpenTelemetry voor AI-governance - en waarom dat ertoe doet voor de Nederlandse overheid
Laatst zat ik bij een ZBO dat een LLM-pilot draaide voor het beantwoorden van Wob-verzoeken. De AI Act was al van kracht, maar de technische invulling van ‘transparantie’ en ‘accountability’ bleef hangen op een PowerPointslide. “We loggen alles,” zei de lead engineer, “maar hoe bewijs ik dat we voldoen aan artikel 13?” Precies die vraag beantwoordt Traccia.
Traccia is een open-source platform dat OpenTelemetry uitbreidt met AI-specifieke governance-metrieken. Het paper dat de architectuur beschrijft, verscheen deze week op arXiv [1]. Geen abstract framework, maar werkende code die je in je bestaande OpenTelemetry-collector kunt pluggen. Voor Nederlandse overheden die worstelen met de vertaling van AI Act-artikelen naar technische maatregelen, is dit de ontbrekende schakel.
De kloof tussen wet en techniek
De AI Act eist transparantie (artikel 13), accountability (artikel 14) en menselijk toezicht (artikel 15) voor high-risk AI-systemen. In de praktijk betekent dat: je moet per modelaanroep kunnen aantonen welke prompts zijn gebruikt, welke data is verwerkt, welke modelversie actief was, en hoe een beslissing tot stand kwam. De meeste organisaties loggen wel iets, maar missen de semantische laag die van ruwe logs een audittrail maakt.
OpenTelemetry is inmiddels de standaard voor observability in cloud-native omgevingen. Het verzamelt traces, metrics en logs via een uniforme set van semantische conventies. Denk aan http.method, db.statement, messaging.system. Die conventies stoppen bij de applicatielaag. Voor AI-aanroepen ontbreekt een gestandaardiseerde vocabulaire. Traccia vult dat gat.
Wat Traccia toevoegt aan OpenTelemetry
Traccia definieert een set van AI-specifieke attributen die aansluiten op de eisen van de AI Act. Enkele voorbeelden:
ai.prompt.textenai.response.text, de volledige prompt en het modelantwoord, optioneel gemaskeerd voor PII.ai.model.version, de exacte modelversie (bijv.gpt-4o-2026-05-15).ai.data.lineage, verwijzing naar de gebruikte trainings- of RAG-databronnen.ai.risk.level, de risicoclassificatie volgens de AI Act (prohibited, high_risk, limited, minimal).ai.human.review, of er menselijke tussenkomst heeft plaatsgevonden.
Deze attributen worden automatisch toegevoegd door de Traccia SDK of via een processor in de OpenTelemetry-collector. Je hoeft je code niet te herschrijven; je instrumenteert je LLM-aanroepen zoals je dat met elke andere bibliotheek doet.
from traccia import instrument
instrument() # patcht OpenAI, Anthropic, etc.
Vanaf dat moment bevat elke span de governance-attributen. De collector exporteert ze naar Prometheus, Jaeger, of je SIEM. Zo ontstaat een doorlopende audittrail die je tijdens een AI Act-audit kunt overleggen.
Een collector die AI Act-artikelen afdwingt
Het interessantste deel van Traccia is de collector-processor die actief controleert of een AI-aanroep binnen de AI Act-kaders blijft. Je configureert regels op basis van risicocategorieën en verboden praktijken.
processors:
traccia/ai_act:
transparency:
log_prompts: true
log_responses: true
mask_pii: true
accountability:
track_model_version: true
track_data_sources: true
risk_classification:
enabled: true
rules:
- type: prohibited
patterns: ["social scoring", "real-time biometric identification"]
- type: high_risk
patterns: ["medical diagnosis", "recruitment", "credit scoring"]
Zodra een prompt of response een van deze patronen raakt, tagt de processor de span met ai.risk.level=prohibited of ai.risk.level=high_risk. In je monitoringdashboard zie je direct of er een verboden AI-interactie plaatsvindt. Je kunt alerts instellen die het compliance-team waarschuwen nog voordat een overtreding impact heeft.
Dit is geen theoretische exercitie. Bij een ministerie dat een LLM inzet voor burgercontact, wil je voorkomen dat het model onbedoeld een verboden praktijk uitvoert, zoals het categoriseren van burgers op basis van sociaal gedrag. Traccia maakt die controle technisch afdwingbaar, zonder dat je elke prompt handmatig hoeft te screenen.
Nederlandse context: BIO2, NIS2 en NORA
Voor Nederlandse overheidsorganisaties is observability allang geen nice-to-have meer. BIO2 verplicht logging en monitoring van kritieke informatiesystemen. NIS2 breidt die plicht uit naar essentiële diensten, waaronder veel AI-toepassingen in de zorg en financiële sector. De AI Act voegt daar sectorspecifieke transparantie-eisen aan toe.
Traccia’s aanpak sluit naadloos aan op NORA’s architectuurprincipes. NORA eist dat diensten uitlegbaar en transparant zijn. Met Traccia leg je per AI-aanroep vast welke data is gebruikt, welk model is geraadpleegd, en of er sprake was van een hoog risico. Die gegevens zijn direct te koppelen aan de verwerkingsregisters die de AVG vereist.
In onze eerdere analyse van AI Act-risicoclassificatie (/blog/ai-act-risicoclassificatie) lieten we zien dat veel overheids-LLM’s in de high-risk categorie vallen. Denk aan toepassingen voor uitkeringsbeoordeling, medische triage, of fraudedetectie. Traccia maakt het nu mogelijk om die classificatie operationeel te bewaken, in plaats van alleen op papier.
Aan de slag met AI-governance observability
Traccia is open-source en de eerste release draait op de standaard OpenTelemetry-collector (v0.100+). Je installeert de processor als een extensie en configureert je pipelines. De documentatie op GitHub bevat voorbeelden voor Kubernetes, Docker en bare-metal deployments.
Voor wie direct wil testen of de eigen LLM-deployment voldoet aan de AI Act-metrieken, hebben we een praktische checklist samengesteld. De AI Act Observability Baseline vertaalt Traccia’s metrieken naar concrete eisen uit BIO2, NIS2 en de AI Act. Geen abstracte principes, maar een lijst van attributen die je in je telemetrie moet terugzien.
Download de checklist op djimit.nl/tools/ai-act-observability-checklist.
Bronnen
AI & Security Intelligence
Wekelijkse nieuwsbrief met AI updates, security alerts en compliance inzichten, direct in uw inbox.
Security & AI Operating Model
Advisory met executiekracht
Van BIO2 en NIS2 tot EU AI Act, embedded in uw operating model, niet als extern project. Maandelijks opzegbaar, met assessments als bewijsvoering.