Sådan skaleres gode oplevelser med realtidstale

Timing, afbrydelser, stilhed og genoptagelse former oplevelsen lige så meget som ordene.

Resumé

  • Realtidstale giver mennesker en grundlæggende anderledes måde at interagere med AI-baserede applikationer på. I stedet for at skrive eller navigere i menuer kan brugerne tale naturligt og få svar med timing i realtid og følelsesmæssig kontekst.

  • En god oplevelse med realtidstale handler om at koordinere en live-interaktion. Det er her, det egentlige produktarbejde begynder. Realtidsoplevelsen er umiddelbar og naturtro. At bygge en applikation, der fastholder den oplevelse, er en særlig teknisk udfordring.

  • Modellen er kun én del af systemet. Produktionsapplikationer kræver stemmenativ infrastruktur, en klar adskillelse mellem samtaleflow og dybere ræsonnering samt hændelsesdrevet styring af sessionen, mens den udfolder sig.

  • Sikkerhedsforanstaltninger og evaluering tegner sig for en stor del af de resterende udfordringer. Sikkerhedstjek skal følge med live-lyden, og flygtige samtalekvaliteter som timing, tone og samtaleflow er vanskelige at vurdere med traditionelle evalueringsmetoder.

Introduktion: Realtidstale som produktgrænseflade

De fleste stemmebaserede AI-applikationer fungerer stadig på samme måde: Tale kommer ind, tekst kommer ud, en model tænker, og en syntetisk stemme læser svaret højt. Det virker. Men interaktionen føles som det, den er: en pipeline, ikke en samtale.

Det ændrer realtidstale på. Brugerne taler naturligt og får svar med rytme, tone og følelsesmæssig kontekst. Oplevelsen er hurtigere og mere flydende end i sammenkædede tale-til-tekst-pipelines og minder mere om at tale med et menneske end om at betjene et system.

Vi har set, at det åbner for produktmuligheder, som pipelinearkitekturer har svært ved at understøtte. Realtidsagenter til tale kan håndtere kundeserviceinteraktioner, som ellers ville kræve lange, begrænsende IVR-menuer og viderestilling mellem afdelinger. De kan coache, onboarde, understøtte tilgængelighed på tværs af medier og meget mere. Overalt, hvor en mundtlig samtale er bedre end en tekstbaseret grænseflade, er realtidstale værd at bygge til.

Sammenkædet kontra realtid: Hvad ændrer sig under motorhjelmen?

De fleste stemmebaserede applikationer bruger det, der kaldes den »sammenkædede tilgang«: en pipeline af separate modeller til tale-til-tekst, sprogbehandling og tekst-til-tale. Disse systemer fungerer godt og åbner for mange muligheder, men lyden findes kun i begyndelsen og slutningen af forløbet. De separate trin tilfører en fast struktur og latenstid, så interaktionen føles mindre naturlig end en rigtig samtale.

Realtidstale benytter en anden tilgang. I stedet for separate modeller til at lytte, tænke og tale håndterer én model alle tre dele direkte og forstår og genererer både lyd og transskriptioner samtidig. Input og output foregår løbende, så systemet kan svare med naturlig timing og følelser og bevare den realistiske rytme i en live-samtale. Resultatet er, at timing, tone og håndtering af afbrydelser bliver en central del af produktet.

Diagram, der sammenligner en sammenkædet talepipeline med en realtidsmodel til tale, som genererer lyd og transskriptioner direkte fra brugerens lyd.

Realtidsoplevelsen er attraktiv, fordi den føles umiddelbar. Den er vanskelig, fordi intet venter på tur. Det kræver mere end hurtig og præcis lydgenerering at understøtte den. Det svære er alt det andet. Modellen fungerer i en live-session. Alt omkring den – tilstand, sikkerhed, orkestrering og styring – skal fungere sideløbende med samtalen i samme realtidstempo.

I en sammenkædet taleapplikation giver turbaserede samtaler en tydelig frem-og-tilbage-struktur. Brugeren taler, systemet svarer, og næste trin begynder. Realtidstale giver ikke den struktur. Begge parter kan tale samtidig, eller ingen siger noget, så der bliver stille. En bruger kan afbryde midt i et svar eller stille et opfølgende spørgsmål, før systemet har talt færdigt. Afbrydelser er ikke længere særtilfælde, men bliver et centralt interaktionsmønster.

Det er dette mønster, der gør realtidsapplikationer til et grundlæggende koordineringsproblem, og som betyder, at systemet omkring modellen er lige så vigtigt som selve modellen.

Det skal du bruge i produktion

Skalerbar understøttelse af denne type system kræver et design specifikt til live-interaktion. Det består af tre dele, som går igen i systemer, der sættes i produktion.

Stemmenativ infrastruktur

Sessioner med realtidstale skal håndtere lydstreaming, turtagning, afbrydelser, forbindelsens livscyklus og afvikling af agenter. Afhængigt af hvor applikationen implementeres, kan telefoniunderstøttelse også være nødvendig. Det er grundlæggende dele af oplevelsen og afgørende for at skalere applikationen.

Det første krav er et stemmenativt sessionslag. Frameworks til realtidskommunikation (RTC) giver applikationen et sted at administrere deltagere, streame lyd og køre agenter i et telefonimiljø. Det er især vores erfaring, at Livekit har været nyttigt. Det leverer en WebRTC-teknologistak med lav latenstid samt støjreduktion og jitterreduktion i høj kvalitet som standard. Det er sjældent den ekstra kompleksitet værd at implementere dette lag selv.

Adskil tale fra tænkning – i hvert fald indtil videre

En multiagentarkitektur til realtidstale handler grundlæggende om at adskille ansvarsområder.

Realtidsmodeller til tale er særdeles effektive til streaming af samtalelyd, men de er ikke optimeret til dybere ræsonnering. Opgaver som værktøjskald, informationssøgning eller struktureret beslutningstagning løses bedre af en anden model.

Et nyttigt mønster er svaragent-tænker-arkitekturen.

Svaragenten er realtidsagenten til tale. Den har ansvaret for at opretholde live-interaktionen: lytte, tale, håndtere afbrydelser og bevare samtaleflowet. Dens design prioriterer reaktionsevne, tydelighed og følelsesmæssig kontinuitet.

Arkitekturdiagram med en svaragent og en tænker, hvor brugerlyd sendes til svaragenten, som leverer lydoutput, mens tænkeren koordinerer værktøjer og sender kontekst tilbage til svaragenten.

Tænkeren er en separat agent, som drives af en model med stærke ræsonneringsevner. Den arbejder uden for hovedforløbet og håndterer opgaver som brug af værktøjer, informationssøgning og planlægning. Svaragenten kan tilkalde den efter behov og indarbejde resultaterne i samtalen.

I nogle tilfælde kan tænkeren selv stå for ræsonneringen. I andre tilfælde kan den fungere som orkestrator for en gruppe specialiserede agenter. Hovedpointen er, at arbejdet udføres af en model, der er bedre egnet til ræsonneringsopgaver.

Fordelen er enkel: Svaragenten kan forblive hurtig, samtaleorienteret og fokuseret, mens tænkeren håndterer arbejde, der kræver mere tid, kontekst eller struktur.

Fremtidige fremskridt inden for banebrydende modeller kan gøre denne tilgang overflødig, men indtil videre har vi oplevet, at mønsteret konsekvent klarer sig bedre end tilgange med en enkelt agent.

Hændelsesdrevet styring

Realtidssystemer til tale producerer naturligt en kontinuerlig strøm af hændelser.

Brugerne begynder at tale, holder pause og afbryder. Transskriptionerne opdateres løbende. Svar genereres og streames. Eksterne resultater modtages. Forholdene i sessionen ændrer sig. Alt dette kan registreres, streames og gemmes som de centrale hændelser, der har skabt samtalens aktuelle tilstand. Uden dem mister vi muligheden for at foretage detaljerede og målrettede indgreb.

En hændelsesdrevet tilgang giver en klar metode til at håndtere dette. Systemet registrerer hændelser, når de opstår, opdaterer sessionens tilstand og udløser de relevante opfølgende handlinger.

Enkle handlers holder realtidsforløbet responsivt, mens mere omfattende opgaver – såsom opdatering af tilstandsmaskiner, logning af målinger, fjernelse af følsomme oplysninger, opdatering af databaser og afslutning af en session – udløses som asynkrone baggrundsopgaver.

Efterhånden som der tilføjes funktioner, kan antallet af baggrundsopgaver vokse hurtigt. Selv små produktændringer kan medføre nye hændelsesforløb og afhængigheder. En velstruktureret arkitektur til denne samtidighed er vigtig for at bevare systemets overskuelighed og driftssikkerhed, efterhånden som det udvikler sig.

Den hændelsesdrevne tilgang understøtter også et afgørende produktbehov: at forme selve samtalen. Et realtidslydsystem genererer ikke blot svar. Det styrer tempoet, håndterer stilhed og afbrydelser og afgør, hvordan og hvornår en session skal afsluttes. Denne adfærd er en del af produktoplevelsen og bør designes bevidst.

Når sessionens tilstand ændrer sig på baggrund af antallet af samtaleture, den forløbne tid eller brugerens adfærd, kan systemet give svaragenten målrettede instruktioner. Det kan prompte agenten til at hjælpe brugeren med at runde af, når sessionsgrænsen nærmer sig, eller give en afklaring, hvis interaktionen går i stå. Disse indgreb er enkle, men får oplevelsen til at virke gennemtænkt og sammenhængende.

Et veldesignet system bevarer et klart overblik over sessionens tilstand: hvem der taler, hvordan samtalen udvikler sig, og hvilke betingelser der er opfyldt. Denne tilstand, som løbende opdateres af hændelsesstrømmen, gør det muligt at give den rette vejledning på det rette tidspunkt.

Sikkerhedsforanstaltninger skal følge med i realtid

Sikkerhedsforanstaltninger er uundværlige i brugervendt AI. De håndterer sikkerhed, compliance, misbrug og driftssikkerhed. I et turbaseret system er der oplagte tidspunkter at køre dem på: efter at en bruger har talt, eller før et svar leveres.

Realtidstale fjerner de fleste af disse praktiske kontrolpunkter. Brugerinput modtages løbende. Lyden fra systemet kan allerede være ved at blive streamet. Færdige transskriptioner er ofte forsinkede i forhold til lyden. Hvis systemet venter på hele beskeder, før de kontrolleres, føles samtalen ikke længere som realtid.

Sikkerhedsforanstaltningerne skal i stedet fungere sideløbende med samtalen for at bevare den naturtro interaktion. En løsning er at streame lyd til en buffer og samtidig evaluere transskriptionsfragmenter asynkront, efterhånden som de bliver tilgængelige. Dermed kan sikkerhedstjek køre næsten i realtid uden at blokere interaktionen.

Diagram, der sammenligner sikkerhedsforanstaltninger i realtid, som kontrollerer live-lyd og transskriptionsfragmenter under en session, med turbaserede sikkerhedsforanstaltninger, der kontrollerer input og output omkring et svar.

Når en sikkerhedsforanstaltning aktiveres, kan systemet reagere i konteksten ved at omdirigere samtalen, justere adfærden eller om nødvendigt afslutte sessionen. Det sikrer, at sikkerhedsforanstaltningerne fungerer i realtid uden at forringe brugeroplevelsen.

Evaluering i realtid er svært

Den største udfordring ved at evaluere et samtalesystem i realtid er, at nogle af de vigtigste kvaliteter – timing, afbrydelser, flow og tone – ikke kan indfanges med test, der kun bygger på transskriptioner.

Standardiserede evalueringsprocesser sender realistiske scenarier gennem systemet, observerer outputtet og bedømmer det. For tekstbaserede systemer eller sammenkædede lydsystemer er det ligetil: Send tekst ind, og kontrollér teksten ud. I realtid er inputtet live-lyd, og de vigtigste samtaledynamikker findes i tidsdimensionen: hvordan agenten håndterer overlappende tale, hvor hurtigt den svarer, og hvordan den kommer videre efter en afbrydelse.

Manuel test, hvor man taler direkte med agenten, indfanger disse kvaliteter, men kan ikke skaleres. Automatisering baseret på transskriptioner kan skaleres, men fjerner det signal, der adskiller en god realtidsoplevelse fra en dårlig.

Ingen enkelt metode er tilstrækkelig. Den praktiske løsning er en kombination:

  • Agent-til-agent-evalueringer: En anden realtidsagent, der instrueres i at påtage sig en bestemt brugerpersona, fører en samtale med det system, der testes. En tredje LLM fungerer som dommer og bedømmer interaktionen. Det gør det muligt at teste hele lydforløbet, herunder timing og håndtering af afbrydelser, i stor skala.

  • Ikke-funktionelle målinger: Tiden indtil den første lyd og sentimentanalyse af transskriptionen giver kvantitative indikatorer for samtalens kvalitet.

  • Manuel kvalitativ gennemgang: Er stadig afgørende for at opdage problemer, som automatiske målinger overser, især med tone og naturlighed.

Ingen enkelt metode dækker alt. Idriftsættelse af realtidsagenter kræver, at alle tre metoder kombineres. Selv da er værktøjerne til evaluering af realtidslyd stadig umodne sammenlignet med tekstbaseret AI.

Konklusion

Realtidstale ændrer produktets karakter. Brugerne oplever timing, afbrydelser, stilhed og genoptagelse lige så meget som selve ordene.

Det betyder, at modellen kun udgør en del af systemet. Realtidstale i produktion kræver et stemmenativt sessionslag, en klar adskillelse mellem tale og ræsonnering samt hændelsesdrevet styring af live-sessionen. Sikkerhedsforanstaltninger er fortsat flaskehalsen for latenstid, men kreative løsninger kan bevare en stor del af realtidsoplevelsen.

Evaluering er stadig det svageste led i teknologistakken. Der findes endnu ingen etableret metode til at teste de kvaliteter, der skaber en god oplevelse med realtidstale: timing, tone, håndtering af afbrydelser og samtaleflow. Indtil da må teams, der bygger med teknologien, kombinere automatiserede test, agent-til-agent-kørsler og manuel gennemgang.

Forfattere

Oliver Wood og Sam Smith