Ta strona używa ciasteczek (cookies), dzięki którym nasz serwis może działać lepiej. Rozumiem

05.05.2025

Automatyzacja analizy dokumentów przetargowych w branży budowlanej – NLP, RPA i system wczesnego ostrzegania

Automatyzacja analizy dokumentów przetargowych w branży budowlanej – NLP, RPA i system wczesnego ostrzegania

Automatyzacja analizy dokumentów przetargowych w branży budowlanej – NLP, RPA i system wczesnego ostrzegania

Niniejsze case study dotyczy średniej wielkości generalnego wykonawcy infrastrukturalnego, który co miesiąc analizuje ponad 3 000 stron dokumentacji przetargowej: SWZ, SIWZ, projektów umów oraz załączników technicznych.

Dlaczego ręczna analiza przestała wystarczać?
 

  • Średni czas ręcznego przeanalizowania pełnej dokumentacji jednego przetargu wynosił 5 godzin i 12 minut – przy 30+ przetargach miesięcznie oznaczało to ponad 150 roboczogodzin.
  • Przeoczenia w zapisach umownych skutkowały ponad 2,4 mln zł kar w ciągu ostatnich 3 lat. Najczęściej dotyczyły zapisów o karach za opóźnienia, błędy projektowe i niewypełnienie obowiązków gwarancyjnych.
  • Brak centralnej bazy wiedzy. Każdy inżynier prowadził osobne notatki, często w Excelu, przechowywane lokalnie. Utrudniało to naukę na błędach i wnioskowanie z przeszłości.
     

Cel projektu
 

  1. Skrócenie czasu preselekcji przetargu do poniżej 1 godziny, tak aby zarząd mógł podejmować decyzje bid/no-bid w oparciu o rzetelne informacje.
  2. Zautomatyzowane wykrywanie ryzyk kontraktowych – w szczególności: wysokie kary umowne, nierealistyczne terminy, wymogi gwarancyjne bez pokrycia w praktyce, zapisy przerzucające ryzyko na wykonawcę.
  3. Repozytorium wiedzy z możliwością porównywania zapisów kontraktowych między kolejnymi edycjami przetargów. Pozwoliło to ocenić, czy inwestor systemowo podnosi wymagania.

Warstwa danych
 

System zasilany był z trzech głównych źródeł:

  • Pliki PDF z platform e-zamówień publicznych (pobierane poprzez API lub scrapowane w przypadku braku dostępnego JSON). Zdarzało się, że pliki miały różną strukturę, co wymagało dynamicznego parsowania.
  • Załączniki DWG/DXF zawierające schematy instalacyjne – analizowane tylko pod kątem metadanych (nazwa pliku, wersja, autor, data modyfikacji), bez głębokiej analizy graficznej.
  • E‑mailowe zaproszenia do ofertowania od klientów prywatnych (w formacie .MSG i .EML), które zawierały nietypowe wymagania lub dokumentację niepublikowaną publicznie.
     

Architektura rozwiązania
 

Pipeline ETL + NLP
  1. Ingestion – robot RPA (UiPath) loguje się na portale e-zamówień, pobiera dokumentację przetargową (ZIP) i przesyła do Azure Blob Storage.
  2. OCR & warstwa tekstowa – zastosowano Tesseract-4 z fine-tuningiem dla języka polskiego. Osiągnięto średni CER (Character Error Rate) na poziomie 0,19.
  3. Chunking – dokumenty SWZ dzielone były na fragmenty według sekcji prawnych (§, Art.) lub co 500 tokenów, zapewniając czytelność i ciągłość kontekstu.
  4. NLP + NER – wykorzystano model SpaCy z rozszerzeniem transformers (pl-transformers-ner-contract), zawierający ~9 mln parametrów, specjalnie wytrenowany na klauzulach kontraktowych.
  5. Risk Classifier – bazowy model BERT-base-pl uzupełniono o warstwę CRF, uczoną wykrywać konkretne klasy ryzyk: penalty, warranty, liquidated_damages, payment_terms.
  6. Vector store – FAISS (Index Flat + IVF-PQ) przechowujący embeddingi tekstowe generowane przez SBERT-paraphrase-pl-distil. Dzięki temu można było zadawać pytania i znajdować podobne zapisy w przeszłych dokumentach.
  7. Dashboard – warstwa prezentacji danych oparta na Power BI Premium. Użytkownicy mogli przeglądać mapy ryzyka w ujęciu kalendarzowym oraz korzystać z filtrowania po inwestorze, województwie, branży.

Implementacja krok po kroku


Tydzień 1–2: Proof of Concept

W pierwszym etapie zespół prawniczy ręcznie oznaczył 1200 klauzul kontraktowych. Dzięki temu model NLP uzyskał wysoką skuteczność: F1 = 0,91 dla kategorii penalty już po trzech epokach transfer learningu.

Tydzień 3–6: Automatyczne pobieranie danych

Zbudowano robota RPA, który obsługuje 27 platform e-zamówień. Głównym wyzwaniem były nietypowe captche i dynamiczne layouty stron – użyto Google Vision API do segmentacji znaków oraz heurystyk CSS do lokalizacji przycisków pobierania.

Tydzień 7–10: Silnik klasyfikacji ryzyka

Każdej klauzuli przypisano:

  • wagę finansową – np. kara 0,5% za każdy dzień opóźnienia,
  • wagę operacyjną – np. zapis o 10-dniowym terminie przekazania placu budowy po podpisaniu umowy.

Całościowy risk score kalibrowano metodą ROC-AUC (AUC = 0,87), optymalizując thresholdy dla recall vs precision.

Tydzień 11–16: Integracja z systemem pracy

W MS Teams powstał nowy kanał: Przetargi AI. Notyfikacje o nowych przetargach zawierały od razu alert o poziomie ryzyka. Użytkownik mógł kliknąć i zobaczyć side-by-side porównanie zapisów z poprzednimi wersjami (embedding similarity).

Rezultaty po 6 miesiącach produkcji
 

  • Skrócenie czasu preselekcji z 5h 12min do 38 minut – oszczędność ~130 godzin miesięcznie.
  • Wykrywalność klauzul karowych: recall 96,8%, precision 94,1%.
  • Spadek fałszywego poczucia bezpieczeństwa – udział błędnie ocenionych przetargów jako "niskie ryzyko" spadł z 17% do 3,1%.
  • Szacowana oszczędność kosztów dzięki lepszym decyzjom i renegocjacjom – 1,8 mln zł rocznie.
  • ROI projektu po 12 miesiącach = 164%; zwrot inwestycji w 7,2 miesiąca.

u8117694848_A_high-resolution_telephoto_lens_wide_angle_photo_24a5c662-7a48-4e60-87fd-72bddd1364ca_2

Aspekty kulturowe

Kluczowym wyzwaniem było zdobycie zaufania działu prawnego do rekomendacji modelu. Dlatego wprowadzono panel explainability – każdy fragment tekstu został oznaczony kolorem odpowiadającym wpływowi na klasyfikację. Ponadto, odbywały się cotygodniowe spotkania model governance, gdzie wspólnie aktualizowano listę wyjątków, które model miał ignorować lub traktować z ostrożnością.

Best practices & lessons learnt
 

  1. Rozdziel warstwę OCR i NLP – nie warto optymalizować do poziomu perfekcji OCR, jeśli model NLP potrafi radzić sobie z błędami. Stabilność ważniejsza niż perfekcja.
  2. Zbieraj przypadki negatywne – dokumenty, w których nie ma ryzyka, są równie ważne. Model uczy się, czego nie oznaczać.
  3. Embeddingi całych sekcji dają lepsze wyniki niż zdania – kontekst prawny często wymaga zrozumienia relacji między punktami (np. Art. 4 i Art. 5).
  4. Automatyzacja pobierania to fundament – bez niej użytkownik nadal traci dziesiątki minut, zanim w ogóle uruchomi analizę AI.

Podsumowanie


Automatyczna analiza dokumentów przetargowych z wykorzystaniem NLP i RPA to realna przewaga konkurencyjna w branży budowlanej. Pozwala podjąć decyzję bid / no-bid w mniej niż godzinę, zminimalizować ryzyko umowne i uwolnić zasoby prawnicze do analizy wyjątkowych przypadków.

Jeśli Twoja firma przetwarza miesięcznie setki plików SWZ – skontaktuj się z nami, by uzyskać bezpłatny assessment potencjału i obliczyć własny ROI. Kliknij tutaj, aby porozmawiać z naszym zespołem AI dla sektora budowlanego.

Autor: JCD

Od przeszło dekady konsekwentnie przekształcamy zaawansowane idee w funkcjonalne aplikacje oraz internetowe platformy usługowe. Nasza działalność koncentruje się na głębokim zrozumieniu natury przedsiębiorstwa oraz kluczowych wymagań, które są fundamentem dla każdego przedsięwzięcia.

Stale łączymy metody kreatywne z systematycznym, badawczym podejściem, przekonani, że jedynie przez dogłębną analizę i zrozumienie specyfiki wyzwań, jesteśmy w stanie w pełni współpracować z naszymi klientami w celu kreowania innowacyjnych rozwiązań. Te rozwiązania nie tylko ulepszają doświadczenie użytkowników, ale również zapewniają naszym klientom strategiczną przewagę na rynku. Nasze procesy projektowe są zatem oparte na aktywnym słuchaniu, szczegółowej analizie i ciągłym dialogu z klientami. W ten sposób nieustannie pracujemy na rzecz tworzenia nie tylko technologii, ale także wartości, które wyznaczają nowe standardy w cyfrowym krajobrazie biznesu.

Darmowa konsultacja

Umów bezpłatną konsultację

Przeprowadzimy wstępną konsultację – wspólnie omówimy, jak
Twoja firma może zyskać na optymalizacji przy pomocy sztucznej inteligencji.

Napisz do nas!