Tale i sanntid gir mennesker en helt ny måte å samhandle med KI-drevne applikasjoner på. I stedet for å skrive eller navigere i menyer kan brukerne snakke naturlig og få svar med naturtro timing og emosjonell kontekst.
Å skape en god taleopplevelse i sanntid handler om å koordinere direkte samhandling. Det er her det egentlige produktarbeidet begynner. Sanntidsopplevelsen er umiddelbar og naturtro. Å bygge en applikasjon som opprettholder dette, er en egen teknisk utfordring.
Modellen er bare én del av systemet. Produksjonsapplikasjoner trenger taletilpasset infrastruktur, et tydelig skille mellom samtaleflyt og dypere resonnering samt hendelsesdrevet kontroll som styrer økten mens den pågår.
Sikkerhetsmekanismer og evaluering står for mye av det som fortsatt er vanskelig. Sikkerhetskontrollene må holde tritt med direktelyden, og flyktige samtaleegenskaper som timing, tone og flyt er vanskelige å vurdere med tradisjonelle evalueringsmetoder.
De fleste talebaserte KI-applikasjoner fungerer fortsatt på samme måte: Tale går inn, tekst kommer ut, en modell tenker, og en syntetisk stemme leser opp svaret. Det fungerer. Men samhandlingen føles som det den er: en prosesskjede, ikke en samtale.
Tale i sanntid endrer dette. Brukerne snakker naturlig og får svar med timing, tone og emosjonell kontekst. Opplevelsen er raskere og mer flytende enn kjedede tale-til-tekst-løsninger, og minner mer om å snakke med et menneske enn å betjene et system.
Vi har sett at dette åpner for produkter og funksjoner som kjedede arkitekturer har problemer med å støtte. Sanntidsagenter for tale kan håndtere kundeservicesamtaler som ellers ville krevd lange, begrensende tastevalgsmenyer og overføringer mellom avdelinger. De kan veilede, lære opp nye brukere, støtte universell utforming på tvers av medier og mye mer. Der muntlig samtale har fordeler fremfor tekstbaserte grensesnitt, er tale i sanntid verdt å satse på.
De fleste talebaserte applikasjoner bruker det som kalles «den kjedede tilnærmingen»: en prosesskjede med separate modeller for tale til tekst, språkbehandling og tekst til tale. Disse systemene fungerer godt og åpner mange muligheter, men lyden finnes bare i ytterkantene. De separate trinnene tilfører en påtvunget struktur og ventetid, slik at samhandlingen føles mindre naturlig enn en ekte samtale.
Tale i sanntid bruker en annen tilnærming. I stedet for separate modeller for å lytte, tenke og snakke håndterer én modell alle tre direkte og forstår og genererer både lyd og transkripsjoner samtidig. Inndata og utdata behandles kontinuerlig. Dermed kan systemet svare med naturlig timing og følelser som bevarer den realistiske rytmen i en direktesamtale. Resultatet er at timing, tone og håndtering av avbrytelser blir sentrale deler av produktet.


Sanntidsopplevelsen er attraktiv fordi den føles umiddelbar, men vanskelig fordi ingenting venter på tur. Det krever mer enn rask og presis lydgenerering. Det vanskelige er alt det andre. Modellen kjører i en aktiv økt. Alt rundt den – tilstand, sikkerhet, orkestrering og kontroll – må følge samtalen i samme direktetempo.
I en kjedet taleapplikasjon gir turbaserte samtaler en ryddig frem-og-tilbake-struktur. Brukeren snakker, systemet svarer, og neste trinn begynner. Tale i sanntid gir ikke denne strukturen. Begge parter kan snakke samtidig, eller ingen sier noe og det blir stille. En bruker kan avbryte midt i et svar eller stille et oppfølgingsspørsmål før systemet har snakket ferdig. Avbrytelser er ikke lenger særtilfeller, men et sentralt samhandlingsmønster.
Dette mønsteret gjør sanntidsapplikasjoner til en grunnleggende koordineringsutfordring og forklarer hvorfor systemet rundt modellen er like viktig som selve modellen.
Skal denne typen system skaleres, må det utformes spesielt for direkte samhandling. Tre elementer går igjen i systemene som faktisk settes i produksjon.
Sanntidsøkter med tale må håndtere strømming av lyd, turtaking, avbrytelser, tilkoblingens livssyklus og kjøring av agenter. Avhengig av hvor applikasjonen tas i bruk, kan det også være nødvendig med støtte for telefoni. Dette er grunnleggende deler av opplevelsen og avgjørende for å skalere applikasjonen.
Det første kravet er et taletilpasset øktlag. Rammeverk for sanntidskommunikasjon (RTC) gir applikasjonen et sted der den kan administrere deltakere, strømme lyd og kjøre agenter i et telefonimiljø. Vår erfaring er at særlig Livekit har vært nyttig. Det tilbyr en WebRTC-stakk med lav ventetid, støydemping av høy kvalitet og reduksjon av variasjoner i dataforsinkelsen som standard. Den ekstra kompleksiteten gjør det sjelden verdt å implementere dette laget selv.
En multiagentarkitektur for tale i sanntid handler i bunn og grunn om å skille ansvarsområder.
Sanntidsmodeller for tale er svært gode til å strømme samtalelyd, men er ikke optimalisert for dypere resonnering. Oppgaver som verktøykall, innhenting og strukturert beslutningstaking løses bedre av en annen modell.
Et nyttig mønster er svarer–tenker-arkitekturen.
Svareren er sanntidsagenten for tale. Den har ansvar for å opprettholde den direkte samhandlingen: lytte, snakke, håndtere avbrytelser og bevare samtaleflyten. Utformingen prioriterer raske svar, tydelighet og emosjonell kontinuitet.


Tenkeren er en separat agent som drives av en modell med evne til resonnering. Den arbeider utenfor selve samtaleflyten og håndterer oppgaver som verktøybruk, innhenting og planlegging. Svareren kan bruke den ved behov og innarbeide resultatene i samtalen.
I noen tilfeller kan tenkeren stå for resonneringen direkte. I andre tilfeller kan den orkestrere et sett med spesialiserte agenter. Hovedideen er at arbeidet utføres av en modell som egner seg bedre til resonneringsoppgaver.
Fordelen er enkel: Svareren kan forbli rask, fokusert og god til å samtale, mens tenkeren håndterer arbeid som krever mer tid, kontekst eller struktur.
Fremtidige banebrytende modeller kan gjøre denne tilnærmingen overflødig, men foreløpig opplever vi at mønsteret konsekvent gir bedre resultater enn løsninger med én agent.
Sanntidssystemer for tale produserer naturlig en kontinuerlig strøm av hendelser.
Brukerne begynner å snakke, tar pauser og avbryter. Transkripsjonene oppdateres trinnvis. Svar genereres og strømmes. Eksterne resultater kommer inn. Forholdene i økten endrer seg. Alt dette kan registreres, strømmes og lagres som sentrale hendelser som har skapt samtalens nåværende tilstand. Uten dem mister vi muligheten til å gjøre detaljerte og målrettede inngrep.
En hendelsesdrevet tilnærming gir en tydelig måte å håndtere dette på. Systemet registrerer hendelser etter hvert som de oppstår, oppdaterer økttilstanden og utløser de riktige oppfølgingshandlingene.
Lette hendelsesbehandlere holder sanntidsflyten responsiv, mens mer omfattende oppgaver – som å oppdatere tilstandsmaskiner, logge måleverdier, fjerne sensitiv informasjon, oppdatere databaser og avslutte en økt – utløses som asynkrone bakgrunnsoppgaver.
Etter hvert som funksjoner legges til, kan antallet slike bakgrunnsoppgaver vokse raskt. Selv små produktendringer kan innføre nye hendelsesflyter og avhengigheter. En godt strukturert arkitektur for denne samtidigheten er viktig for at systemet skal forbli forståelig og pålitelig etter hvert som det utvikler seg.
Denne hendelsesdrevne tilnærmingen støtter også et avgjørende produktbehov: å forme selve samtalen. Et sanntidssystem for lyd gjør mer enn å generere svar. Det styrer tempoet, håndterer stillhet og avbrytelser og avgjør hvordan og når en økt skal avsluttes. Denne atferden er en del av produktopplevelsen og bør utformes bevisst.
Når økttilstanden endres ut fra antall samtaleturer, medgått tid eller brukeratferd, kan systemet gi svareren målrettede instrukser. Det kan be agenten hjelpe brukeren med å runde av når øktgrensen nærmer seg, eller gi en oppklaring hvis samhandlingen stopper opp. Disse inngrepene er enkle, men får opplevelsen til å virke gjennomtenkt og helhetlig.
Et godt utformet system har alltid tydelig oversikt over økttilstanden: hvem som snakker, hvordan samtalen utvikler seg, og hvilke vilkår som er oppfylt. Denne tilstanden oppdateres kontinuerlig av hendelsesstrømmen og gjør det mulig å gi riktig veiledning til riktig tid.
Sikkerhetsmekanismer er helt nødvendige i brukervendt KI. De ivaretar sikkerhet, etterlevelse og pålitelighet og hindrer misbruk. I et turbasert system finnes det naturlige tidspunkter å kjøre dem på: etter at brukeren har snakket, eller før et svar leveres.
Tale i sanntid fjerner de fleste av disse praktiske kontrollpunktene. Inndata fra brukeren kommer kontinuerlig. Lyden kan allerede være under strømming. Ferdige transkripsjoner ligger ofte etter lyden. Hvis systemet venter på fullstendige meldinger før de kontrolleres, oppleves ikke samtalen lenger som sanntid.
Sikkerhetskontrollene må i stedet kjøre parallelt med samtalen for å bevare den naturtro samhandlingen. Én løsning er å strømme lyd til en buffer og samtidig evaluere transkripsjonsfragmenter asynkront etter hvert som de blir tilgjengelige. Da kan sikkerhetskontrollene kjøre tilnærmet i sanntid uten å blokkere samhandlingen.


Når en sikkerhetsmekanisme utløses, kan systemet reagere i konteksten ved å styre samtalen i en annen retning, justere atferden eller avslutte økten når det er nødvendig. Slik fungerer sikkerhetsmekanismene i sanntid uten at det går ut over brukeropplevelsen.
Det vanskeligste ved å evaluere et samtalesystem i sanntid er at noen av de viktigste egenskapene – timing, avbrytelser, flyt og tone – ikke kan fanges opp med tester som bare bruker transkripsjoner.
Vanlige evalueringsprosesser sender realistiske scenarioer inn i systemet, observerer resultatene og vurderer dem. For tekstbaserte eller kjedede lydsystemer er dette enkelt: Send inn tekst, og kontroller teksten som kommer ut. I sanntid er inndataene direktelyd, og den viktigste samtaledynamikken ligger i tidsdimensjonen: hvordan agenten håndterer overlappende tale, hvor raskt den svarer, og hvordan den henter seg inn etter en avbrytelse.
Manuell testing – å snakke direkte med agenten – fanger opp disse egenskapene, men skalerer ikke. Transkripsjonsbasert automatisering skalerer, men fjerner signalene som skiller en god sanntidsopplevelse fra en dårlig.
Én metode alene er ikke nok. Den praktiske løsningen er en kombinasjon:
Evalueringer fra agent til agent: En annen sanntidsagent, som har fått beskjed om å opptre som en bestemt brukertype, samtaler med systemet som testes. En tredje LLM fungerer som dommer og vurderer samhandlingen. Dette gjør det mulig å teste hele lydkjeden i stor skala, inkludert timing og håndtering av avbrytelser.
Ikke-funksjonelle måleverdier: Tiden frem til første lyd og sentimentanalyse av transkripsjonen gir kvantitative indikatorer på samtalekvaliteten.
Manuell kvalitativ gjennomgang: fortsatt avgjørende for å oppdage problemer som automatiserte målinger overser, særlig når det gjelder tone og naturlighet.
Ingen enkelt metode dekker alt. Å sette sanntidsagenter i produksjon krever at alle tre metodene kombineres. Selv da er verktøyene for evaluering av sanntidslyd fortsatt umodne sammenlignet med tekstbasert KI.
Tale i sanntid endrer produktets karakter. Brukerne opplever timing, avbrytelser, stillhet og innhenting like mye som selve ordene.
Det betyr at modellen bare er én del av systemet. Tale i sanntid i produksjon krever et taletilpasset øktlag, et tydelig skille mellom tale og resonnering samt hendelsesdrevet kontroll av den aktive økten. Sikkerhetsmekanismene er fortsatt flaskehalsen for ventetid, men kreative løsninger kan bevare mye av sanntidsopplevelsen.
Evaluering er fortsatt den svakeste delen av teknologistakken. Det finnes ennå ingen etablert metode for å teste egenskapene som gir en god taleopplevelse i sanntid: timing, tone, håndtering av avbrytelser og samtaleflyt. Inntil en slik metode finnes, må team som bygger med teknologien, kombinere automatiserte tester, kjøringer fra agent til agent og manuell gjennomgang.