Ta izdelek testiramo bolj temeljito, kot bi se večina ljudi sploh potrudila testirati orodje, ki ga ne prodaja. Ne zato, ker uživamo v iskanju lastnih hroščev, ampak ker je trditev, da “AI res pozna vaš posel”, nič vredna, če nihče ni preveril, ali drži pod resničnim pritiskom.
Eno vprašanje je vztrajno odpovedovalo. Ne skoraj pravilno, ne nejasno, temveč suho “Tega nimam.”
Vprašanje in kolikokrat je odpovedalo
“Predlagaj hibridni paket storitev, utemeljen na tem, kar je dejansko delovalo.”
Neko različico tega smo zastavili v treh ločenih simulacijskih zagonih AlphaForgea, celotnem testu vertikale za odvetniške pisarne in testu vertikale za urejanje zunanjih površin. Vsakič, pri stari metodi iskanja: neka različica “Nimam vnosov v Trezorju ali zapisov, ki bi pokazali, katere kombinacije so delovale.”
Frustrirajoče ni bilo to, da je odpovedalo. Frustrirajoče je bilo to, da informacija dejansko ni manjkala. Trezor je imel splošen vnos o cenah. Imel je tudi konkreten vnos o rezultatu. Le nikoli ju ni povezal, ker je metoda iskanja v ozadju ob vsakem sporočilu izvajala živo iskanje po ključnih besedah, do štirideset ločenih preiskav baze podatkov na vprašanje, iskanje po ključnih besedah pa ne ve, da “palete busena” in “pokritost s paletami” govorita o isti stvari.
Kaj smo dejansko spremenili
Ne tega, kar Trezor hrani. Ampak kako se po njem išče.
Vsak vnos v Trezorju se zdaj pretvori v embedding, številčni zapis svojega dejanskega pomena, v trenutku, ko je zapisan, ne v trenutku, ko nekdo o njem zastavi vprašanje. Iskanje je postalo eno samo iskanje najbližjega soseda nad tem zapisom, namesto iskanja po celotnem Trezorju od začetka ob vsakem sporočilu. Gre za isto osnovno bazo podatkov, Postgres, ki teče na isti instanci, kot smo jo že imeli, z razširitvijo, zgrajeno prav za to. Nobene nove kategorije infrastrukture. Le drugačen način iskanja tega, kar je bilo že tam.
Do tega je pripeljalo resnično, nič kaj bleščeče inženirsko delo, o katerem se v takih objavah običajno ne piše: preverjanje, kateri ponudniki AI sploh ponujajo endpoint za embeddinge (ne vsi), zasnova, ki upošteva najemnika (tenant-aware), tako da se uporabi lastni konfigurirani ponudnik vsakega podjetja namesto enega ključa za celotno platformo, ter res zoprn hrošč, kjer je embeddinge enega ponudnika bilo treba eksplicitno normalizirati, preden bi primerjave razdalj sploh bile matematično veljavne. Prav tako smo pred izbiro primerjali pet kandidatov za model na resničnem vprašanju in odkrili nekaj, kar je vredno vedeti samo po sebi: najhitrejša možnost je bila deset- do petnajstkrat hitrejša od najpočasnejše, ob ničelni razliki v kakovosti odgovora na točno tisto številčno vprašanje, na katerem smo jo testirali.
Ponovni test
Isti najemnik. Isto vprašanje. Stara metoda, nato nova, ena za drugo.
Stari odgovor: “Nimam vnosov v Trezorju ali zapisov, ki bi pokazali, katere kombinacije so delovale.”
Novi odgovor, prek dnevnikov potrjeno, da je resnično uporabil novo pot iskanja, ne po naključju: resničen, konkreten predlog, poimenovane storitve, resničen naročnik, naveden po imenu, izračunana skupna vrednost, utemeljitev, vezana na to, kako dejansko poteka delo tega podjetja. Ne rahlo boljša različica starega ne-odgovora. Popolnoma drugačen izid, na vprašanju, ki je do takrat identično odpovedovalo, vsakič, skozi celoten program testiranja.
Česa ne bomo prikrivali
Poštena cena se je pokazala takoj, zato o njej poročamo, ne glajmo je. Naknadna obdelava embeddingov za že velik Trezor, več kot tisoč vnosov, je trajala skoraj pet minut, neprijetno blizu trde meje časovne omejitve zahteve. Pri resnično zrelem Trezorju, globokem več tisoč vnosov, bi ista enkratna naknadna obdelava verjetno odpovedala nekje na poti. To zdaj vemo, ker smo to izmerili, ne zato, ker ugibamo. Gre za resnično, označeno nadaljnjo nalogo, ne za nekaj, kar smo objavili in tiho upali, da nihče ne bo naletel nanjo.
Številka, ki stoji za vsem tem
Ta ena primerjava pred in po je le en test znotraj veliko večjega programa: približno petindvajset simuliranih let poslovne dejavnosti v več panogah, prek devet tisoč resničnih vnosov v Trezorju, nastalih na poti, enajst resničnih hroščev, najdenih in odpravljenih, med njimi tudi ta vrzel pri iskanju. Skupna resnična poraba za API za celoten večmesečni program: 9,57 USD.
Raje vam pokažemo vprašanje, ki je petkrat zapored odpovedalo, in točno to, kar je bilo potrebno, da smo ga popravili, kot da bi začeli z veliko številko in upali, da nihče ne bo vprašal, kaj dejansko stoji za njo.