Skip to main content

Compliance als code voor AI-systemen

Hoe compliance als code werkt voor de artikelen 9 tot en met 15: wat een regel kan toetsen, wat bij een mens blijft en wat de regelgebaseerde scans van Scanara wel en niet dekken.

Compliance als code betekent dat u delen van wettelijke vereisten als regels schrijft die samen met uw code draaien. Voor aanbieders van hoogrisico-AI-systemen zijn sommige vereisten van de artikelen 9 tot 15 zo te toetsen, maar de meeste vragen menselijk oordeel.

De plichten gelden vanaf 2 december 2027 (bijlage III) en vanaf 2 augustus 2028 (bijlage I). Artikel 2 noemt uitzonderingen. De boetes bedragen maximaal 15 miljoen EUR of 3 % van de wereldwijde jaaromzet, als dat bedrag hoger is (artikel 99(4)). Volgende stap: kies één artikel en noteer welke van zijn vereisten een regel kan toetsen.

Een regel kan toetsen of iets bestaat; een mens moet beoordelen of het toereikend is

De vereisten van de verordening spreken over wat passend is voor het beoogde doel. Regels maken van het toetsbare deel tests en laten de rest aan mensen.

Wat een regel kan toetsen

  • Of er logcode rond modelaanroepen bestaat (artikel 12).
  • Of de vereiste documenten bestaan en de verwachte onderdelen bevatten (artikelen 11, 13, 17 en 47).
  • Of voor elk systeem een risicoklasse is vastgelegd.
  • Wie een regel of document wanneer heeft gewijzigd (git-historie).

Wat een mens moet beoordelen

  • Of de risicoanalyse toereikend is en het restrisico aanvaardbaar (artikel 9(5)).
  • Of het systeem hoogrisico is, wat afhangt van het beoogde doel (artikel 6).
  • Of menselijk toezicht in de praktijk werkt en bemand is (artikelen 14 en 26(2)).
  • Of documenten waar en volledig zijn. Een scan controleert of inhoud aanwezig is.

Drie bouwstenen: coderegels, documentbeleid, documentatie onder versiebeheer

Coderegels

Regels voor statische analyse (Semgrep) herkennen standaardpatronen van ML-frameworks in uw broncode.

  • Patroonherkenning: Regels markeren AI-bewerkingen zonder herkenbare logging, validatie of punten voor menselijk ingrijpen.
  • Koppeling aan artikelen: Elke regel hoort bij een artikel van de verordening.
  • Grenzen: De betrouwbaarheid van de herkenning verschilt per niveau van de programmeertaal, en experimentele niveaus hebben meer fout-positieven en fout-negatieven. Eigen wrappers en verhulde code kunnen gemist worden.

Documentbeleid

Open Policy Agent-beleid (OPA) controleert compliancedocumenten op vereiste inhoud in acht talen: EN, DE, FR, IT, ES, NL, PL en PT.

  • Onderdelen van de technische documentatie: Het beleid controleert of de technische documentatie de acht onderdelen bevat die de regels van Scanara eisen, gebaseerd op bijlage IV. Het controleert of inhoud aanwezig is, niet of ze goed is.
  • GPAI-documenten: Een documentscan dekt de documentatie van aanbieders van AI-modellen voor algemene doeleinden (artikel 53). Dossiergeneratie maakt conceptdocumenten volgens de bijlagen XI en XII.

Documentatie onder versiebeheer

Documentatie in uw repository staat onder versiebeheer samen met uw code.

  • Documentatie als code: Risicobeoordelingen en systeembeschrijvingen staan als gestructureerde bestanden in de repository. Uw git-historie toont wie wat wanneer heeft gewijzigd. Artikel 11 eist dat de technische documentatie actueel wordt gehouden.
  • Gegenereerde concepten: Scanara maakt documenten volgens bijlage IV op basis van uw gegevens en beoordelingsantwoorden. Automatisch invullen gebeurt gedeeltelijk, en onjuiste invoer levert goed opgemaakte onjuiste documenten op.

Van artikel naar controle: wat een regel dekt en wat bij u blijft

Vijf artikelen laten zien hoe een vereiste uiteenvalt in een regelgebaseerde controle en een menselijke taak. De dekking verschilt per artikel: sommige hebben coderegels, sommige documentscans, sommige een begeleide beoordeling.

Artikel 9: risicobeheer

Vereiste
Een risicobeheersysteem gedurende de levenscyclus opzetten, toepassen, documenteren en onderhouden (artikel 9(1) en (2)).
Controle in Scanara
Coderegel: markeert AI-beslispunten zonder herkenbare code voor risicobeoordeling of validatie. Een begeleide beoordeling legt uw risicoanalyse vast als bewijs.
Blijft bij u
De risico’s vaststellen en beoordelen, en beslissen dat het restrisico aanvaardbaar is (artikel 9(5)).

Artikel 11: technische documentatie

Vereiste
De technische documentatie opstellen vóór het in de handel brengen of in gebruik stellen en actueel houden, met minstens de elementen van bijlage IV.
Controle in Scanara
Documentscan: controleert of de acht verplichte onderdelen aanwezig zijn die de regels van Scanara voor de technische documentatie bepalen, gebaseerd op bijlage IV. Dossiergeneratie maakt de documentatie van bijlage IV op basis van uw gegevens.
Blijft bij u
Juiste inhoud schrijven en actueel houden. Een scan controleert aanwezigheid, niet waarheid.

Artikel 12: registratie

Vereiste
De automatische registratie van gebeurtenissen (logs) gedurende de levenscyclus van het systeem mogelijk maken.
Controle in Scanara
Coderegel: markeert AI-bewerkingen zonder herkenbare logging.
Blijft bij u
De te registreren gebeurtenissen kiezen voor de drie doelen van artikel 12(2) en de logs bewaren.

Artikel 13: transparantie

Vereiste
Het systeem zo ontwerpen dat gebruiksverantwoordelijken de output kunnen interpreteren en passend gebruiken, en gebruiksaanwijzingen verstrekken.
Controle in Scanara
Documentscan: controleert of gebruiksaanwijzingen bestaan en de vereiste onderdelen bevatten.
Blijft bij u
De gebruiksaanwijzing juist en begrijpelijk maken voor gebruiksverantwoordelijken.

Artikel 14: menselijk toezicht

Vereiste
Het systeem zo ontwerpen dat natuurlijke personen er doeltreffend toezicht op kunnen houden. Voor zover passend en evenredig moeten ze kunnen ingrijpen of het systeem onderbreken, bijvoorbeeld via een stopknop of een vergelijkbare procedure (artikel 14(1) en (4), e)).
Controle in Scanara
Coderegel: markeert beslispaden zonder herkenbaar punt voor menselijk ingrijpen.
Blijft bij u
Toezicht ontwerpen dat in de praktijk werkt en getrainde mensen aanwijzen (artikel 26(2)).

Wat Scanara niet doet

Scanara observeert geen draaiende systemen, beoordeelt niet het beoogde doel of de bedrijfscontext, geeft geen juridisch advies en vervangt geen conformiteitsbeoordeling door een aangemelde instantie waar die vereist is. Dezelfde code kan minimaal of hoog risico zijn, afhankelijk van het beoogde doel. Een geslaagde scan bewijst geen naleving.

Beginnen in vijf stappen

  • 1

    Classificeer uw AI-systeem

    Bepaal of uw systeem hoogrisico is (artikel 6, bijlage III). De uitkomst hangt af van het beoogde doel en is uw beslissing.

  • 2

    Voer een eerste scan uit

    Scan uw code en documenten voor een nulmeting van bevindingen. Lees ze als aanwijzingen, niet als oordeel.

  • 3

    Neem de scan op in uw pipeline

    Begin in alleen-rapportagemodus en overweeg daarna de blokkerende modus. De gids over CI/CD beschrijft de fasen.

  • 4

    Werk bevindingen af op prioriteit

    Laat eerst een mens de bevindingen beoordelen die wijzen op artikel 5 of artikel 14.

  • 5

    Stel de documentatie op

    Genereer conceptdocumenten volgens bijlage IV en V op basis van uw gegevens en vul ze daarna aan en controleer ze.

Uitzonderingen, oudere systemen en maxima voor boetes

De verordening is niet van toepassing op AI-systemen die uitsluitend voor militaire doeleinden, defensie of nationale veiligheid worden gebruikt (artikel 2(3)). Ze is niet van toepassing op AI-systemen die specifiek en uitsluitend voor wetenschappelijk onderzoek en wetenschappelijke ontwikkeling zijn ontwikkeld en in gebruik gesteld (artikel 2(6)), noch op onderzoek, testen of ontwikkeling vóór het in de handel brengen of in gebruik stellen, behalve testen onder reële omstandigheden (artikel 2(8)). Systemen onder vrije en opensourcelicenties zijn uitgezonderd, tenzij ze als hoogrisicosystemen in de handel worden gebracht of in gebruik worden gesteld of onder artikel 5 of 50 vallen (artikel 2(12)). Natuurlijke personen die een systeem in een zuiver persoonlijke niet-beroepsmatige activiteit gebruiken, zijn niet als gebruiksverantwoordelijke gebonden (artikel 2(10)). Voor hoogrisicosystemen die verband houden met producten onder wetgeving uit bijlage I, afdeling B, zoals motorvoertuigen, luchtvaart, spoorwegen, scheepsuitrusting, landbouwvoertuigen en machines, gelden alleen artikel 6(1), artikel 60a en de artikelen 102 tot en met 112. De artikelen 57 tot en met 59 gelden alleen voor zover die wetgeving de vereisten overneemt (artikel 2(2)).

Hoogrisicosystemen die vóór de toepassingsdatum in de handel zijn gebracht of in gebruik zijn gesteld, vallen er pas onder na ingrijpende ontwerpwijzigingen. In elk geval moeten aanbieders en gebruiksverantwoordelijken van hoogrisico-AI-systemen die bedoeld zijn om door overheidsinstanties te worden gebruikt, uiterlijk 2 augustus 2030 de nodige stappen ondernemen om te voldoen (artikel 111(2)).

Voor mkb-bedrijven geldt per boete het laagste percentage of bedrag als maximum (artikel 99(6)). Voor kleine midcapondernemingen (artikel 3, punt 14b) geldt hetzelfde maximum voor boetes uit artikel 99, leden 4 en 5 (artikel 99(6a)). De categorie van 15 miljoen EUR omvat ook de verplichtingen van aanbieders en marktdeelnemers uit artikel 25, leden 2 en 4 (artikel 99(4), punt da)).

Scanara bereidt bewijs voor vanuit uw repositories

Scanara leest uw gekoppelde GitHub-repositories en voert regelgebaseerde scans uit op gangbare AI- en machine-learningpatronen. Niet-standaardcode kan het missen. Daarnaast genereert het conceptdocumentatie op basis van sjablonen en uw antwoorden in de beoordelingen, als bewijs voor uw compliancewerk. De indeling bepaalt u zelf.