AI crawler na automatizovaný zber trhových dát

Backend:

LLM:

Web Scraping:

Veľkosť tímu

4

crawler

Zákazník – medzinárodné pôsobiaca personálna agentúra z Nemecka, hľadal efektívny spôsob ako zhromažďovať pracovné ponuky zverejnené na súkromných a štátnych portáloch, ako aj stránkach pracovných agentúr pôsobiacich na Slovensku. Kľúčovými požiadavkami boli relevantnosť a súlad s platnou legislatívou – systém mal zabezpečiť, aby boli zhromažďované iba platné pracovné ponuky a aby sa predišlo neoprávnenému alebo neetickému zberu údajov.

O projekte

Našou úlohou bolo pripraviť riešenie, ktoré by umožnilo zbierať dáta zo zdrojov s vopred známou a neznámou štruktúrou, s cieľom vytvoriť komplexnú databázu pracovných ponúk.

Náš tím mal overiť technickú realizovateľnosť a ekonomickú efektívnosť navrhnutého riešenia, ako aj vyhodnotiť kvalitu generovaných výstupov a systematicky ju zlepšovať.

Biznisová výzva

Klient mal jedinú požiadavku – získať komplexné trhové dáta v požadovanej kvalite. Neexistovalo žiadne konkrétne zadanie ani štandardizované riešenie, technickú realizáciu nám zveril plne do rúk.

Významnou výzvou bola aj vysoká miera neistoty – nebolo možné vopred odhadnúť, či navrhnuté riešenie bude technicky funkčné alebo ekonomicky efektívne. Proces si preto vyžadoval množstvo experimentovania, iterácií a priebežného vyhodnocovania, aby sme mohli riešenie optimalizovať a dosiahnuť požadovanú kvalitu výstupu.

Ako sme postupovali

1. Úvodná fáza a analýza dátových zdrojov

Na začiatku projektu prebehol interný brainstorming, počas ktorého sme navrhli možné prístupy k riešeniu zberu trhových dát. Identifikovali sme relevantné externé zdroje a posúdili sme ich technickú prístupnosť aj vhodnosť pre ďalšie spracovanie. Táto fáza nám umožnila zvoliť si optimálne technické smerovanie a rozlíšiť medzi štruktúrovanými a neštruktúrovanými dátami.

2. Testovanie konceptu pre zber neštruktúrovaných dát (AI vetva)

V nasledujúcom kroku sme sa zamerali na overenie technickej realizovateľnosti zberu neštruktúrovaných dát pomocou umelej inteligencie. Vytvorili sme prototyp, ktorý sme otestovali na vybraných zdrojoch, a vyhodnotili sme kvalitu prvotných výstupov.

3. Paralelný vývoj oboch vetiev riešenia

Na základe rozdelenia dátových zdrojov sme pristúpili k paralelnému vývoju dvoch vetiev riešenia. Prvá vetva sa zamerala na štruktúrované zdroje, ktoré sme spracovali pomocou klasických extrakčných algoritmov. Druhá vetva riešila neštruktúrované zdroje, kde sme využili jazykové modely (LLM), ktoré umožnili pokročilú interpretáciu a spracovanie textových údajov.

4. Vývoj, testovanie a optimalizácia

Počas vývoja sme zaviedli viaceré technické mechanizmy, napríklad distribúciu požiadaviek v čase, aby sme predišli blokovaniu zo strany cieľových serverov. Implementovali sme spracovanie chýb, deduplikáciu, ako aj logiku na čistenie a štandardizáciu dát. Priebežne sme realizovali kvantitatívnu a kvalitatívnu validáciu výstupov, pričom sme iteratívne zlepšovali presnosť, relevanciu a pokrytie zozbieraných údajov. Logika riešenia sa ďalej upravovala na základe reálnych výsledkov a spätnej väzby od klienta.

5. Nasadenie a priebežný monitoring výkonu

Finálnym krokom bolo nasadenie riešenia do prevádzky, spolu s nastavením priebežného monitoringu jeho výkonu. Sledujeme stabilitu, kvalitu výstupov a promptne reagujeme na možné zmeny v štruktúre cieľových zdrojov.

Výsledky a biznisový prínos

Hlavné funkcionality prototypu

1. Automatizovaný zber údajov

Systém automatizovane získava záznamy z viacerých dôveryhodných zdrojov v pravidelných intervaloch. Všetky dáta sú aktualizované najneskôr do 3 dní od ich pôvodného zverejnenia.

2. Zber zo zdrojov s vopred známou štruktúrou

Zameranie na dobre organizované webové portály (napr. štátne portály, personálne agentúry), čo umožňuje rýchly a spoľahlivý zber veľkého množstva údajov.

3. Zber zo zdrojov s neznámou štruktúrou s využitím umelej inteligencie (LLM)

Na weboch bez vopred známej štruktúry je použitý jazykový model na identifikáciu a extrakciu kľúčových informácií, kde bežné algoritmy zlyhávajú.

4. Presná extrakcia údajov pomocou AI

5. Filtrovanie duplicít

Systém obsahuje mechanizmus na detekciu duplicitných záznamov, aby sa zobrazovali len unikátne záznamy z relevantných zdrojov.

6. Zabezpečenie relevantnosti a kvality

Výstupy sú priebežne vyhodnocované, pričom sa systém iteratívne vylepšuje s cieľom dosiahnuť nižšiu chybovosť, vyššiu presnosť a konzistenciu, a väčší dosah.

7. Výstup v štruktúrovanej forme

Zhromaždené údaje sú ukladané do SQL databázy, exportovateľné do formátov ako JSON alebo XML, a obsahujú všetky potrebné atribúty. Systém je pripravený na integráciu s ďalšími platformami alebo analytickými nástrojmi.

8. Škálovateľnosť a flexibilita

Riešenie je navrhnuté tak, aby bolo ľahko rozšíriteľné o nové krajiny, zdroje alebo funkcionality podľa rastúcich potrieb platformy.

9. Právne a etické aspekty

Celé riešenie je navrhnuté s dôrazom na súlad s legislatívou a etickými princípmi.

S čím Vám vieme pomôcť?