Skip to content

Releases: studiogo/cenzor

0.1.0 — pierwsze wydanie

Choose a tag to compare

@studiogo studiogo released this 04 Sep 17:12

Wycina polskie dane osobowe z dokumentu, zanim wyślesz go do ChatGPT, Claude albo
innego modelu. Wszystko dzieje się na Twoim komputerze — żaden plik nie wychodzi
do sieci. Po powrocie odpowiedzi wstawia prawdziwe dane z powrotem, więc pracujesz
normalnie, a model nigdy nie widzi nazwisk Twoich klientów.

Co to potrafi

Rozpoznaje 23 rodzaje polskich numerów. Osiem z nich potwierdza się samo cyfrą
kontrolną — PESEL, NIP, REGON, dowód osobisty, paszport, księga wieczysta, numer
prawa wykonywania zawodu lekarza, IMEI. Numer, który nie przechodzi sprawdzenia,
nie jest wycinany, więc kwota w sprawozdaniu zostaje kwotą.

Nazwiska, firmy i instytucje wycina model języka polskiego, więc łapie je także
w odmianie i wtedy, gdy nie ma ich na żadnej liście.

Przyjmuje PDF, Word, OpenDocument i zwykły tekst — format rozpoznaje po zawartości,
nie po rozszerzeniu. Jest okno w przeglądarce w czterech krokach dla osób, które
nie chcą dotykać wiersza poleceń.

Ile z tego działa

Zmierzone na 324 057 słowach polskich pism urzędowych z Biuletynów Informacji
Publicznej, w dwóch osobnych zestawach. Drugi zebrany po zakończeniu prac, więc
narzędzie nie widziało tych dokumentów, gdy powstawały jego reguły.

co wynik
pełne nazwiska na dokumentach niewidzianych 98,9%
PESEL, NIP, REGON, konto, telefon, kod pocztowy 100%
rodzaje numerów rozpoznane 23 z 23
odwracalność, tekst odtworzony co do znaku 20 z 20 dokumentów

Kontrola na cudzym materiale, gdzie nazwiska oznaczyli ludzie, a nie maszyna
(korpus KPWr Politechniki Wrocławskiej): 98,1% pełnych nazwisk.

Sposób liczenia i sposób powtórzenia pomiaru u siebie: pomiar/WYNIKI.md.

Czego to wydanie nie załatwia

  • Nie chroni przed rozpoznaniem po treści. Wycięcie nazwisk nie znaczy, że nikt nie
    ustali, o kogo chodzi — sprawdzaj wynik przed wysłaniem.
  • Skan bez warstwy tekstowej jest bezużyteczny. Program powie to wprost.
  • Wyjście jest zawsze tekstowe, także dla PDF i Worda. Układ strony przepada.
  • Nazwa firmy bywa rozcinana przez „Sp. z o.o.", a sygnatura sprawy sądowej potrafi
    zostać wzięta za numer rejestracyjny pojazdu. Obie wady są znane i opisane.

Jak zacząć

git clone https://github.com/studiogo/anonimizuj-pl.git
cd anonimizuj-pl
./instaluj.sh
venv/bin/python okno/serwer.py

Potrzebny Python 3.10 lub nowszy. Instalacja ściąga model języka polskiego (574 MB).

Licencja MIT.