ktzr.pl / legal-tech / anon-legal-pl

anon-legal-pl

Anonimizacja, która nie wypuszcza danych z kancelarii

Popularny scenariusz wygląda tak: chcesz skorzystać z zewnętrznego modelu przy aktach, więc najpierw anonimizujesz dokument w usłudze online. Tyle że żeby usługa mogła cokolwiek ukryć, musi najpierw te dane zobaczyć i przetworzyć na swoich serwerach. Nasze narzędzie odwraca kolejność: dane znikają, zanim cokolwiek opuści komputer.

Specyfikacja
Licencja
Apache 2.0
Działa
lokalnie, bez chmury
Język
Python
Wejście
DOCX · TXT · PDF (też skany)
Koszt
0 zł
Pobranie
git clone github.com/apiotrowski-afk/anon-legal-pl

Instalacja zależności i uruchomienie — w README repozytorium.

Problem

Anonimizacja, która i tak wysyła dane

Żeby usługa w chmurze mogła ukryć dane przed modelem, najpierw musi je sama zobaczyć. W poufnych aktach jest to ryzyko nie do przyjęcia, a często wprost naruszenie obowiązków wobec klienta. Rozwiązanie jest pozorne: chroni przed jednym podmiotem, oddając dane drugiemu.

Podgląd działania

Zapytanie i odpowiedź

Jedno wywołanie, od pliku z aktami do wersji, którą można pokazać modelowi.

anon-legal-pl LOKALNIE

anonimizuj.py akta.txt wynik.txt

Jan Kowalski → [OSOBA_1]

PESEL 12345678901 → [PESEL_1]

ACME Sp. z o.o. → [PODMIOT_1]

zapisano wynik.txt + mapowanie.json

✓ wysłano do sieci: 0 bajtów

Dane w przykładzie są fikcyjne.

W praktyce

Dwie komendy. Całość dzieje się na Twoim sprzęcie, bez połączenia z siecią.

anon-legal-pl · wiersz poleceń BEZ CHMURY
python ocr.py skan.pdf akta.txt
skan → tekst, offline (Tesseract)
python anonimizuj.py akta.txt wynik.txt
Jan Kowalski, PESEL 12345678901  →  [OSOBA_1], PESEL [PESEL_1]
ACME Sp. z o.o.  →  [PODMIOT_1]
zapisano wynik.txt oraz mapowanie.json

Dane w przykładzie są fikcyjne. Flagą --bielik włącza się drugi przebieg lokalnym modelem, który wyłapuje to, co umknęło wcześniej.

Jak to działa
01

Presidio

Silnik wykrywania danych osobowych od Microsoftu, uruchamiany lokalnie.

02

Polski model spaCy

Rozpoznaje encje z uwzględnieniem odmiany — nazwisko w każdym przypadku.

03

Bielik, opcjonalnie

Drugi przebieg lokalnym modelem przez Ollamę, dla tego, co umknęło.

Co wykrywa

Pięć rodzajów danych

Identyfikatory

PESEL, NIP, REGON — z walidacją sumy kontrolnej, co wyraźnie ogranicza fałszywe trafienia.

Dane osobowe

Nazwiska i adresy w różnych przypadkach gramatycznych, nie tylko w mianowniku.

Dane sprawy

Sygnatury sądowe i numery umów — to, po czym akta najłatwiej rozpoznać.

Dane finansowe

Numery rachunków w formacie IBAN.

Podmioty

Nazwy spółek i organizacji występujących w dokumencie.

Drugi przebieg

Flagą --bielik włącza się przebieg lokalnym modelem, który wyłapuje to, co umknęło regułom.

Decyzja projektowa

Pseudonimizacja, nie czarna plama

Zamiast zamazywać dane na czarno, narzędzie podmienia je na spójne znaczniki. Ta sama osoba dostaje ten sam znacznik w całym dokumencie, więc akta nadal da się czytać i analizować. Powstaje przy tym plik mapowania, więc proces da się odwrócić.

Zasada, nie drobny druk

Nie obiecujemy stuprocentowej skuteczności, bo rozpoznawanie encji nigdy nie jest pełne. Wynik wymaga przeglądu przez prawnika, zanim dokument opuści kancelarię. Traktujemy to jako twardą zasadę, a nie zastrzeżenie na dole strony.

Dlaczego powstało u nas

Chcieliśmy korzystać z AI przy aktach, nie oddając danych osobowych na zewnątrz. Gotowe narzędzia tego nie dawały, więc napisaliśmy własne. Jest otwarte, bo prywatności łatwiej zaufać, gdy każdy może sprawdzić, jak działa.

Pytania

Najczęściej zadawane pytania

Czy dokument opuszcza mój komputer?

Nie. Całe przetwarzanie odbywa się lokalnie, bez połączenia z chmurą — także wtedy, gdy włączysz drugi przebieg modelem Bielik.

Czy da się odwrócić anonimizację?

Tak. Narzędzie zapisuje plik mapowania, więc znaczniki można z powrotem zamienić na dane — celowa różnica wobec zamazywania na czarno.

Czy obsługuje skany i PDF-y?

Tak. Skany przechodzą przez warstwę OCR opartą na Tesseract i PyMuPDF, uruchamianą również lokalnie.

Czy wynik można wysłać bez sprawdzenia?

Nie. Rozpoznawanie encji nigdy nie jest pełne, więc wynik wymaga przeglądu przez prawnika, zanim dokument opuści kancelarię.

    Zapytaj prawnika

    Masz pytanie prawne?

    Odpowiemy w ciągu 24h.