Glavna navigacija

Kako skalirati glasovna iskustva u stvarnom vremenu

Ritam, prekidi, tišina i nastavak nakon prekida oblikuju iskustvo jednako kao i riječi.

Sažetak za rukovoditelje

  • Glasovna komunikacija u stvarnom vremenu ljudima pruža potpuno drukčiji način interakcije s aplikacijama koje pokreće umjetna inteligencija. Umjesto tipkanja ili kretanja izbornicima, korisnici govore prirodno i dobivaju odgovore s ritmom stvarnog razgovora i emocionalnim kontekstom.

  • Stvaranje izvrsnog glasovnog iskustva u stvarnom vremenu svodi se na koordinaciju interakcije uživo. Tu počinje pravi rad na proizvodu. Iskustvo u stvarnom vremenu neposredno je i prirodno, a izrada aplikacije koja ga može održati poseban je inženjerski izazov.

  • Model je samo jedan dio sustava. Produkcijske aplikacije trebaju infrastrukturu izvorno prilagođenu glasu, jasnu podjelu između tijeka razgovora i dubljeg rasuđivanja te upravljanje vođeno događajima kako bi se sesijom moglo upravljati u hodu.

  • Velik dio preostalih poteškoća odnosi se na zaštitne mjere i evaluaciju. Sigurnosne provjere moraju pratiti zvuk uživo, a prolazne značajke razgovora poput ritma, tona i tijeka teško je procijeniti tradicionalnim strategijama evaluacije.

Uvod: glasovna komunikacija u stvarnom vremenu kao sučelje proizvoda

Većina današnjih glasovnih aplikacija s umjetnom inteligencijom i dalje radi na isti način: govor ulazi, tekst izlazi, model razmišlja, a sintetizirani glas čita odgovor. To funkcionira. No interakcija djeluje upravo onako kako jest: kao procesni lanac, a ne razgovor.

Glasovna komunikacija u stvarnom vremenu to mijenja. Korisnici govore prirodno i dobivaju odgovore koji prenose ritam, ton i emocionalni kontekst. Iskustvo je brže i tečnije nego uz lančane procese pretvorbe govora u tekst te više nalikuje razgovoru s osobom nego upravljanju sustavom.

Vidjeli smo da to omogućuje oblike proizvoda s kojima se arhitekture procesnih lanaca teško nose. Glasovni agenti u stvarnom vremenu mogu voditi razgovore s korisničkom podrškom za koje bi inače bili potrebni dugi, ograničavajući IVR izbornici i preusmjeravanje među odjelima. Mogu pružati poduku, uvoditi korisnike u sustav, pomagati s pristupačnošću u različitim medijima i još mnogo toga. Glasovnu komunikaciju u stvarnom vremenu vrijedi razvijati svugdje gdje je govorni razgovor bolji od tekstnog sučelja.

Lančani pristup i stvarno vrijeme: što se mijenja u pozadini

Većina glasovnih aplikacija primjenjuje takozvani „lančani pristup”: procesni lanac zasebnih modela za pretvorbu govora u tekst, obradu jezika i pretvorbu teksta u govor. Ti sustavi dobro rade i otvaraju brojne mogućnosti, ali zvuk postoji samo na početku i kraju procesa. Odvojeni koraci nameću strukturu i povećavaju latenciju, pa interakcija djeluje manje prirodno od stvarnog razgovora.

Glasovna komunikacija u stvarnom vremenu primjenjuje drukčiji pristup. Umjesto zasebnih modela za slušanje, razmišljanje i govor, jedan model izvorno obavlja sve tri funkcije te istodobno razumije i stvara zvuk i transkripte. Ulaz i izlaz odvijaju se neprekidno, što sustavu omogućuje prirodan ritam i emocionalno izražajne odgovore koji zadržavaju uvjerljiv ritam razgovora uživo. Zbog toga ritam, ton i postupanje s prekidima postaju središnji dio proizvoda.

Dijagram uspoređuje lančani glasovni proces s glasovnim modelom u stvarnom vremenu koji iz korisnikova zvuka izravno stvara zvuk i transkripte.

Iskustvo u stvarnom vremenu privlačno je zbog svoje neposrednosti, a zahtjevno zato što ništa ne čeka svoj red. Za njegovu podršku nije dovoljno brzo i precizno stvaranje zvuka. Sve ostalo predstavlja pravi izazov. Model radi unutar sesije uživo, a sve oko njega — stanje, sigurnost, orkestracija i upravljanje — mora pratiti razgovor istim tempom.

U lančanoj glasovnoj aplikaciji razgovor temeljen na izmjeni poteza pruža jasnu strukturu uzajamnih odgovora. Korisnik govori, sustav odgovara, a zatim počinje sljedeći korak. Glasovna komunikacija u stvarnom vremenu nema takvu strukturu. Obje strane mogu govoriti istodobno, a ponekad ne govori nitko pa nastane tišina. Korisnik može prekinuti odgovor ili postaviti dodatno pitanje prije nego što sustav završi govoriti. Prekidi više nisu rubni slučajevi, nego postaju ključan obrazac interakcije.

Zbog tog su obrasca aplikacije u stvarnom vremenu u osnovi problem koordinacije, a sustav oko modela jednako je važan kao i sam model.

Što vam je potrebno u produkciji

Za skaliranje ovakvog sustava potreban je dizajn posebno prilagođen interakciji uživo. On obuhvaća tri dijela koja se redovito pojavljuju u sustavima spremnima za produkciju.

Infrastruktura izvorno prilagođena glasu

Glasovne sesije u stvarnom vremenu moraju podržavati prijenos zvuka, izmjenu govornika, prekide, životni ciklus veze i izvršavanje agenata. Ovisno o okruženju u kojem se aplikacija upotrebljava, može biti potrebna i podrška za telefoniju. To su temeljni dijelovi iskustva i ključni su za skaliranje aplikacije.

Prvi je preduvjet sloj sesije izvorno prilagođen glasu. Okviri za komunikaciju u stvarnom vremenu (RTC) pružaju aplikaciji okruženje za upravljanje sudionicima, prijenos zvuka i pokretanje agenata u telefonskom okruženju. Prema našem iskustvu, osobito se korisnim pokazao Livekit, koji pruža WebRTC tehnološki sustav niske latencije s kvalitetnim uklanjanjem šuma i smanjenjem kolebanja kašnjenja odmah nakon postavljanja. Dodatna složenost samostalne implementacije tog sloja rijetko se isplati.

Odvojite govor od razmišljanja, barem zasad

Višeagentska arhitektura za glasovnu komunikaciju u stvarnom vremenu u osnovi se temelji na razdvajanju odgovornosti.

Glasovni modeli u stvarnom vremenu vrlo su učinkoviti u prijenosu zvuka razgovora, ali nisu optimizirani za dublje rasuđivanje. Zadaci poput pozivanja alata, dohvaćanja podataka ili strukturiranog odlučivanja učinkovitiji su kada ih izvršava drugi model.

Koristan je obrazac arhitektura odgovaratelja i mislioca.

Odgovaratelj je glasovni agent u stvarnom vremenu. Odgovoran je za održavanje interakcije uživo: slušanje, govor, postupanje s prekidima i očuvanje tijeka razgovora. Njegov dizajn daje prednost brzom odzivu, jasnoći i emocionalnom kontinuitetu.

Dijagram arhitekture odgovaratelja i mislioca: korisnikov zvuk odlazi odgovaratelju radi stvaranja izlaznog zvuka, dok mislilac koordinira alate i vraća kontekst odgovaratelju.

Mislilac je zaseban agent koji pokreće model sposoban za rasuđivanje. Radi izvan glavnog komunikacijskog toka i obavlja zadatke poput uporabe alata, dohvaćanja podataka i planiranja. Odgovaratelj ga može pozvati kada je potreban i rezultate uključiti u razgovor.

U nekim slučajevima mislilac može samostalno provoditi rasuđivanje. U drugima može orkestrirati skup specijaliziranih agenata. Ključno je da taj posao obavlja model prikladniji za zadatke rasuđivanja.

Prednost je jednostavna: odgovaratelj ostaje brz, razgovoran i usredotočen, dok mislilac obavlja posao koji zahtijeva više vremena, konteksta ili strukture.

Budući razvoj graničnih modela mogao bi ovaj pristup učiniti nepotrebnim, ali zasad prema našem iskustvu taj obrazac dosljedno nadmašuje pristupe s jednim agentom.

Upravljanje vođeno događajima

Glasovni sustavi u stvarnom vremenu prirodno stvaraju neprekidan tok događaja.

Korisnici počinju govoriti, zastaju i prekidaju. Transkripti se postupno ažuriraju. Odgovori se stvaraju i prenose. Pristižu vanjski rezultati. Uvjeti unutar sesije mijenjaju se. Sve se to može bilježiti, prenositi i pohranjivati kao ključne događaje koji su stvorili konkretno trenutačno stanje razgovora. Bez njih gubimo mogućnost preciznih i ciljanih intervencija.

Pristup vođen događajima pruža jasan način upravljanja time. Sustav bilježi događaje dok nastaju, ažurira stanje sesije i pokreće odgovarajuće naknadne radnje.

Jednostavni rukovatelji održavaju brz odziv komunikacije u stvarnom vremenu, dok se složeniji zadaci — poput ažuriranja automata stanja, bilježenja metrika, uklanjanja osjetljivih podataka, ažuriranja baza podataka i izlaska iz sesije — pokreću kao asinkroni pozadinski zadaci.

Dodavanjem značajki broj tih pozadinskih zadataka može brzo rasti. Čak i male promjene proizvoda mogu uvesti nove tokove događaja i ovisnosti. Dobro strukturirana arhitektura za ovu konkurentnost važna je kako bi sustav tijekom razvoja ostao razumljiv i pouzdan.

Taj pristup vođen događajima podržava i jedan od ključnih aspekata proizvoda: oblikovanje samog razgovora. Audiosustav u stvarnom vremenu ne stvara samo odgovore; upravlja ritmom, tišinom i prekidima te odlučuje kako i kada završiti sesiju. Ta su ponašanja dio iskustva proizvoda i treba ih promišljeno oblikovati.

Kako se stanje sesije mijenja ovisno o broju poteza, proteklom vremenu ili ponašanju korisnika, sustav odgovaratelju može pružati ciljane upute. Može potaknuti agenta da korisniku pomogne privesti razgovor kraju kada se približi ograničenju sesije ili pružiti pojašnjenje ako interakcija zastane. Te su intervencije jednostavne, ali iskustvu daju osjećaj svrhovitosti i povezanosti.

Dobro osmišljen sustav održava jasan pregled stanja sesije: tko govori, kako razgovor napreduje i koji su uvjeti ispunjeni. To stanje, koje tok događaja neprekidno ažurira, omogućuje pružanje pravih uputa u pravom trenutku.

Zaštitne mjere moraju djelovati u stvarnom vremenu

Zaštitne mjere nisu neobavezne u umjetnoj inteligenciji namijenjenoj korisnicima. One upravljaju sigurnošću, usklađenošću, zloupotrebom i pouzdanošću. U sustavu koji se temelji na izmjeni poteza postoje jasne točke za njihovu primjenu: nakon što korisnik nešto kaže ili prije isporuke odgovora.

Glasovna komunikacija u stvarnom vremenu uklanja većinu tih praktičnih kontrolnih točaka. Korisnički unos pristiže neprekidno. Izlazni zvuk možda se već prenosi. Dovršeni transkripti često kasne za zvukom. Ako sustav prije provjere čeka dovršetak poruke, razgovor više ne djeluje kao da se odvija u stvarnom vremenu.

Zaštitne mjere stoga moraju djelovati usporedno s razgovorom kako bi interakcija ostala prirodna. Jedan je pristup usmjeravati zvuk u međuspremnik i pritom asinkrono procjenjivati fragmente transkripta čim postanu dostupni. Tako se sigurnosne provjere mogu provoditi gotovo u stvarnom vremenu bez blokiranja interakcije.

Dijagram uspoređuje zaštitne mjere u stvarnom vremenu, koje tijekom sesije obrađuju zvuk uživo i fragmente transkripta, sa zaštitnim mjerama temeljenima na potezima, koje provjeravaju ulaz i izlaz oko odgovora.

Kada se aktivira zaštitna mjera, sustav može odgovoriti u skladu s kontekstom tako da preusmjeri razgovor, prilagodi ponašanje ili po potrebi prekine sesiju. Time se osigurava da zaštitne mjere djeluju u stvarnom vremenu bez narušavanja korisničkog iskustva.

evaluacije u stvarnom vremenu zahtjevne su

Najteži dio evaluacije razgovornog sustava u stvarnom vremenu jest to što se neke od najvažnijih značajki — ritam, prekidi, tijek i ton — ne mogu obuhvatiti testiranjem samo na temelju transkripta.

Standardni postupci evaluacije sustavu zadaju realistične scenarije, promatraju izlazne rezultate i ocjenjuju ih. Za tekstne sustave ili lančane audiosustave to je jednostavno: pošaljite tekst i provjerite dobiveni tekst. U stvarnom vremenu ulaz je zvuk uživo, a najvažnija dinamika razgovora odvija se u vremenskoj dimenziji: kako agent postupa s preklapanjem govora, koliko brzo odgovara i kako nastavlja nakon prekida.

Ručno testiranje, odnosno izravan razgovor s agentom, obuhvaća te značajke, ali nije skalabilno. Automatizacija na temelju transkripta jest skalabilna, ali uklanja signal koji razlikuje dobro iskustvo u stvarnom vremenu od lošega.

Nijedna metoda sama po sebi nije dovoljna. Praktično je rješenje kombinirati više slojeva:

  • Evaluacije između agenata: drugi agent u stvarnom vremenu, kojem je zadano da preuzme određenu korisničku personu, razgovara sa sustavom koji se testira. Treći LLM u ulozi suca ocjenjuje interakciju. Tako se u velikom opsegu testira cijeli audioput, uključujući ritam i postupanje s prekidima.

  • Nefunkcionalne metrike: vrijeme do prvog zvuka i analiza sentimenta transkripta pružaju kvantitativne pokazatelje kvalitete razgovora.

  • Ručna kvalitativna provjera: i dalje je ključna za otkrivanje problema koje automatizirane metrike propuštaju, osobito u pogledu tona i prirodnosti.

Nijedna pojedinačna metoda ne obuhvaća sve. Uvođenje agenata koji rade u stvarnom vremenu u produkciju zahtijeva primjenu sva tri sloja. Čak su i tada alati za evaluaciju zvuka u stvarnom vremenu još nezreli u usporedbi s alatima za tekstnu umjetnu inteligenciju.

Zaključak

Glasovna komunikacija u stvarnom vremenu mijenja sam proizvod. Ritam, prekidi, tišina i nastavak nakon prekida oblikuju korisničko iskustvo jednako kao i riječi.

To znači da je model samo jedan dio sustava. Za produkcijsku glasovnu komunikaciju u stvarnom vremenu potreban je sloj sesije izvorno prilagođen glasu, jasna podjela između govora i rasuđivanja te upravljanje sesijom uživo vođeno događajima. Zaštitne mjere i dalje su usko grlo zbog latencije, ali kreativni pristupi mogu očuvati velik dio iskustva u stvarnom vremenu.

Evaluacija je i dalje najslabiji dio tehnološkog sustava. Još ne postoji ustaljen način testiranja značajki zbog kojih glasovna komunikacija u stvarnom vremenu djeluje dobro: ritma, tona, postupanja s prekidima i tijeka razgovora. Dok se takav način ne razvije, timovi koji grade s ovom tehnologijom morat će kombinirati automatizirane testove, evaluacije između agenata i ručne provjere.

Autori

Oliver Wood i Sam Smith