← Все статьи

Stemmeopkald til flere AI'er på én gang i ét vindue: hvordan man laver "ring til Claude, GPT og DeepSeek" med afbrydelse

Stemmeopkald til flere AI'er på én gang i ét vindue: hvordan man laver "ring til Claude, GPT og DeepSeek" med afbrydelse

Kort om det vigtigste (BLUF)

Det er ubelejligt at sammenligne svarene fra modeller en efter en, og "diktation" er endnu ikke en samtale. Vi lavede et taleopkald, hvor Claude, GPT og DeepSeek svarer i samme vindue. Vi fortæller dig, hvordan et opkald adskiller sig fra en diktat, hvordan arkitekturen fungerer, og hvilke fejl du har lavet.

I de fleste chats med AI ser stemmen sådan ud: du dikterer en besked, vent, læser svaret. Dette er ikke en samtale - dette er et diktat. Vi er medNeural Spacegjort i afsnittet"Snak"fuldgyldigttaleopkald: du taler, modellen svarer med en stemme i realtid, du kanafbryde, og du kan ringeenhver model- Claude, GPT, DeepSeek - i samme vindue. At forstå, hvordan det virker, og hvorfor er sværere, end det ser ud til.

Hvorfor "diktat" ≠ samtale

En live-samtale er afhængig af to ting, som push-to-talk-grænseflader ikke har:

  1. Lav latenstid.En pause på 3-4 sekunder mellem din bemærkning og svaret dræber følelsen af ​​dialog. Modellen skulle begynde at reagere næsten med det samme.
  2. Indsprøjtning.I levende tale afbryder vi konstant: "stop, det er det ikke", "kort sagt", "kan du...". Hvis en assistent afslutter sin lange tanke og ignorerer det, du allerede siger, er dette ikke en samtalepartner, det er en telefonsvarer.

Begge punkter handler om vandløbs arkitektur og ikke om "forbindelse af talesyntese."

Arkitektur

Full-duplex path: continuous input, streaming of tokens into voice-over, interruption of response when interrupting
Fuld-dupleks-sti: kontinuerlig input, streaming af tokens til voice-over, afbrydelse af svar ved afbrydelse

Fuld duplex-sti.Mikrofonen streamer kontinuerligt, genkendelse sker parallelt med afspilning af svaret. Nøglepunkt: så snart taledetektoren fanger detbrugeren talte, mens modellen svarede, stopper afspilningen med det samme, det usagte svar afbrydes, og hvad modellen nåede at sige inden afbrydelsen sættes korrekt i sammenhæng – så hun forstår, hvor hun blev afbrudt.

Model agnostiker.Den mest interessante løsning er et enkelt stemmelag oven på forskellige modeller. Brugeren skifter samtalepartner i ét vindue: nu taler han med Claude om et øjeblik - med GPT, derefter med DeepSeek. Til dette, stemmekanalen (genkendelse + taledetektion + afbrydelseslogik + syntese)løsnet fra en bestemt model: Modellen er den udskiftelige "hjerne" bag den delte stemmegrænseflade. Stien arbejder med det abstrakte flow "replika → respons token flow → voiceover" og ved ikke, hvem der står bag.

Streamer svaret til voiceover.For ikke at vente på, at modellen fuldfører hele svaret, går tokens i syntese, efterhånden som de genereres, i bidder langs sætningernes grænser. Dette giver en lav forsinkelse og gør det naturligt at afbryde: vi afskærer præcis det, der allerede er blevet sagt.

Rive

  • Falsk alarm indbrud.Hoste, baggrundsstøj, "uh-huh" - modellen holder op med at tale på det forkerte tidspunkt. Vi var nødt til at kalibrere tærsklen for taledetektoren for at skelne den ægte replika fra støjen.
  • Kontekst efter afbrydelse.Hvis du blot smider et uudtalt svar ud, "glemmer" modellen, at den overhovedet svarede. Vi gemmer den talte del som sin gang i dialogen - så virker "stop, men mere om det andet" meningsfuldt.
  • Skift model i en live-samtale.Dialogens historie er fælles, men modellerne har forskellige formater og "karakterer". Vi normaliserer historien, så den nye model tager samtalen op i stedet for at starte fra bunden.

Hvorfor er dette

Forskellige modeller er stærke på forskellige måder: en er bedre til at ræsonnere, en anden er mere kreativ, en anden er hurtigere og billigere til snak. Et taleopkald med skift gør dette til et naturligt scenarie: diskuterede ideen med en, bad den anden om at kritisere og den tredje om at give muligheder. Alt foregår med stemmen, i ét vindue, med mulighed for at afbryde når som helst. Det samme stemmeværk ligger understemmeagent til hjemmesider— der trykker han også på knapper.

Hvis du bygger stemmegrænseflader oven på sprogmodeller, er det interessant at diskutere, hvordan du løser barge-in og gemmer kontekst, når den er brudt. Prøv at ringe:neuralspace.pro/chat.

Full-duplex pipeline: continuous input, tokens streamed into speech, playback cut on interruption
Fuld-dupleks pipeline: kontinuerlig input, tokens streamet til tale, afspilning afbrudt ved afbrydelse

Ofte stillede spørgsmål (FAQ)

Spørgsmål: Hvordan får man det bedste resultat fra et neuralt netværk?
Svar: Brug detaljerede prompter (beskrivelser) på engelsk, indstil stilen og detaljerne for scenen.

Spørgsmål: Kan disse materialer bruges til kommercielle formål?
Svar: Ja, det genererede indhold er helt dit.