Dnešní ranní briefing shrnuje tři praktické věci pro stavbu a provoz AI chatbotů a hlavně voice/voicebotů v telco – od řízení latence přes více-agentní architekturu až po přerušování (barge‑in) bez „cukání“ konverzace.
1) Voice agent latency: co přesně měřit a jak srazit „ticho“ po uživateli
Hugging Face zveřejnili velmi praktický „latency playbook“ pro voice agenty, který rozkládá vnímanou latenci na konkrétní části pipeline (EOU/turn detection, LLM TTFT, TTS TTFB a do toho tool-cally). Důležité je, že ukazují reálná čísla z trasování (např. P50 ~1,4 s a P95 ~3,4 s vnímané latence) a že největší variabilita typicky sedí v LLM TTFT, hlavně s rostoucí historií konverzace. Pro telco voiceboty je to zásadní: i když máte dobré ASR/TTS, špatně řízený kontext a náhodné špičky TTFT zničí dojem „okamžité“ obsluhy a zvýší přerušování hovorů. Článek doporučuje měřit turn-by-turn pomocí tracingu (spany pro EOU/LLM/TTS/tool) a pak cíleně ladit: zkracovat kontext (sliding window/sumarizace), zapnout preemptivní generování a používat předrenderované audio pro statické fráze. Praktický takeaway: zaveďte metriky P50/P95 pro perceived latency a u tool-call turnů vždy promluvte „ack“ („Hned to zjistím“) + případně přehrávejte jemný „thinking“ zvuk, protože jinak uživatel vnímá dvě separátní ticha.
Zdroj: Hugging Face – The Voice Agent Latency Playbook
2) .NET referenční implementace realtime voice bota: WebRTC, multi-agent orchestrace a deterministický „Flow“
Microsoft .NET blog publikoval ukázku RT.Assistant (guest post z telco prostředí), která skládá realtime voice (OpenAI Realtime API přes WebRTC) s více-agentním systémem a deterministickým stavovým automatem („Flow“). Klíčová myšlenka je držet nedeterminismus LLM pod kontrolou pomocí pevně typovaných zpráv a explicitních stavů – to je přesně ten rozdíl mezi demem a provozovatelným voicebotem. Pro telco je navíc příklad domény (výběr tarifu) realistický: spousta parametrů, výjimek a promo pravidel, které uživatelé chtějí vysvětlit hlasem a rychle. Zajímavý praktický twist je „RAG bez vektorů“: dotazy se překládají do Prologu a běží nad logickou bází faktů, což může snížit halucinace tam, kde máte tvrdá pravidla (tarifní podmínky, limity, eligibility). Takeaway pro provoz: WebRTC je v praxi často lepší než WebSocket pro obousměrný realtime hlas (odolnost na drobné výpadky, separátní audio/data kanály, OPUS) a „Flow“/orchestrace pomůže, když musíte garantovat kroky (autentizace, consent, eskalace na operátora, audit).
Zdroj: Microsoft .NET Blog – RT.Assistant: A Multi-Agent Voice Bot Using .NET and OpenAI
3) LiveKit: Adaptive Interruption Handling (barge‑in) – méně falešných přerušení a plynulejší dialog
LiveKit oznámil obecnou dostupnost Adaptive Interruption Handling v LiveKit Agents: místo naivního „jakýkoliv zvuk = přerušit agenta“ používají audio model, který v prvních stovkách ms rozlišuje skutečné přerušení od backchannelů („mhm“, „jo“), povzdechů, kašlání nebo šumu v pozadí. Pro voiceboty v telco (call centra, selfcare) je to kritické: falešné barge‑iny způsobují rozsekané věty, opakování a zvyšují AHT i frustraci, zejména na hlučných linkách. LiveKit uvádí konkrétní benchmarky (např. 86 % precision a 100 % recall při 500 ms překryvu, odmítnutí 51 % VAD-falešných barge‑inů, inference do 30 ms, medián 216 ms audia k detekci) a model je nasazený v cloudu pro nízkou latenci. Praktický takeaway: pokud máte v produkci agresivní VAD interruption, zkuste přepnout na adaptivní režim (nebo podobný klasifikátor) a měřte dopad na počet „self-interrupt“ událostí + délku replik; typicky to zlepší perceived quality víc než kosmetické ladění TTS.
Zdroj: LiveKit – Adaptive Interruption Handling
3 rychlé takeaways pro telco/voice:
- Latenci řešte jako P95 problém: trasujte EOU/LLM/TTS/tool a cíleně zkraťte kontext + přidejte „ack“ před tool-cally.
- Multi-agent systémy bez deterministické orchestrace v produkci bolí; explicitní „Flow“ (stavový automat) zvyšuje stabilitu a auditovatelnost.
- Barge‑in není jen VAD: adaptivní detekce přerušení výrazně sníží falešná přerušení v reálném (hlučném) provozu.
