logo

NJP

Virtual Agent Academy: Create multilingual conversations for Virtual Agent and NLU

Import · Feb 10, 2022 · video

all right everyone let's get started thank you for joining the virtual agent academy this fine morning or afternoon wherever you are in the world first a shout out to our virtual agent and nlu community feel free to jump in there to check out the latest content from experts also feel free to look at the our forum to ask questions and give answers and contribute to our growing community of virtual agent and nlu users if you're watching from youtube and you like what you're seeing feel free to click the like and subscribe button below feel free to also check out our past virtual agent academies they're all recorded they're all featured on youtube and in the now community channel you can also see other communities from our other products such as mobile and performance analytics today we're going to talk about creating multilingual conversations for virtual agent and nlu as always i'm victor chen and with me is our returning champion and nilama desai senior ai solutions developer and we're going to talk about how you can automatically translate your virtual agent and nlu models in multiple different languages so as an agenda we're going to go very briefly over some slides but then we're going to jump right into the exercise and then wrap up with q a uh don't worry for those of you who are jumping in late or who have colleagues who jump into late this is recorded uh and of course as always feel free to share this invite and this event to all your colleagues all your friends and if you have any questions in the meantime or during the conversation feel free to type in the q a box not the chat box please the q a cool with that said let's jump into the overview uh nalama are you ready yes victor thank you uh hello everyone i'm nalima desai like victor introduce me let me go ahead and share my screen we are going to go right into multilingual nlu um which uh was uh introduced for servicenow in our quebec release and in rome we have like more uh features that were added to it uh in quebec uh the we supported uh 16 total different languages uh that would work with uh nlu and virtual agent so you know the the support was is at a varying level and we will go over it in the next slide uh but basically five languages there is full mlu support uh for the languages right and um the language specific nlu models will work with servicenow nlu uh they're meant to work with ibm watson and microsoft lewis and another important feature that was introduced in quebec is the advanced workbench capabilities like batch testing and conflict review uh batch testing is important for multilingual nlu because you do want to fully test your uh base model the uh you know it can be english or another language but your parent base uh model needs to be well tested and it needs to perform at a good level and then you can start uh translating your uh model to other languages you know so that way it you know you don't end up having to re-tune and um re read redo the models uh you know by language right so it's uh makes it much more smoother uh then in rome uh the language support is the same but there was a lot of valuable features uh that were added uh to workbench uh in rome uh you know that's basically the capability to uh translate the models right from workbench uh we introduced the concept of primary and secondary languages in rome and that allows you know you to use the ui to just translate the languages right from workbench also rome you know attempts to keep the language models in sync so if you were to add a utterance for example for the main model right for the english model then the system will automatically create the uh language specific utterances you know in the language specific model um also rome uh supports this capability of you know activating or deactivating intents at the model level at the language specific model level this is good because you know sometimes it can happen that an intent only i mean doesn't apply for a specific language or country right so you can easily disable that intent and not have to maintain it um and then you know the uh also there is a feature for uh nlu editor role that was added uh so this is good so you know because with language uh models uh they do the uh once the the model is translated you know using machine uh machine language machine services right um it does need to be proofread uh by a language expert so uh someone who is not necessarily familiar with nlu but can be given an audio editor role so they can just focus on going over the utterances and reviewing the translations also in terms of uh you know the um the translation uh capabilities via the platform you know we there are basically you have to set up localization framework and dynamic translation and then it will work with uh invoke bench right there we did find that google translations were closest to human [Music] language so we i mean google uh using the google spoke would be a good um good way to go now but it should work with the other spokes as well okay moving on to the next slide uh this is uh basically uh the coverage for rome um nlu languages as we can see uh and so the same is true for quebec also as we can see that the first five languages are fully supported what that means is intent recognition is there intent recognition is there for all 16 languages vocabulary items are supported for all 16 languages and good news is batch testing also works for all the 16 languages so you can use batch testing to test your models adequately what is different with the five languages above is they support uh fully support entity recognition so this can be system defined or user defined entities they are supported in the five languages french spanish german and japanese these are the other additional languages in addition to english and in quebec we introduced vocabulary sources which is table lookups and setting up list values so that is also supported for these five languages um intent discovery can be used for these five languages and conflict review uh which is a part of advanced nlu workbench that also works with this five languages and then this nlu performance that's the nlu performance dashboard that was uh introduced in q back and it's also in rome so that dashboard is supported for these five languages so now we can move to the exercise portion of the demo so here i have my instance with the the language specific model so yeah let's pull this up and if i see here uh so this is my uh demo model uh and uh as we can see we have an uh have the model in english and i've already uh created a french model right and so we will go ahead and add a language here um and then we can pick uh one of the languages so let's say we are ready to uh implement the language in german or spanish right so pick german uh these options are not available right now they use software and use for third party uh that's because localization framework has not been said on this uh instance so we'll go over that steps uh quickly so here we have one uh setting that's already configured but it's in french polish and english for the purpose of this demo i'll go ahead and create a new um record okay we'll give it a name and then the artifacts there are you know you you can set it up for catalog item uh nlu and or virtual agent topics so i'll go ahead and select all artifacts so that way it'll work this setting will work for all three uh and then the system automatically populates the remaining languages that are enabled on this instance and german is one of them so we are good over here so click on enable machine translate and we'll pick these are the available spokes google microsoft ibm um i'll put google for this uh demo and then going on to workflow uh preferences we'll need to set uh a group that will be reviewing the translations so and and this group will need to have the localization fulfiller uh role so these are the two groups that are set up on this instance so i'll go ahead and submit the record so now we have a record for enable for german so going back to nlu we will go to studio and nice okay so now we can add a language i'll go ahead and pick german again and this time everything is enabled for me so i'll pick use software what that would do is it will translate the this english language model into german using google spoke right so as we can see with the click of a button the german model is created over here and we can see that everything is under needs review and the train test and publish buttons are disabled over here so basically the system assumes that when the model first gets created with the machine translations linguist needs to come in and review the model so that's where the rule for editor comes into play so you know from the main model page the nlu admin can go ahead and give editor role uh nlu editor role to their user and that user can come in and then start reviewing um the model right so for the purpose of this demo we will just continue with the review and let's say i'm the uh reviewer the linguist you know i'll go ahead and look at all these uh utterances and in case there are any changes that are needed those can be applied over here um and okay i am in the wrong scope so yeah so basically the idea is you know we have to mark um all the um [Music] all the intents as reviewed and once that is done uh once all the intents are marked as reviewed then we can basically see that test train and publish option on the uh on the screen so here uh basically this model this is my french model which is already published it's already reviewed and the available apps are basically all are enabled so this is where that feature comes into play where uh you know we can disable this in this case uh i forgot to switch scopes uh prior to the demo so it's everything is read only but that's the idea over here right so now at this point you know our model is translated into the language we pick a linguist has gone in and proofread all the utterances we are comfortable with everything that is said and the model is reviewed there is one step where you know when the translations happen if you have entities that need to be annotated then those that annotation needs to happen uh over here like going in and so like in the french model this is already annotated so that way uh entities will also get recognized right so now coming back to the virtual agent side of things under general settings uh we have the nlu settings as we all know uh that nlu needs to be enabled basically we want to make sure that uh you know german is the language that i just translated is enabled over here right which it is and so is french at the bottom of the page so here we'll go ahead and this is enabled so now we can go into designer and let's say we pick um in va designer what you want to do is make sure that obviously the uh topic is associated to the correct model uh the parent model and um you know which it is over here so here under the languages tab in rome we have two uh tabs two sub tabs one is for translations and other one is for nlu language mapping uh for the translations this is for translating your virtual agent topic uh when we saw in the localization uh framework settings uh there were the artifacts you know so as long as the uh virtual agent artifact is set up then we should be able to use the ui to translate our models into the languages chosen for the virtual agent topic as well coming to nlu mapping so here basically you will select the language over here in the drop down in this case my german and spanish models are not yet uh published the french one is published so i'll go ahead and pick that and as you can see that the the model is already uh selected uh and then i'll pick check id ticket status and then we will also associate the ticket number uh over here and then this is this will take care of the mapping and then coming back to the translations tab uh we can if you're working with french right so it's at the top but let's say we were to look at german so here we can pick german and what we can do is we can click on the machine translate so we see over here uh under the key phrases these values are not translated right so on the other ones are translated the system ones so you can click on this button to translate the rest of the values and then if everything looks good over here then we can just publish translations and be done with it so now at this point the french translations are also published and good to go and the nlu mapping for this topic is also all set right so we'll go ahead and for the purpose of the demo do one more vpn oh we have to save our topic and publish it let's just make sure check id ticket status is showing still unpublished so we will go ahead and publish it right here sometimes the uh these are internal servicenow instances and they can uh get slow yeah our customers are lucky they get the fastest internal ones are the others we get the low tier uh performance yeah and i'm just going to try a different topic let's see here okay so here the properties is already associated and we will go ahead and map punch [Music] save it just to show how it works on the va side it should work uh as expected um i have this spreadsheet that i created for a few different utterances we can try we have french over here which is the can i check the status of my incident and let's see if it works and we both again have to pick french so fred has like a few different incidents and obviously we can pick uh you know one of the incidents and get a topic and then add a test comment and end the conversation so coming back to our spreadsheet over here we can do we can just do one more test with starting a new conversation this time i'm saying can i get status of course i picked the english one okay let's do this quickly this is the french one we are almost done here okay let's see this works so this is can i get a status on my incident and like you see the it recognized the incident number as 9009 and it's showing the update on the incident right so that's the part of the demo i think we need to save some time for q a yeah thanks nilma so just to uh yeah so just to recap um we do have a poll for you so don't go quite yet because you know we are constantly updating our uh our language capabilities for for translations and for nlu so i think this is a great improvement over what used to be the case where you have to jump into cis ui messages and do audio translations manually now it's machine translated via dynamic translation for both the nlu model and the virtual agent topics thank you neil emma for the for the exercise on a dynamic translation of our nlu models and virtual agent topics uh we do have our next academy next uh in two weeks february 22nd i believe uh be the lookout in our community page for that and as always this recording will also go on youtube in a couple days with that thank everyone thank you

View original source

https://www.youtube.com/watch?v=ng16sapRCDc