Основна навигация

Как се мащабират гласовите изживявания в реално време

Синхронът, прекъсванията, паузите и възстановяването на разговора оформят изживяването също толкова, колкото и самите думи.

Резюме за ръководители

  • Гласовото взаимодействие в реално време предоставя на хората коренно различен начин за работа с приложения, задвижвани от изкуствен интелект. Вместо да пишат или да преминават през менюта, потребителите говорят естествено и получават отговори с естествен ритъм и емоционален контекст.

  • Създаването на качествено гласово изживяване в реално време изисква координиране на взаимодействието на живо. Именно тук започва същинската работа по продукта. Изживяването в реално време е непосредствено и естествено; създаването на приложение, което може да го поддържа, е отделно инженерно предизвикателство.

  • Моделът е само една част от системата. Приложенията в продукционна среда се нуждаят от инфраструктура, съобразена с гласовото взаимодействие, ясно разграничение между потока на разговора и по-задълбоченото структурирано анализиране и управление, базирано на събития, за контрол на сесията в хода на взаимодействието.

  • Голяма част от оставащите трудности са свързани със защитните механизми и оценяването. Проверките за безопасност трябва да следват темпото на аудиото на живо, а трудно уловими качества на разговора като синхрон, тон и плавност се оценяват трудно с традиционните стратегии.

Въведение: гласовото взаимодействие в реално време като продуктова среда

Повечето приложения с гласов изкуствен интелект днес все още работят по един и същ начин: речта постъпва като вход, извежда се текст, моделът мисли, а синтезиран глас прочита отговора. Това работи. Но взаимодействието се усеща точно като това, което е: процес от последователни етапи, а не разговор.

Гласовото взаимодействие в реално време променя това. Потребителите говорят естествено и получават отговори с подходящ ритъм, тон и емоционален контекст. Изживяването е по-бързо и плавно от това при свързаните последователно процеси за преобразуване на реч в текст и прилича повече на разговор с човек, отколкото на работа със система.

Виждаме как това създава нови продуктови възможности, с които архитектурите на базата на последователни процеси трудно се справят. Гласовите агенти в реално време могат да обслужват клиенти в ситуации, които иначе биха изисквали дълги и ограничаващи IVR менюта и прехвърляне между отдели. Те могат да помагат при обучение и въвеждане на потребители, да осигуряват достъпност чрез различни канали и много повече. Навсякъде, където говоримият разговор има предимство пред текстовите интерфейси, си струва да се разработва гласово взаимодействие в реално време.

Последователен процес спрямо реално време: какво се променя отвътре

Повечето приложения с гласови функции използват т.нар. „последователен подход“: поредица от отделни модели за преобразуване на реч в текст, езикова обработка и преобразуване на текст в реч. Тези системи работят добре и създават много възможности, но аудиото присъства само в началото и края на процеса. Отделните стъпки налагат наложена структура и забавяне, поради което взаимодействието се усеща по-малко естествено от истински разговор.

Гласовото взаимодействие в реално време използва различен подход. Вместо да разчита на отделни модели за слушане, мислене и говорене, един модел изпълнява естествено и трите задачи, като едновременно разбира и генерира аудио и транскрипции. Входът и изходът се обработват непрекъснато, което позволява на системата да реагира с естествен ритъм и емоционална изразност, запазвайки реалистичния ритъм на разговор на живо. В резултат синхронът, тонът и обработването на прекъсванията се превръщат в основна част от продукта.

Диаграма, сравняваща верижна гласова архитектура с гласов модел в реално време, който директно генерира аудио и транскрипции от аудиото на потребителя.

Изживяването в реално време е привлекателно, защото се усеща непосредствено; трудно е, защото нищо не изчаква своя ред. Поддържането му изисква не само бързо и точно генериране на аудио. Трудната част е всичко останало. Моделът работи в рамките на активна сесия; всичко около него – състояние, безопасност, оркестрация и управление – трябва да върви успоредно с разговора със същото темпо.

При приложение за гласово взаимодействие с последователна архитектура разговорите на ходове осигуряват ясна структура на редуване. Потребителят говори, системата отговаря и започва следващият ход. Гласовото взаимодействие в реално време не предлага такава структура. И двете страни могат да говорят едновременно или никоя да не говори и да настъпи тишина. Потребителят може да прекъсне отговора по средата или да зададе допълнителен въпрос, преди системата да е приключила да говори. Прекъсванията престават да бъдат изключения и се превръщат в основен модел на взаимодействие.

Именно затова приложенията в реално време са преди всичко проблем на координацията и обяснява защо системата около модела е също толкова важна, колкото самият модел.

Какво е необходимо за работа в продукционна среда

Поддържането на такъв тип система в голям мащаб изисква проектиране, съобразено специално с взаимодействието на живо. То включва три компонента, които неизменно присъстват в системите, достигнали до продукционна среда.

Инфраструктура, съобразена с гласовото взаимодействие

Сесиите за гласово взаимодействие в реално време трябва да обработват поточно предаване на аудио, редуване на участниците, прекъсвания, жизнен цикъл на връзката и изпълнението на агенти. В зависимост от средата на внедряване на приложението може да е необходима и поддръжка на телефония. Това са основни елементи на изживяването и са от ключово значение за мащабирането на приложението.

Първото изискване е слой за управление на сесиите, съобразен с гласовото взаимодействие. Рамките за комуникация в реално време (RTC) предоставят на приложението място за управление на участниците, поточно предаване на аудио и изпълнение на агенти в телефонна среда. Според нашия опит особено полезен е Livekit, който предлага WebRTC технологичен набор с ниска латентност, висококачествено потискане на шума и вградено намаляване на трептенето на сигнала. Рядко си струва да изграждате този слой самостоятелно предвид допълнителната сложност.

Отделяйте говоренето от мисленето – поне засега

Многоагентната архитектура за гласово взаимодействие в реално време е свързана с разделение на отговорностите.

Гласовите модели в реално време са много ефективни при поточно предаване на разговорно аудио, но не са оптимизирани за задълбочено структурирано анализиране. Задачи като извикване на инструменти, извличане на информация или структурирано вземане на решения се изпълняват по-добре от друг модел.

Полезен модел е архитектурата „отговарящ–мислещ“.

Отговарящият е гласовият агент в реално време. Той отговаря за поддържането на взаимодействието на живо: слуша, говори, обработва прекъсванията и запазва плавността на разговора. Проектиран е с приоритет върху бързата реакция, яснотата и емоционалната последователност.

Диаграма на архитектура „отговарящ–мислещ“, при която аудиото от потребителя постъпва към отговарящия за генериране на аудиоизход, а мислещият координира инструментите и връща контекст към отговарящия.

Мислещият е отделен агент, задвижван от модел с възможности за разсъждение. Той работи извън основния поток и изпълнява задачи като използване на инструменти, извличане на информация и планиране. Отговарящият може да го извика при необходимост и да включи резултатите му обратно в разговора.

В някои случаи мислещият може да извършва стуктурираното анализиране директно. В други случаи той може да оркестрира набор от специализирани агенти. Основната идея е тази работа да се извършва от модел, който е по-подходящ за задачи, изискващи разсъждение.

Ползата е ясна: отговарящият може да остане бърз, разговорен и фокусиран, докато мислещият поема работата, която изисква повече време, контекст или структура.

Бъдещото развитие на авангардните модели може да направи този подход ненужен, но засега установяваме, че той последователно превъзхожда подходите с един агент.

Управление, базирано на събития

Системите за гласово взаимодействие в реално време по естествен начин генерират непрекъснат поток от събития.

Потребителите започват да говорят, правят паузи и прекъсват. Транскрипциите се актуализират поетапно. Отговорите се генерират и предават поточно. Постъпват външни резултати. Условията в рамките на сесията се променят. Всички тези събития могат да бъдат улавяни, предавани поточно и съхранявани като ключови събития, формирали конкретното текущо състояние на разговора. Без тях губим възможността за детайлна и целенасочена намеса.

Подходът, базиран на събития, предлага ясен начин за управление на всичко това. Системата улавя събитията в момента на възникването им, актуализира състоянието на сесията и задейства подходящи последващи действия.

Леките обработващи функции поддържат бързата реакция в реално време, докато по-сложните задачи – като актуализиране на автомати на състоянията, регистриране на показатели, премахване на чувствителна информация, обновяване на бази данни и прекратяване на сесия – се изпълняват като асинхронни задачи във фонов режим.

С добавянето на нови функции броят на тези фонови задачи може бързо да нарасне. Дори малки промени в продукта могат да въведат нови потоци от събития и зависимости. Добре структурираната архитектура за управление на тази паралелност е важна, за да остане системата разбираема и надеждна с развитието си.

Този подход, базиран на събития, подпомага и друг ключов аспект на продукта: управлението на самия разговор. Системата за гласово взаимодействие в реално време не просто генерира отговори; тя управлява ритъма, обработва паузите и прекъсванията и определя как и кога да приключи сесията. Тези поведения са част от продуктовото изживяване и е добре да бъдат проектирани целенасочено.

С промяната на състоянието на сесията в зависимост от броя на ходовете, изминалото време или поведението на потребителя системата може да подава целенасочени указания към отговарящия. Тя може да подкани агента да помогне на потребителя да приключи разговора, когато наближава ограничението на сесията, или да даде разяснение, ако взаимодействието започне да буксува. Тези намеси са леки, но правят изживяването по-целенасочено и последователно.

Добре проектираната система поддържа ясна представа за състоянието на сесията: кой говори, как се развива разговорът и кои условия са изпълнени. Това състояние, което се актуализира непрекъснато от потока от събития, позволява да се подава точното указание в точния момент.

Защитните механизми трябва да работят с темпото на разговорите в реално време

Защитните механизми са задължителни при изкуствен интелект, с който взаимодействат потребители. Те управляват безопасността, съответствието с изискванията, предотвратяването на злоупотреби и надеждността. При система, работеща на ходове, има ясни моменти за задействането им: след като потребителят е говорил или преди да бъде подаден отговор.

Гласовото взаимодействие в реално време премахва повечето от тези удобни контролни точки. Входът от потребителя постъпва непрекъснато. Възможно е аудио изходът вече да се предава поточно. Готовите транскрипции често изостават от звука. Ако системата изчаква съобщенията да завършат, преди да ги провери, разговорът престава да се усеща като протичащ в реално време.

Вместо това защитните механизми трябва да работят успоредно с разговора, за да се запази усещането за естествено взаимодействие. Един от подходите е аудиото да се подава поточно към буфер, а фрагментите от транскрипцията да се оценяват асинхронно с появата им. Така проверките за безопасност могат да се извършват почти в реално време, без да блокират взаимодействието.

Диаграма, сравняваща защитните механизми в реално време, които работят с аудио на живо и фрагменти от транскрипцията по време на сесия, със защитни механизми при взаимодействие на ходове, които проверяват входа и изхода около даден отговор.

Когато се задейства защитен механизъм, системата може да реагира според контекста, като пренасочи разговора, коригира поведението си или прекрати сесията, ако е уместно. Така защитните механизми работят в реално време, без да влошават потребителското изживяване.

Оценяването в реално време е трудно

Най-трудната част при оценяването на разговорна система в реално време е, че някои от най-важните ѝ характеристики – синхронът, прекъсванията, плавността и тонът – не могат да бъдат обхванати с тестове само върху транскрипции.

Стандартните процеси за оценяване подават реалистични сценарии към системата, наблюдават резултатите и им поставят оценка. При текстови системи или системи с последователно обработване на аудио това е лесно: подавате текст и проверявате получения текст. В реално време входът е звук на живо, а най-важните характеристики на разговора съществуват във времевото измерение: как агентът се справя с едновременно говорене, колко бързо отговаря и как се възстановява след прекъсване.

Ръчното тестване – чрез директен разговор с агента –обхваща тези характеристики, но не може да се мащабира. Автоматизацията чрез транскрипции може да се мащабира, но премахва сигнала, който отличава доброто гласово изживяване в реално време от лошото.

Нито един метод не е достатъчен сам по себе си. Практичното решение е да се използва комбинация от подходи:

  • Оценяване между агенти: втори агент в реално време, инструктиран да влезе в ролята на определен тип потребител, разговаря с тестваната система. Трети голям езиков модел в ролята на съдия оценява взаимодействието. Така се тества целият аудиопът при голям брой взаимодействия, включително синхронът и обработването на прекъсвания.

  • Нефункционални показатели: времето до първия аудиосигнал и анализът на нагласите в транскрипцията дават количествени показатели за качеството на разговора.

  • Ръчен качествен преглед: той остава задължителен за откриване на проблеми, които автоматизираните показатели пропускат, особено по отношение на тона и естественото звучене.

Нито един метод не обхваща всичко. Внедряването на агенти в реално време в продукционна среда изисква съчетаване и на трите подхода. Дори тогава инструментите за оценяване на аудио в реално време остават по-слабо развити спрямо тези за текстов изкуствен интелект.

Заключение

Гласовото взаимодействие в реално време променя същността на продукта. Потребителите възприемат синхрона, прекъсванията, паузите и възстановяването на разговора също толкова, колкото и самите думи.

Това означава, че моделът е само част от системата. Продукционното гласово взаимодействие в реално време изисква специализиран слой за управление на гласовите сесии, ясно разграничение между говорене и структурирано анализиране и управление на активната сесия, базирано на събития. Защитните механизми остават основното ограничение по отношение на латентността, но с творчески подходи може да се запази голяма част от усещането за взаимодействие в реално време.

Най-слабата част от системата продължава да е оценяването. Все още няма утвърден начин за тестване на характеристиките, от които зависи доброто гласово взаимодействие в реално време: синхрон, тон, обработване на прекъсванията и плавност на разговора. Докато не бъде установен такъв начин, екипите, които разработват с тази технология, ще трябва да съчетават автоматизирани тестове, взаимодействия между агенти и ръчен преглед.

Автори

Oliver Wood, Sam Smith