Конфигуриране на изпълнението за скриптови AI агенти
В контекста на агентите на AI изпълнението се отнася до изпълнението на задачи, които включват взаимодействие с външни системи за извличане, манипулиране или съхраняване на данни чрез API. Тази статия очертава примерния агент, създаден за проследяване на пакети. Можете да използвате този шаблон за агент, докато създавате нов AI агент за цифрови и гласови взаимодействия.
За цифровите канали изпълнението трябва да бъде организирано чрез свързващия поток, използван за внедр яване на AI агента. Като вземем примера на агент за проследяване на пакети, който можете да импор тирате от шаблон, докато създавате нов Scripted агент, потокът също е достъпен за импортиране, докато създавате нов Webex Connect поток. В допълнение към изпълнението, този поток за свързване също насочва потреб ителя към различни опашки на агенти въз основа на последното им намерение.
-
След като приключите с настройването на скриптования си агент, идентифицирайте отговорите, които изискват изпълнение.
В примерния агент изпълнението е необходимо за „TrackPackageResponse“.
-
В тези шаблони конфигурирайте „отговор на задържане“, който ще се показва на потребителя, докато се осъществява изпълнението.
В този пример е конфигуриран задържащ отговор за „TrackPackageResponse“.
-
В потока използвайте възел за анализ на данни, за да анализирате метаданните на сесията на агента (изходна променлива) от отговора на AI агента, за да получите името на отговора.
Можете да получите примерния вход за възела на анализиращия данни, като изтеглите информация за транзакцията от сесиите, като изберете подходящата транзакция и изберете стойността на ключа „GenerateDdf“ от изтегления файл.
-
Ако желаете да извършите маршрутизиране въз основа на намерения по време на предаването на агента, можете да получите стойността на предишното активно намерение в същата стъпка.
-
Ако не желаете да изтеглите и анализирате примерния JSON, можете да го използвате
\$.model_state.template_keyза името на отговора и\$.previous_intent_model_state.intent.nameза името на предишното намерение .В нашия пример използваме променливи на потока „ResponseKey“ и „PreviousIntent“ за тези стойности.
-
Използвайте възел Branch, за да проверите дали даден отговор се нуждае от изпълнение.
-
Клонният възел излиза през резултата от възела „Никой от горните“ за отговори, които не изискват изпълнение.
-
В нашия пример, тъй като има нужда от изпълнение за „TrackPackageResponse“, проверете за стойността на „ResponseKey“ в нашия клон възел.
-
-
За отговори, които изискват изпълнение, използвайте HTTP възел за извършване на външни API повиквания.
-
Можете да анализирате полезна информация от отговора на HTTP възела в същия възел, като импортирате изва дка и получите изходни променливи.
-
В този пример получаваме „EstimatedDelivery“ и „status“ на пакета.
-
-
Обработете отговора на изпълнението с помощта на възел Оценка, за да формулирате отговора на агента.
В нашия пример инициализираме променливата „FulfilmentResp“ и задаваме нейната стойност въз основа на състоянието на пакета и прогно зната доставка.
-
Изпратете отговора на изпълнението на потребителя и го добавете към разговора.
-
Върнете се обратно към възела Получаване, за да продължите разговора между потреб ителя и AI агента.
Предаване на агент въз основа на намерение
По време на предаването на агента проверете за последното активно намерение през възел Branch преди възела на задачата Queue.
Проверете стойността на „PreviousIntent“ и разклонете към различни опашки въз основа на вашите изисквания. В този пример, ако клиентът поиска предаване на агент след намерението „Проследяване на пакета“, насочете го към опашката „Специалист“. Всички останали стойности водят до предаване на опа шката „Чат“.
За гласовите канали изпълнението трябва да бъде организирано чрез предаване на контрола върху разговора обратно на гласовия поток чрез персонализирани събития и по-късно възобновяване на разговора с агента на AI с данните за изпълнението. За тази цел примерният скриптов агент за проследяване на пакети се използва повторно. Потокът е достъпен в „Импортиране от шаблони“ в дизайнера на потока на Webex Contact Center. В допълнение към изпълнението, този поток също насочва потребителя към различни опашки на агенти въз основа на последното им намерение.
Ръководство стъпка по стъпка: Изпълнение
-
Добавете тип отговор „Персонализирано събитие“.
-
Намерете клавиша за шаблона, за който искате да добавите персонализираното събитие. В този случай използвайте клавиша за шаблон „TrackPackageResponse“.
-
Добавете типа отговор „персонализирано събитие“ към клавиша за шаблона.
-
-
Конфигурирайте отговора на персонализираното събитие.
-
Добавяне на име на събитието и полезен товар на събитието:
-
За потребителския отговор на събитието посочете име на събитието. В този случай „TrackPack_Exit“.
-
Добавете полезния товар на събитието, който съдържа данни, които ще бъдат предадени на потока. Това трябва да е във формат JSON. В този пример,
{"PackageNumber":"${entity.PackageNum}"}.
-
-
-
Използвайте полезния товар на събитието в потока.
- Достъп до метаданни за дейността на виртуален агент V2:
В конфигурацията на гласовия поток полезният товар на събитията, който сте добавили, е достъпен като част от метаданните за дейността на Virtual Agent V2.
Създайте променливата на потока PackageNUM.
Използвайте дейност за анализиране, за да изберете метаданните за активността на виртуалния агент V2 като входна променлива.
Задайте изходната променлива на 'packageNUM' и нейния Path Expression на '$.packageNUM ' (въз основа на структурата на полезния товар на събитието, конфигуриран в отговора на агента).
- Използвайте метаданните в HTTP дей ността:
Използвайте променливата 'packageNUM' от обработените метаданни във вашия поток, за да прос ледите пакета.
Импортирайте прикачения поток, за да намерите подробностите за HTTP дейността.
Определете променливите на потока „EstimatedDelivery“ и го задайте на „$. estimated_delivery'и друга променлива на потока' packStatus 'и я задайте на $.status.
- Добавете условия въз основа на активността на HTTP:
Добавете нова активност за усл овие към потока. Тази дейност се използва за проверка на отговора на HTTP дейността (дали пакетът съществува и неговото състояние).
В този пример изразът се
{{ HTTPRequest_8l3.httpStatusCode == 404 }}използва за проверка дали не е намерен пакет.
- Достъп до метаданни за дейността на виртуален агент V2:
- Добавяне на активност на задаване на променлива въз основа на условията:
За условието, за което пакетът не съществува:
- Под клона, където не е намерен пакет, добавете активност на З адаване на променлива.
- Задайте PackageResp (друга променлива на потока) на:
Не е намерен пакет с тези подробности.
За условието, за което пакетът съществува:
- Под клона, където е намерен пакет (тоест кодът на състоянието на HTTP не е равен на 404), добавете друга активност на Set Vari able.
Задайте PackageResp (друга променлива на потока) на:
Пакетът ти е взет. Тя ще бъде доставена от {{EstimatedDelivery}}.
Добавете още две Задаване на променливи дейности, за да конфигурирате името на събитието и данните за събитието. Тези данни ще бъдат предадени на дейността Virtual Agent V2.
Създайте променливи на по event_name тока иevent_data.
Зада event_name ване на TrackPack_Entry и event_data на {'packageResp': '{{packageResp}}' | json}.
-
Обратно към дейността на Виртуален агент V2:
- Конфигурирайте дейността на виртуален агент V2:
Свържете оконч ателната активност на зададената променлива с дейността Virtual Agent V2 .
Задайте името на събитието на {{event_name}}.
Задайте данните за събитието на {{event_data}}.
- Конфигурирайте дейността на виртуален агент V2:
-
Управление на входящо събитие във вашия виртуален агент:
-
Добавяне на нов шаблонен ключ:
-
Отидете в раздела Отговори в левия панел.
-
Добавете нов шаблонен ключ, наречен PackageStatus.
-
-
Конфигуриране на входящо събитие:
-
Под гласовия канал задайте входящото събитие на TrackPack_Entry (или каквото е изпратено към активността на Virtual Agent V2 в потока).
-
-
Конфигурирайте отговора:
-
Задайте отговора на: <speak><say-as interpret-as="date"> $ {eventStore.</say-as> packageResp}. Мога ли да ти помогна с нещо друго? </speak>
Този отговор използва променливите, изпратени в полезния товар от потока. Всички променливи, изпратени като част от данните за събитията, са достъпни за разработчиците за достъп като $ {eventStore. < variable_name >}.
Това също използва SSML тагове. По-специално, SSML маркерът ви позволява да контролирате как текстът се интерпретира и говори от двигател от текст към реч. Този маркер може да се използва за определяне на начина, по който трябва да се произнасят числата, датите, часовете, адресите и друг текст. Тук го използваме за дата.
-
-
Маршрутизиране на агенти въз основа на предишни намерения
-
Ако активността на Virtual Agent V2 излезе чрез изхода „Ескалиран“, използвайте дейност за анализ, за да получите предишното намерение от метаданните на агента.
-
Използвайте дейност Case, за да проверите за различни стойности на предишното намерение, които определят логиката на опашката. В този пример проверяваме дали предишното намерение е било „Проследяване на пакета“.
-
Прикрепете из ходите за активност на случая към съответните ръбове на контакта на опашката.