AI korak provjeravate isto kao i svaki drugi sustav. Držite set slučajeva za koje je točan odgovor već poznat i ocjenjujete izlaz prema njima, polje po polje.
Uspješno izvršenje to ne radi umjesto vas. Ono vam govori da su HTTP pozivi vratili 200.
Za AI korak unutar poslovnog procesa test se svodi na pet stvari:
Gold set od vaših vlastitih dokumenata, njih 50 do 100, odabranih tako da uključuju i one nezgodne.
Tipizirana shema izlaza koja dopušta null, kako bi vrijednost koja ne postoji ostala prazna umjesto da se izmisli.
Odvojena pravila prolaza za lagana i za teška polja, jer jedan jedini broj točnosti skriva ona teška.
Granica pouzdanosti koja sve ispod te granice preusmjerava na čovjeka prije knjiženja.
Regresijski prolaz kroz cijeli gold set nakon svake promjene prompta i svake nadogradnje modela.
Sve ostalo je dotjerivanje prompta. Dotjerivanje prompta nije dokaz.
Zeleno izvršenje ne znači točan rezultat
Tri teme na n8n community forumu pitaju to gotovo istim riječima: "Kako provjeravate da su AI workflowi stvarno odradili ono što treba?", "Kako uhvatiti workflowe koji se izvrše bez greške, a ne urade ništa?" i "Kako testirati izmjenu workflowa prije nego dođe u produkciju?".
Sve tri kruže oko iste rupe. Trigger za greške ne aktivira se kada workflow samouvjereno upiše pogrešan broj i ne aktivira se kada workflow ne upiše ništa. To su dva propusta koja koštaju novca, a ni jedan od njih na nadzornoj ploči ne izgleda kao propust.
Zato test mora usporediti izlaz s poznatim odgovorom, a ne s izostankom iznimke.
Ocjenjujte polja, a ne dokumente
Ocjena na razini dokumenta gotovo je bezvrijedna. Ako račun ima 4 polja u zaglavlju i 30 ćelija u stavkama, jedna pogrešna jedinična cijena daje vam 97 posto točnosti i račun koji ne možete proknjižiti.
Pravilo prolaza stoji na polju, a polja se vrednuju po tome koliko pogrešna vrijednost košta. Isto pravilo radi oba posla: ocjenjuje gold set pri izradi i odlučuje o preusmjeravanju tijekom rada.
Identitet. Primjer: PDV broj dobavljača, broj računa. Pravilo prolaza: Točno podudaranje, bez iznimki. Radnja pri padu tijekom rada: Zaustavite izvršenje, pošaljite na pregled.
Novac. Primjer: ukupno, neto, PDV po stopi. Pravilo prolaza: Točno podudaranje do centa s gold vrijednošću, uz to neto plus PDV mora dati ukupan iznos unutar zadane tolerancije zaokruživanja. Radnja pri padu tijekom rada: Zaustavite izvršenje, pošaljite na pregled.
Datumi. Primjer: datum računa, datum plaćanja. Pravilo prolaza: Točno podudaranje nakon normalizacije formata. Radnja pri padu tijekom rada: Pošaljite na pregled.
Stavke. Primjer: opis, količina, jedinična cijena, ukupno po stavci. Pravilo prolaza: Broj redova mora se podudarati, zatim podudaranje po ćeliji. Radnja pri padu tijekom rada: Pošaljite na pregled.
CEO tvrtke Neviox Digital, s diplomom inženjera računarstva stečenom na Sveučilištu u Splitu te višestrukim certifikatima. Moje ključne kompetencije obuhvaćaju front-end i back-end tehnologije, s posebnim naglaskom na LangChain, Next.js i AWS.
Neviox Digital
Imate viziju za digitalno rješenje? Želite podijeliti svoje tehničko znanje ili reklamirati vaš brend? Surađujmo i gradimo budućnost zajedno!
Pretplatite se na naš newsletter i budite prvi koji će saznati o najnovijim inovacijama i stručnim savjetima iz svijeta tehnologije.
Slobodan tekst. Primjer: poziv na broj, napomene. Pravilo prolaza: Sličnost teksta, ne točno podudaranje. Radnja pri padu tijekom rada: Zabilježite, ne zaustavljajte.
Polja s novcem provjeravaju se dvaput: jednom prema gold vrijednosti, a jednom sama prema sebi, jer neto plus PDV mora dati ukupan iznos bez obzira na to što je model izbacio. Tolerancija zaokruživanja tu je važna, jer dobavljači koji zaokružuju po stavci, a ne po računu, izdaju potpuno ispravne dokumente koje stroga provjera zbroja odbacuje.
Shema dopušta null na svakom polju koje nije strukturno zagarantirano, uz izričitu uputu da je null bolji od nagađanja. Null je iznimka koja ide na pregled. Izmišljena vrijednost je tihi gubitak.
Gold set sastavite od svojih dokumenata, a ne od benchmarka
Objavljeni benchmarkovi za izvlačenje podataka govore vam kako se model ponaša na tuđoj papirologiji. Vaših dobavljača u tom uzorku nema. Jedan upit na n8n forumu traži "jedan workflow za klasifikaciju računa s izričito navedenom očekivanom oznakom". Workflowi koji se dijele gotovo uvijek nose prompt, ali ne i očekivani odgovor.
Tražimo 50 do 100 stvarnih slučajeva, odabranih namjerno, a ne slučajno:
Vaših 10 najvećih dobavljača ili kupaca po količini. Zašto: To je većina stvarnog prometa.
Skenirane i fotografirane dokumente, ne samo izvorne PDF-ove. Zašto: Fotografirani dokumenti padaju drugačije od izvornih PDF-ova, a u vašem inboxu nalaze se i jedni i drugi.
Dokumente s više stranica i dokumente s tablicom koja se lomi preko stranica. Zašto: Stavke su mjesto na kojem izvlačenje podataka doista pada.
Stranu valutu i slučaj s inozemnim PDV-om. Zašto: Drugačiji raspored polja, drugačije zaokruživanje.
Knjižna odobrenja i ispravke. Zašto: Negativni iznosi otkrivaju greške u predznaku.
Dva ili tri dokumenta na kojima bi novi referent pogriješio. Zašto: Ako je čovjeku tu potrebna procjena, potrebna je i modelu.
Za svaki slučaj netko iz tima koji je vlasnik procesa jednom upiše točne vrijednosti. To je jedini skupi dio. Riječ je o prepisivanju, jednom, i to od osobe koja već zna točan odgovor.
Granica pouzdanosti i tko što odobrava
Ocjenjivanje po polju daje vam odluku za svaki dokument tijekom rada, a ne samo ocjenu pri izradi. Dokumenti koji prođu svako blokirajuće pravilo idu dalje bez zadržavanja. Sve što padne na jednom pravilu ili dođe ispod granice pouzdanosti ide u red za ljudsku provjeru, s označenim poljem koje je nesigurno. n8n ima ugrađene operacije pošalji i čekaj odgovor s načinom odobravanja, pa se workflow zaustavlja na koraku koji nosi rizik, a ne na svima.
Dva broja koja treba dogovoriti prije pokretanja i nastaviti ih pratiti poslije:
Udio dokumenata koji ide na pregled, mjeren u odnosu na to koliko je prije trajao cijeli ručni unos. Stopa preusmjeravanja ima smisla samo uz vrijeme koje zamjenjuje, pa oba broja dogovorite na istom sastanku.
Stopa ispravaka unutar tog reda. Svaki ispravak ide u gold set, pa test postaje stroži kako proces radi.
Regresijski prolaz nakon svake nadogradnje modela
Ovo je dio koji većina automatizacija preskače. Zbog toga workflow koji je na početku prolazio u tišini prestane prolaziti. Verzije modela se mijenjaju. Promptovi se uređuju. Ni jedno ni drugo ne javlja se u vašem izlazu.
n8n za to ima gotove alate. Testni slučajevi žive u Data Table. Evaluation Trigger pokreće workflow nad svakim redom. Evaluation node vraća rezultate pomoću Set Outputs i bilježi ocjene pomoću Set Metrics, uz ugrađene metrike kao što su correctness, sličnost teksta i kategorizacija. Rezultati se zbrajaju po prolazu u Evaluations tab, pa se dva prolaza mogu usporediti.
Odaberite alat koji odgovara polju. Correctness je AI ocjenjivač na skali od 1 do 5, što je u redu za slobodan tekst i bezvrijedno za ukupan iznos. Polja identiteta i polja s novcem dobivaju običnu provjeru jednakosti u Code node, a ne ocjenu koju daje AI.
Važnija od alata je politika pokretanja. Cijeli set ponovno pokrećemo prije nego što bilo koja promjena prompta ide u produkciju, kada pružatelj objavi novu verziju modela i jednom mjesečno u svakom slučaju. Pad na jednoj klasi polja vidi se odmah, a gold set je ono što nam omogućuje da korak premjestimo na drugi model ili drugog pružatelja bez da rezultat uzimamo na vjeru.
Koliko ovo košta u radu
Cijena izrade je vidljiva. Ove četiri stvari nisu:
Cijena tokena po dokumentu, koja raste s brojem stranica i dodatno raste kada šaljete slike stranica umjesto izvučenog teksta. Izračunajte cijenu oba pristupa na deset svojih dokumenata prije nego odlučite.
Ponovno pokretanje gold seta. 100 dokumenata po regresijskom prolazu, nekoliko prolaza mjesečno.
Red za pregled. Stvarne minute stvarne osobe, po onoj stopi na kojoj se preusmjeravanje zaustavi.
Jedna gornja granica troška po prolazu. Provjerite ograničava li vaša verzija n8n-a trošak po izvršenju. Ako ne, petlja na koraku koji pada nema gornju granicu dok je sami ne postavite. Mi je postavljamo izričito.
Ovo pokrećemo na self-hosted n8n instalaciji u EU ili na klijentovim vlastitim serverima, pa gold set i podaci o izvršenjima ostaju unutar tvrtke. Dokument ipak izlazi prema modelu koji ga čita, osim ako i model radi lokalno. Taj se odabir donosi za svaki proces zasebno i to u pisanom obliku. Kako postavljamo opseg i gradimo ove workflowe piše na našoj stranici .
Tko potpisuje
Osoba koja je vlasnik procesa, a ne osoba koja je izgradila workflow. Ona vidi rezultate po poljima na svojim dokumentima, vidi koji slučajevi još idu na pregled i odlučuje je li to dovoljno dobro za pokretanje.
Prije tog razgovora provedite gold set kroz osobu koja taj posao radi danas. Zabilježite njezinu stopu greške po poljima na istim dokumentima. To je broj s kojim se automatizacija zapravo natječe i gotovo nikad nije nula. Uspoređivanje modela sa savršenstvom način je na koji se odbaci automatizacija koja radi, a zadrži ručni proces s istom stopom greške.
Ako nitko nije spreman staviti svoje ime pod rezultat, automatizacija nije spremna i nikakav postotak točnosti to neće promijeniti.
Ako imate proces koji razmišljate automatizirati i želite znati kako bi za njega izgledao testni set, pošaljite nam tri dokumenta koja vašem timu zadaju najviše muke i reći ćemo vam što bismo mjerili.
Izvori
Kako provjeravate da su AI workflowi stvarno odradili ono što treba?: https://community.n8n.io/t/how-do-you-verify-ai-workflows-actually-did-the-right-thing/304241
Kako uhvatiti workflowe koji se izvrše bez greške, a ne urade ništa?: https://community.n8n.io/t/how-do-you-catch-workflows-that-run-fine-but-do-nothing/308708
Kako testirati izmjenu workflowa prije nego dođe u produkciju?: https://community.n8n.io/t/how-do-you-test-a-workflow-edit-before-it-touches-production/313427
jedan workflow za klasifikaciju računa s izričito navedenom očekivanom oznakom: https://community.n8n.io/t/looking-for-1-invoice-classification-workflow-with-an-explicit-expected-label/284760