Przejdź do treści

Automatyczne segregowanie dokumentów firmowych: workflow n8n z klasyfikacją AI

Dawid Kuliberda · · 4 min czytania

Szukasz faktury z marca i znajdujesz ją po pół godzinie, w folderze z umowami. Plik był, w złym miejscu. Czwarty wpis tej serii opisuje szablon z otwartego katalogu n8n-sme-workflows, który robi tę klasyfikację automatycznie.

Gdzie tkwi problem

W biurze rachunkowym albo dziale back office codziennie coś wpada do skrzynki. Skany i PDF-y od dostawców. Ktoś musi to otworzyć, zobaczyć, co to jest, i odłożyć we właściwe miejsce.

Błąd pojawia się, kiedy plik ma niejasną nazwę i ktoś zgaduje z kontekstu. Albo kiedy dokument przychodzi w środku innego zadania i ląduje w ogólnym folderze "do posortowania" - skąd może nie wrócić przez kilka tygodni.

Skutek jest niewidoczny na co dzień. Widać go, kiedy zewnętrzny audytor pyta o fakturę z marca.

Jak workflow klasyfikuje dokumenty

Szablon przyjmuje dokument przez webhook. Oczekuje, że tekst jest już wyciągnięty z pliku: OCR i odbiór poczty muszą się odbyć przed dotarciem do n8n. Webhook sprawdza token autoryzacyjny i odrzuca wszystko bez ważnego tokenu zanim uruchomi się jakakolwiek logika.

Następnie deduplikacja. Workflow oblicza unikalny klucz dokumentu ze skrótu pliku, a gdy go brak, z identyfikatora załącznika, nazwy i typu pliku. Jeśli taki klucz już istnieje w bazie, system zwraca odpowiedź o duplikacie i cały proces zatrzymuje się tam. Nie ma drugiego rekordu.

Jeśli dokument jest nowy, tekst przechodzi przez redakcję przed wysłaniem do modelu AI. Wzorce wyszukują maile, numery telefonów, IBAN-y i numery podatkowe w tekście oraz nazwie pliku. Model dostaje oczyszczony fragment, skrócony do sześciu tysięcy znaków. To ogranicza zakres przekazanych danych, ale nie gwarantuje usunięcia wszystkich informacji wrażliwych. Nazwa pliku jest też czyszczona ze znaków specjalnych i separatorów ścieżek przed zbudowaniem ścieżki archiwum.

Model klasyfikuje dokument do jednej z czterech kategorii: Faktura, Umowa, Paragon, Inne. To zamknięta taksonomia z furtką. Jeśli coś nie pasuje do żadnej z pierwszych trzech, trafia w "Inne". Kategoria "Inne" zawsze idzie do przeglądu przez człowieka, bez wyjątku. Model nie może dopisać piątej kategorii - każda wartość spoza listy jest wymuszana do "Inne".

Po klasyfikacji następuje walidacja. Workflow ponownie parsuje odpowiedź modelu - łącznie z zagnieżdżonym JSON-em - i weryfikuje każde pole osobno. Typ dokumentu, strony umowy, data, kwota. Nic, co model powie, nie zapisuje się do bazy bez przejścia przez tę warstwę.

Próg pewności dla automatycznego odłożenia to 0,82. Są też osobne progi dla każdego pola. Faktura i paragon muszą mieć konkretną walutę. Jeśli którykolwiek warunek nie jest spełniony, dokument trafia do kolejki przeglądu z alertem mailowym na skrzynkę operacyjną.

Ta asymetria jest celowa. Źle odłożony dokument jest gorszy od dokumentu czekającego w kolejce na człowieka.

Rekord z pewną klasyfikacją dostaje status zaarchiwizowanego i deterministyczną ścieżkę archiwum. Rekord wątpliwy trafia do kolejki przeglądu. Co godzinę działa mechanizm uzgadniania alertów: sprawdza, czy są rekordy bez wysłanego powiadomienia i nadrabia brakujące. Na wypadek, gdyby pierwsza próba wysyłki nie zarejestrowała się poprawnie.

Co jest w repozytorium i czego nie ma

Plik workflow.json jest dostępny bezpłatnie:

Pobierz szablon segregowania dokumentów z GitHuba.

Pełne repozytorium: n8n-sme-workflows.

Katalog liczy 14 pozycji, z czego 8 szablonów leży w tym repozytorium.

Przed konfiguracją warto znać ograniczenia. Opisuję je uczciwie, bo instalacja szablonu bez tej wiedzy kończy się frustracją przy pierwszym prawdziwym dokumencie.

Szablon nie odbiera poczty i nie przetwarza obrazów. Oczekuje, że tekst dokumentu jest wyciągnięty i przychodzi w payloadzie webhooka. Wpięcie skrzynki pocztowej i dostawcy OCR to dodatkowa praca integracyjna, poza zakresem szablonu.

Archiwizacja jest logiczna. Workflow zapisuje ścieżkę archiwum jako pole w bazie danych. Plik nie jest fizycznie przenoszony na Google Drive, SharePoint ani S3. Żeby dokument faktycznie trafił do folderu w chmurze, trzeba dopisać węzeł przesyłania po kroku zapisu.

Fragment tekstu trafia do OpenAI po redakcji rozpoznanych wzorców danych. Zanim system zacznie przetwarzać prawdziwe dokumenty firmowe, sprawdź skuteczność tej redakcji na reprezentatywnych próbkach i zestaw ją z własną polityką przetwarzania danych.

Kiedy szablon to za mało

Szablon robi jedną rzecz dobrze: klasyfikuje i przekierowuje. Typowe wdrożenie w biurze rachunkowym potrzebuje czegoś więcej: automatycznego odbioru poczty, OCR zintegrowanego z tym samym przepływem, fizycznego przenoszenia plików do właściwych katalogów w chmurze i polityki danych dopasowanej do branży.

To praca integracyjna, dużo cięższa niż konfiguracja samego szablonu. Szczegóły, co wchodzi w skład gotowego wdrożenia, są na karcie:

O tym, ile kosztuje automatyzacja procesów w firmie i co naprawdę wpływa na wycenę, piszę osobno w artykule ile kosztuje automatyzacja procesów.

Wróć na początek ↑
// next

Najprościej zacząć od diagnozy.

W pół godziny rozmowy usłyszysz konkretną odpowiedź: gdzie w Twojej firmie system zdejmie najwięcej ręcznej pracy.

UMÓW BEZPŁATNĄ DIAGNOZĘ →[ ← wróć na bloga ]
Automatyczne segregowanie dokumentów firmowych: workflow n8n z klasyfikacją AI | Kuliberda Labs