Privatni AI na jednom računalu: projekt s oko 40.000 dokumenata

privatni-ai-za-40-000-dokumenata-4-web

Prije deset godina razgovor s arhivom od gotovo 40.000 dokumenata na jednom stolnom računalu zvučao bi nam kao scena iz znanstvene fantastike.

U jednom od projekata Domini Studija radili smo upravo na tome: kako korisniku omogućiti da postavi pitanje o velikoj arhivi dokumenata, pronađe relevantan sadržaj i dobije odgovor s izvorima.

Bez slanja sadržaja vanjskom AI servisu za generiranje odgovora. I bez kupnje velike serverske infrastrukture.

Ovo je prikaz razvijenog i testiranog rješenja. Identitet korisnika i sadržaj privatnih dokumenata nisu dio javnog prikaza.

Polazište: podaci postoje, ali treba doći do njih

Arhiva je sadržavala Word dokumente (.doc i .docx), PDF-ove te brojne mape i podmape, a ideja je bila izbjeći i ručnu pripremu dokumenata i mapa, tako da smo krenuli od realnog primjera gdje su dokumenti bili raspoređeni po različitim mapama.

Željeli smo omogućiti dva načina rada. Kada korisnik zna točnu oznaku ili izraz, treba brzo doći do povezanih dokumenata. Kada zna samo kakvu situaciju traži, treba moći postaviti opisno pitanje.

Tipični primjeri takve upotrebe bili bi: „Što imamo vezano uz ovaj projekt?” i „Pronađi dokumente u kojima smo rješavali sličan problem.” To su opći primjeri mogućnosti, a ne citati iz privatne dokumentacije.

Što znači „oko 40.000 dokumenata”?

Važno je razlikovati početnu arhivu, datoteke koje je sustav evidentirao i jedinstvene sadržaje uključene u pretraživanje.

U zabilježenom stanju pune obrade evidentirano je 37.196 podržanih datoteka. Od toga su 32.352 dokumenta imala indeksiran tekst, a 4.636 zapisa prepoznato je kao sadržajni duplikat i povezano s već obrađenim sadržajem.

Za dodatnu obradu ostalo je 208 zapisa: 142 kandidata za prepoznavanje teksta sa skena, 10 bez izdvojenog teksta i 56 s prijavljenom pogreškom. Korisnik je prihvatio da ti zapisi zasad ostanu izvan obrađenog sadržaja.

Indeks je sadržavao 94.087 tekstualnih cjelina povezanih s dokumentima. To nisu dodatni dokumenti, nego manji dijelovi koji služe za pretragu.

Jedno računalo umjesto velike infrastrukture

Razvoj i testiranje odvijali su se na računalu s procesorom Intel Core i5 (9400F), SSD diskom od 500 GB, 32 GB radne memorije i grafičkom karticom NVIDIA RTX 3090 s 24 GB vlastite memorije.

Tehničke detalje navodimo kako bi ukazali da nije riječ ni o podatkovnom centru ni o sustavu s više skupih poslužitelja.

Za drukčiji model, veći broj istodobnih korisnika ili strože zahtjeve dostupnosti trebalo bi ponovno procijeniti opremu. Naš rezultat pokazuje što je bilo izvedivo u ovom projektu, ne univerzalan minimum za svaku tvrtku.

Nismo trenirali model na cijeloj arhivi

Rješenje smo podijelili na pretragu i sastavljanje odgovora. Dokumente smo najprije pripremili za pretraživanje, a lokalnom modelu zatim slali samo odabrane odlomke relevantne za pojedino pitanje.

U pozadini su korišteni Ollama, lokalni jezični model, BGE-M3 za pretragu prema značenju, Qdrant i SQLite. Korisnik te komponente ne mora poznavati: pristupa im kroz web sučelje.

Takav pristup omogućio je da se razvoj ne svede na izbor „najpametnijeg modela”. Jednako važni bili su izdvajanje teksta, pronalaženje izvora, uklanjanje ponavljanja i način prikaza odgovora.

Mali detalji koji su postali važni na velikoj arhivi

Koliko brzo sustav odgovara?

U jednom kasnijem testu upit s točnom oznakom dobio je odgovor za 28,6 sekundi, od čega je dohvat izvora trajao 0,1 sekundu. Jedna složenija semantička usporedba trajala je 70 sekundi, uključujući pretragu, rangiranje i generiranje odgovora.

To su pojedinačni razvojni testovi, ne prosječne vrijednosti ni jamstvo brzine. U drugim konfiguracijama i pokretanjima neki odgovori su trajali i dulje, no prosjek je oko jedne minute za konkretan odgovor ako smo pretraživali cijelu arhivu.

Brojke nam ipak pokazuju nešto korisno: ovakav opseg arhive može se pretraživati i obrađivati na jednom odgovarajuće opremljenom računalu.

Što slično rješenje može značiti za vašu tvrtku?

Najvrjednija ideja ovog projekta nije da računalo zamijeni čovjeka. To je mogućnost da postojeća dokumentacija postane korisnija bez ručnog otvaranja desetaka datoteka prije svakog odgovora.

Za početak razmotrite AI pretraživanje dokumenata kao ograničen pilot, a mjesto obrade odaberite prema usporedbi lokalnog AI-ja i clouda.

Imate vlastitu veliku arhivu? Opišite nam što iz nje želite saznati. Kroz AI asistente i automatizaciju možemo procijeniti početni opseg, potrebnu pripremu i razuman sljedeći korak.

Sadržaj članka
Sadržaj članka 3 min čitanja
Svi članci