Compliance as Code dla systemów AI
Podejście shift-left do zgodności z rozporządzeniem AI z egzekwowaniem polityk w kodzie, automatycznym skanowaniem i dokumentacją w systemie kontroli wersji.
Zgodność jako Kod oznacza wyrażanie wymagań regulacyjnych jako zasad wykonywalnych przez maszyny, które istnieją obok kodu aplikacji. Dla rozporządzenia AI UE przekłada to artykuły 9-15 na reguły zgodności, polityki kontrolne i automatyczne sprawdzenia dokumentacji wykonywane przy każdym commicie.
To podejście eliminuje lukę między wymaganiami prawnymi a wdrożeniem technicznym. Zamiast interpretować tekst regulacji podczas kwartalnych audytów, Twój zespół pracuje z konkretnymi, testowalnymi regułami, które są wersjonowane, recenzowane i ciągle egzekwowane.
Co oznacza zgodność jako kod dla rozporządzenia AI UE
Rozporządzenie AI UE zawiera ponad 100 artykułów z obowiązkami technicznymi — od systemów zarządzania ryzykiem (artykuł 9) po wymagania dotyczące ścieżki audytu (artykuł 12) po mechanizmy nadzoru ludzkiego (artykuł 14). Tradycyjne podejścia traktują je jako listy kontrolne w arkuszach kalkulacyjnych. Zgodność jako Kod traktuje je jako wykonywalne specyfikacje.
Tradycyjna zgodność
- xZespół prawny interpretuje rozporządzenie i pisze listę kontrolną
- xDeweloperzy ręcznie weryfikują elementy listy kontrolnej względem kodu
- xKwartalne audyty wykrywają naruszenia miesiące po ich wprowadzeniu
- xDokumentacja żyje w oddzielnych systemach i odbiega od kodu
- xBrak historii wersji stanu zgodności w czasie
Zgodność jako Kod
- +Wymagania regulacyjne zakodowane jako reguły zgodności i polityki kontrolne
- +Automatyczne skanowanie weryfikuje zgodność przy każdym commicie
- +Naruszenia wykrywane na etapie PR, przed scaleniem
- +Dokumentacja generowana z analizy kodu, pozostaje zsynchronizowana
- +Pełna historia git reguł zgodności i wyników skanowania
Trzy filary zgodności jako kodu dla rozporządzenia AI
1. Reguły skanowania kodu
Reguły analizy statycznej wykrywające naruszenia zgodności bezpośrednio w kodzie źródłowym w ponad 10 językach programowania.
Reguły wykrywają wzorce specyficzne dla AI: wnioskowanie modelu bez rejestrowania, potoki szkoleniowe bez kontroli jakości danych, punkty decyzyjne bez hooków nadzoru ludzkiego.
Każda reguła jest przypisana do konkretnego artykułu rozporządzenia AI UE i wymagania. Wyniki zawierają odniesienie do artykułu, tekst obowiązku i sugerowaną poprawkę.
Python, TypeScript, JavaScript, Go, Rust, C++, C#, Swift, Kotlin, R i Julia. Te same reguły zgodności, wzorce specyficzne dla języka.
Reguły obsługują snake_case, camelCase, PascalCase i częste błędy pisowni terminów związanych z AI, aby zmniejszyć liczbę fałszywych negatywów.
2. Polityki dokumentów
Polityki Open Policy Agent walidujące dokumenty zgodności względem wymagań rozporządzenia AI UE w 8 językach UE.
Polityki sprawdzają, czy dokumentacja techniczna zawiera wszystkie 9 obowiązkowych sekcji z wymaganym poziomem szczegółowości.
Porównanie istniejącej dokumentacji ze wszystkimi mającymi zastosowanie wymaganiami. Generowanie priorytetowej listy brakujących treści.
Polityki walidują dokumenty w języku angielskim, niemieckim, francuskim, hiszpańskim, niderlandzkim, włoskim, polskim i portugalskim.
Dodatkowe polityki dla systemów AI ogólnego przeznaczenia obejmujące obowiązki przejrzystości i dokumentację modeli.
3. Dokumentacja z kontrolą wersji
Dokumentacja zgodności żyjąca w Twoim repozytorium, wersjonowana obok kodu i walidowana przez zautomatyzowane polityki.
Oceny ryzyka, polityki zarządzania danymi i opisy systemu przechowywane jako ustrukturyzowane dokumenty w Twoim repozytorium.
Dokumentacja techniczna załącznika IV generowana z wyników analizy kodu. Zawsze odzwierciedla bieżący stan bazy kodu.
Historia git zapewnia kompletną ścieżkę audytu zmian dokumentacji zgodności, kto je wprowadził i kiedy.
Automatyczne kontrole wykrywają, gdy dokumentacja nie odpowiada już bazie kodu, oznaczając przestarzałe sekcje do aktualizacji.
Mapowanie artykułów rozporządzenia na kod
Każdy artykuł rozporządzenia AI UE z obowiązkami technicznymi można rozłożyć na konkretne, testowalne wymagania. Oto jak kluczowe artykuły przekładają się na kontrole zgodności jako kodu:
Article 9: System zarządzania ryzykiem
Ustanowienie, wdrożenie, udokumentowanie i utrzymanie systemu zarządzania ryzykiem
Weryfikacja, czy funkcje oceny ryzyka istnieją, są udokumentowane i produkują ustrukturyzowane dane wyjściowe. Sprawdzenie kodu wykrywania i ograniczania uprzedzeń.
Walidacja, czy dokument metodologii zarządzania ryzykiem obejmuje identyfikację, analizę, szacowanie i ocenę ryzyk.
Article 10: Dane i zarządzanie danymi
Dane szkoleniowe, walidacyjne i testowe muszą podlegać praktykom zarządzania danymi
Wykrywanie ładowania danych bez kroków walidacji, potoków szkoleniowych bez kontroli jakości i nieudokumentowanego przetwarzania wstępnego danych.
Sprawdzenie polityki zarządzania danymi obejmującej zbieranie, przygotowanie, etykietowanie, kryteria jakości i badanie uprzedzeń.
Article 12: Prowadzenie rejestrów
Automatyczna rejestracja zdarzeń (logów) przez cały czas życia systemu AI
Oznaczanie operacji AI bez ustrukturyzowanego rejestrowania, brakujących znaczników czasu, nieobecnych identyfikatorów korelacji i niezarejestrowanych wyników decyzji.
Walidacja, czy polityka rejestrowania opisuje, jakie zdarzenia są rejestrowane, okresy przechowywania i kontrole dostępu.
Article 13: Przejrzystość
Projektowanie zapewniające wystarczającą przejrzystość, aby operatorzy mogli interpretować wyniki systemu
Wykrywanie wyników AI bez wyników pewności lub wyjaśnień. Sprawdzenie brakującej dokumentacji dla użytkownika o możliwościach i ograniczeniach AI.
Weryfikacja, czy instrukcja obsługi obejmuje zamierzony cel, poziom dokładności, znane ograniczenia i interakcję z ludźmi.
Article 14: Nadzór ludzki
Projektowanie umożliwiające skuteczny nadzór przez osoby fizyczne
Identyfikacja w pełni autonomicznych ścieżek decyzyjnych bez punktów interwencji ludzkiej, brakujących mechanizmów nadrzędnych i nieobecnej logiki eskalacji.
Sprawdzenie planu nadzoru ludzkiego obejmującego, kiedy i jak ludzcy operatorzy mogą interweniować, nadpisywać lub zatrzymywać system.
Pierwsze kroki
Ustal, czy Twój system jest wysokiego ryzyka (załącznik III), ograniczonego ryzyka czy minimalnego ryzyka. To determinuje, które reguły zgodności mają zastosowanie.
Przeskanuj bazę kodu i dokumentację pod kątem mających zastosowanie wymagań rozporządzenia AI UE, aby ustalić bazowy wynik zgodności.
Dodaj skanowanie zgodności jako krok potoku. Zacznij w trybie doradczym (tylko raportowanie), następnie przełącz na tryb blokujący.
Skoncentruj się najpierw na krytycznych wynikach (zakazane praktyki, brakujący nadzór ludzki), następnie na wysokim priorytecie (zarządzanie ryzykiem, prowadzenie rejestrów).
Gdy wynik spełnia próg, wygeneruj dokumentację załącznika IV i Deklarację Zgodności z wyników skanowania.
Powiązane przewodniki
Jak pomaga Scanara
Scanara automatyzuje zgodność z EU AI Act od kodu do dossier. Połącz swoje repozytoria GitHub i otrzymaj raporty zgodności w kilka minut.