Glavna navigacija

Kako skalirati uspješna glasovna iskustva u stvarnom vremenu

Pravovremenost, prekidi, tišina i oporavak oblikuju iskustvo jednako kao i riječi.

Sažetak za rukovodioce

  • Glasovna komunikacija u stvarnom vremenu ljudima pruža iz temelja drugačiji način interakcije s aplikacijama koje pokreće AI. Umjesto tipkanja ili kretanja kroz menije, korisnici govore prirodno i dobijaju odgovore s ritmom stvarnog vremena i emocionalnim kontekstom.

  • Za vrhunsko glasovno iskustvo u stvarnom vremenu potrebno je koordinirati interakciju uživo. Tu počinje pravi rad na proizvodu. Iskustvo u stvarnom vremenu neposredno je i prirodno, a izrada aplikacije koja to može održati poseban je inženjerski izazov.

  • Model je samo jedan dio sistema. Produkcijskim aplikacijama potrebni su infrastruktura prilagođena glasu, jasno razdvajanje toka razgovora od dubljeg rezonovanja te upravljanje zasnovano na događajima kako bi se sesijom upravljalo dok traje.

  • Velik dio preostalih poteškoća odnosi se na zaštitne mjere i evaluaciju. Sigurnosne provjere moraju pratiti tempo zvuka uživo, dok je prolazne osobine razgovora, poput pravovremenosti, tona i toka, teško procijeniti tradicionalnim strategijama evaluacije.

Uvod: glasovna komunikacija u stvarnom vremenu kao površina proizvoda

Većina današnjih AI aplikacija s glasovnim funkcijama i dalje radi na isti način: govor ulazi, tekst izlazi, model razmišlja, a sintetizirani glas čita odgovor. Funkcioniše. Ali interakcija i djeluje upravo tako: kao proces obrade, a ne razgovor.

Glasovna komunikacija u stvarnom vremenu to mijenja. Korisnici govore prirodno i dobijaju odgovore koji prenose ritam, ton i emocionalni kontekst. Iskustvo je brže i tečnije nego kod lančano povezanih procesa pretvaranja govora u tekst te više nalikuje razgovoru s osobom nego upravljanju sistemom.

Vidjeli smo da to otvara mogućnosti za proizvode s kojima se arhitekture zasnovane na procesima obrade 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 meniji i preusmjeravanja između odjela. Mogu podučavati, uvoditi korisnike, pomagati s pristupačnošću u različitim medijima i još mnogo toga. Glasovnu komunikaciju u stvarnom vremenu vrijedi razvijati svuda gdje govorni razgovor ima prednost nad tekstualnim interfejsima.

Lančano povezivanje naspram stvarnog vremena: šta se mijenja u pozadini

Većina aplikacija s glasovnim funkcijama koristi takozvani „lančano povezani pristup“: proces sastavljen od zasebnih modela za pretvaranje govora u tekst, obradu jezika i pretvaranje teksta u govor. Ti sistemi dobro funkcionišu i otvaraju brojne mogućnosti, ali zvuk se nalazi samo na rubovima procesa. Odvojeni koraci nameću strukturu i stvaraju kašnjenje, pa interakcija djeluje manje prirodno od stvarnog razgovora.

Glasovna komunikacija u stvarnom vremenu koristi drugačiji pristup. Umjesto oslanjanja na zasebne modele za slušanje, razmišljanje i govor, jedan model izvorno obavlja sve tri funkcije te istovremeno razumije i generiše zvuk i transkripte. Ulaz i izlaz odvijaju se neprekidno, pa sistem može odgovarati prirodnim tempom i emotivno, zadržavajući realističan ritam razgovora uživo. Zbog toga pravovremenost, ton i upravljanje prekidima postaju ključni dio proizvoda.

Dijagram poredi lančano povezani glasovni proces s glasovnim modelom u stvarnom vremenu koji iz korisničkog zvuka direktno stvara zvuk i transkripte.

Iskustvo u stvarnom vremenu privlačno je jer djeluje neposredno, ali je zahtjevno jer niko ne čeka svoj red. Za njegovu podršku nije dovoljno samo brzo i precizno generisati zvuk. Sve ostalo je teži dio. Model radi unutar aktivne sesije, a sve oko njega — stanje, sigurnost, orkestracija i upravljanje — mora djelovati uporedo s razgovorom, istim tempom uživo.

U lančano povezanoj glasovnoj aplikaciji razgovori koji se odvijaju naizmjenično pružaju jasnu strukturu razmjene. Korisnik govori, sistem odgovara i počinje sljedeći korak. Glasovna komunikacija u stvarnom vremenu nema takvu strukturu. Obje strane mogu govoriti istovremeno, a može nastupiti i tišina u kojoj niko ne govori. Korisnik može prekinuti odgovor ili postaviti dodatno pitanje prije nego što sistem završi govor. Prekidi prestaju biti rubni slučajevi i postaju osnovni obrazac interakcije.

Zbog tog obrasca aplikacije u stvarnom vremenu u osnovi predstavljaju problem koordinacije, pa je sistem oko modela jednako važan kao i sam model.

Šta vam je potrebno u produkciji

Podrška ovoj vrsti sistema u velikom obimu zahtijeva dizajn posebno prilagođen interakciji uživo, s tri elementa koja se redovno pojavljuju u sistemima uvedenim u produkciju.

Infrastruktura prilagođena glasu

Glasovne sesije u stvarnom vremenu moraju podržavati prijenos zvuka, smjenjivanje govornika, prekide, životni ciklus veze i izvršavanje agenata. Zavisno od toga gdje je aplikacija uvedena, može biti potrebna i podrška za telefoniju. To su temeljni dijelovi iskustva i ključni su za skaliranje aplikacije.

Prvi je zahtjev sloj sesije prilagođen glasu. Okviri za komunikaciju u stvarnom vremenu (RTC) pružaju aplikaciji okruženje za upravljanje učesnicima, prijenos zvuka i pokretanje agenata u telefonskom okruženju. Prema našem iskustvu, naročito je koristan Livekit, koji odmah pruža WebRTC tehnološki skup s malim kašnjenjem, visokokvalitetnim uklanjanjem šuma i smanjenjem kolebanja kašnjenja. Dodatna složenost samostalne implementacije ovog sloja rijetko se isplati.

Odvojite govor od razmišljanja, barem zasad

Arhitektura s više agenata za glasovnu komunikaciju u stvarnom vremenu u osnovi se zasniva na razdvajanju odgovornosti.

Glasovni modeli u stvarnom vremenu vrlo su učinkoviti u prijenosu zvuka razgovora, ali nisu optimizirani za dublje rezonovanje. Zadatke poput pozivanja alata, dohvaćanja podataka ili strukturiranog odlučivanja bolje je izvršavati drugim modelom.

Koristan obrazac je arhitektura odgovarača i mislioca.

Odgovarač je glasovni agent koji radi u stvarnom vremenu. Zadužen je za održavanje interakcije uživo: slušanje, govor, upravljanje prekidima i očuvanje toka razgovora. Njegov dizajn daje prednost brzom odzivu, jasnoći i emocionalnom kontinuitetu.

Dijagram arhitekture odgovarača i mislioca: korisnički zvuk teče prema odgovaraču koji proizvodi izlazni zvuk, dok mislilac koordinira alate i vraća kontekst odgovaraču.

Mislilac je zaseban agent kojeg pokreće model sposoban za rezonovanje. Radi izvan glavnog toka i obavlja zadatke poput korištenja alata, dohvaćanja podataka i planiranja. Odgovarač ga može pozvati kada je potrebno i uključiti rezultate u razgovor.

U nekim slučajevima mislilac može direktno obavljati rezonovanje. U drugim može služiti kao orkestrator skupa specijaliziranih agenata. Ključna je ideja da taj posao obavlja model prikladniji za zadatke rezonovanja.

Prednost je jednostavna: odgovarač ostaje brz, razgovoran i usmjeren, 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 smo ustanovili da ovaj obrazac dosljedno nadmašuje pristupe s jednim agentom.

Upravljanje zasnovano na događajima

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

Korisnici počinju govoriti, zastaju i prekidaju. Transkripti se postepeno ažuriraju. Odgovori se generišu i prenose. Pristižu vanjski rezultati. Uslovi unutar sesije se mijenjaju. Sve se to može zabilježiti, prenijeti i pohraniti kao skup ključnih događaja koji su oblikovali konkretno trenutno stanje razgovora. Bez njih gubimo mogućnost preciznih i ciljanih intervencija.

Pristup zasnovan na događajima pruža jasan način upravljanja time. Sistem bilježi događaje kada se dese, ažurira stanje sesije i pokreće odgovarajuće naredne radnje.

Jednostavni rukovaoci održavaju odziv glavnog toka u stvarnom vremenu, dok se složeniji poslovi — poput ažuriranja mašina stanja, bilježenja metrika, uklanjanja osjetljivih podataka, ažuriranja baza podataka i napuštanja sesije — pokreću kao asinhroni pozadinski zadaci.

Dodavanjem funkcija broj tih pozadinskih zadataka može brzo rasti. Čak i male promjene proizvoda mogu uvesti nove tokove događaja i zavisnosti. Dobro strukturirana arhitektura za ovu istovremenost važna je kako bi sistem tokom razvoja ostao razumljiv i pouzdan.

Ovaj pristup zasnovan na događajima podržava i ključno pitanje proizvoda: oblikovanje samog razgovora. Audiosistem u stvarnom vremenu ne generiše samo odgovore već upravlja tempom i tišinom, obrađuje prekide te odlučuje kako i kada treba završiti sesiju. Ta ponašanja dio su iskustva proizvoda i treba ih izričito osmisliti.

Kako se stanje sesije mijenja na osnovu broja razmjena, proteklog vremena ili ponašanja korisnika, sistem može odgovaraču pružati ciljane smjernice. Može uputiti agenta da pomogne korisniku 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 promišljenosti i povezanosti.

Dobro osmišljen sistem održava jasan pregled stanja sesije: ko govori, kako razgovor napreduje i koji su uslovi ispunjeni. To stanje, koje se neprekidno ažurira tokom događaja, omogućava pružanje odgovarajućih smjernica u pravom trenutku.

Zaštitne mjere moraju djelovati u stvarnom vremenu

Zaštitne mjere nisu neobavezne u AI sistemima namijenjenim korisnicima. One upravljaju sigurnošću, usklađenošću, zloupotrebom i pouzdanošću. U sistemu koji radi naizmjenično postoje jasni trenuci za njihovo pokretanje: nakon što korisnik nešto kaže ili prije isporuke odgovora.

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

Umjesto toga, zaštitne mjere moraju djelovati uporedo s razgovorom kako bi interakcija ostala prirodna. Jedan pristup je slanje zvuka u međuspremnik uz asinhronu procjenu fragmenata transkripta čim postanu dostupni, što omogućava sigurnosne provjere gotovo u stvarnom vremenu bez blokiranja interakcije.

Dijagram poredi zaštitne mjere u stvarnom vremenu, koje tokom sesije obrađuju zvuk uživo i fragmente transkripta, sa zaštitnim mjerama u sistemu naizmjenične komunikacije, koje provjeravaju ulaz i izlaz oko odgovora.

Kada se aktivira zaštitna mjera, sistem može reagovati u skladu s kontekstom preusmjeravanjem razgovora, prilagođavanjem ponašanja ili, prema potrebi, prekidanjem sesije. Tako zaštitne mjere djeluju u stvarnom vremenu bez narušavanja korisničkog iskustva.

evaluacije u stvarnom vremenu su zahtjevne

Najteži dio evaluacije razgovornog sistema u stvarnom vremenu jeste to što se neke od najvažnijih osobina — pravovremenost, prekidi, tok i ton — ne mogu obuhvatiti testiranjem zasnovanim samo na transkriptima.

Standardni procesi evaluacije unose realistične scenarije u sistem, posmatraju rezultate i ocjenjuju ih. Kod tekstualnih ili lančano povezanih audiosistema to je jednostavno: pošaljite tekst i provjerite izlazni tekst. U stvarnom vremenu ulaz je zvuk uživo, a najvažnija dinamika razgovora odvija se u vremenskoj dimenziji: kako agent upravlja preklapanjem govora, koliko brzo odgovara i kako se oporavlja nakon prekida.

Ručno testiranje, odnosno direktan razgovor s agentom, obuhvata te osobine, ali nije skalabilno. Automatizacija zasnovana na transkriptima jeste skalabilna, ali uklanja signal koji razlikuje dobro iskustvo u stvarnom vremenu od lošeg.

Nijedna metoda nije dovoljna sama za sebe. Praktično rješenje je kombinacija metoda:

  • Evaluacije između agenata: drugi agent koji radi u stvarnom vremenu dobija upute da preuzme određenu korisničku personu i razgovara sa sistemom koji se testira. Treći LLM u ulozi sudije ocjenjuje interakciju. Time se u velikom obimu testira cijeli audioput, uključujući pravovremenost i upravljanje prekidima.

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

  • Ručni kvalitativni pregled: i dalje je neophodan za otkrivanje problema koje automatizirane metrike propuštaju, naročito u vezi s tonom i prirodnošću.

Nijedna metoda ne obuhvata sve. Uvođenje agenata koji rade u stvarnom vremenu u produkciju zahtijeva kombinovanje sve tri metode, a čak su i tada alati za evaluaciju zvuka u stvarnom vremenu još nedovoljno razvijeni u poređenju s tekstualnim AI sistemima.

Zaključak

Glasovna komunikacija u stvarnom vremenu mijenja oblik proizvoda. Korisničko iskustvo oblikuju pravovremenost, prekidi, tišina i oporavak jednako kao i same riječi.

To znači da je model samo jedan dio sistema. Za glasovnu komunikaciju u stvarnom vremenu u produkciji potreban je sloj sesije prilagođen glasu, jasno razdvajanje govora i rezonovanja te upravljanje aktivnom sesijom zasnovano na događajima. Zaštitne mjere i dalje su usko grlo kada je riječ o kašnjenju, ali se kreativnim pristupima može sačuvati velik dio iskustva u stvarnom vremenu.

Evaluacija je i dalje najslabiji dio tehnološkog skupa. Još ne postoji ustaljen način testiranja osobina koje glasovnu komunikaciju u stvarnom vremenu čine ugodnom: pravovremenosti, tona, upravljanja prekidima i toka razgovora. Dok se takav način ne razvije, timovi koji koriste ovu tehnologiju morat će kombinovati automatizirane testove, testiranja između agenata i ručni pregled.

Autori

Oliver Wood i Sam Smith