>> You're not going to want to miss
this episode of The AI Show where we talk about
The Evolution of Power Virtual Agents
with my good friend Gary, make sure you tune in.
[MUSIC] Hello and welcome to this episode of The AI Show.
We're going to talk all about
The Evolution of Power Virtual Agents with my good friend Gary.
Gary, why don't you tell us who you are and what you do.
You've been on the show many times,
we're glad to have you back, buddy.
>> Yes, I have. It's great to be back.
Hi, everyone, my name is Gary Pretty,
I'm a principal product manager on the Power Virtual Agents team.
We enable anyone to
build chatbots and virtual agents in the power platform.
>> Fantastic. Last time we had you on,
we've had you on a couple times,
but just give us a overview of bot framework.
You said the whole evolution,
the evolution of Power Virtual Agents,
how is this all related? Fill us in.
>> With Microsoft conversational AI over the last few years,
we've had two strands, really.
We've had Power Virtual Agents,
which exists and lives inside the power platform,
and was this incredibly intuitive,
low-code platform that anybody could
use to build some pretty good chatbots.
We've seen incredible usage and take up of that.
Then over in Azure,
we've had Azure Bot Framework and
the Azure Bot Framework Composer,
which I was on talking about the last couple of times.
This is really more focused on pro developers,
and gave you a lot more flexibility in
terms of what the visual designer could do,
and a lot more power to build more sophisticated conversations,
to model more natural conversations.
But the thing we kept hearing from customers
is we actually need to marry these two together.
What we've done now, which we've built from the ground up,
a brand new unified authoring canvas within
Power Virtual Agents that can be used by citizen developers and
pro developers to build very sophisticated bots without
needing to sacrifice the benefits that
you get from the self-service,
where you don't have to manage any of those resources,
we do all of that for you,
and pro developers and citizen developers can collaborate.
>> That's really cool. Basically it's from both ends,
from the pro developer low/no code developer,
basically you're bringing them together.
Am I understanding this right?
>> Absolutely. You've nailed it. It's really important.
Because we have this idea of what's called a fusion team,
which is a team that's made up
of different roles and different disciplines,
and five out of six organizations that we work with today,
have these fusion teams,
and they want to be able to collaborate together,
just like we co-author
Microsoft Word documents or PowerPoint decks.
They want to and need to collaborate on these building projects,
and so that's what we're enabling with these updates.
>> That's really cool. I'm on the pro dev side,
but I've been leaning towards solving problems with low no code.
Just because it's, why do I need to write
something if there's something that's already really nice?
But I feel like I want to
see how this is all done. Can you show us?
>> Absolutely. Yes. Let's dive in and take a look at the canvas.
Right now, what is in Power Virtual Agents,
this is our brand new technology preview which you can
sign up for today and I'll talk a little bit about that later on.
The first thing I want to do is to jump into the greeting topic.
For those of you who've used Power Virtual Agents before,
you're going to notice some immediate updates,
we've added some productivity improvements like copy and paste.
They seem like small things to
some people who've had them for a long time,
but man, they are productivity boosters.
For those people who've used Bot Framework Composer before,
you're going to see a lot of similarities here now with
some of the new actions and capabilities that we've got available.
You can now do things like manage your variables,
where you can actually manipulate your data.
Whereas previously, variables could only be
populated in response to a specific question.
Let's take a look at the greeting note specifically.
Here I've got my greeting note,
and one of the first updates that
we've made is the ability for you to add
multiple message variations to
make sure that your bot doesn't sound
stale or rigid over time if
somebody is interacting with it repeatedly.
Here I've got my same greeting message,
but I've got it written three different ways,
and when the user actually talks with the bot,
it's going to pick one of these at random,
and then next time it'll pick another one.
That can really help with the experience.
Again, what I'm showing you here is really
the features that absolutely anybody can use,
where we're really improving that low-code experience.
We'll take a look at the app menu on the
Send a Message Note, which I'm using here.
Now you can see that previously we
could only send plain text messages,
and now we've completely broken down that barrier,
where you can now easily add images,
you can add videos,
you can add cards.
We'll look at adaptive cards later.
I can say, I'd like to include an image,
an image of my cafe,
and as soon as I do that,
we get a preview showing me what that's going to
look like for the end users,
and you can start to see how this low-code experience has
just been really accelerated for somebody who's building this app.
>> I'm sorry, but this is really cool.
It's reminiscent of the Bot Framework Composer
that I saw before, but much revamped.
>> Right. I think the point is,
Bot Framework Composer had some incredible features.
But what we've done here is we've taken all of
those awesome features and
the power and flexibility that you had,
and we've infused it into the intuitive low-code platform,
that is Power Virtual Agents.
It's just this incredible partnership.
Just to highlight one of the other things I can do here,
is I can add quick replies now,
which are suggestions for
users as to what they might say back to the bot.
I could say make a reservation or store hours.
The user has an idea of what they might say,
and they can actually reply to the bot in one click.
I'm going to hit save on that topic.
The next thing I'm going to do is actually I'm going to jump
over to another one of our topics.
We've actually improved the topic navigation now,
so you can switch between them in just a couple of clicks,
previously it was a lot more convoluted.
Let's go take a look at our reservation topic,
which I've already started to build out.
>> A topic is just basically
a conversation flow thing, basically?
>> Yes. A topic you can think of as a piece of your conversation.
It's a reusable piece,
and it's usually broken down by use case.
In this case we've got one topic,
we're making a reservation.
>> Fantastic.
>> Here, for making a reservation,
we are asking a question of the user to
ask them what date and
time would they like for their reservation,
and then based on that,
we are checking whether or not
that is today using our condition note,
using the friendly UI,
we can set the top and bottom of that condition.
But what we can now also do is
build on top of those conditions with more flexibility,
thanks to our new Power Fx integration.
Now, for those of you who don't know,
Power Fx is an Excel-like formula language that's already used
across power platform in products like PowerApps,
etc, and really enables pro developers brings really
the power that you need
to have more flexibility
when you're building out your conversations,
but also opens the door for
those more low-code developers
who are coming in and can actually start to grapple this.
Because if you've used Excel,
you can use Power Fx.
>> Yes.
>> What I should have
pointed out earlier is we can make reservations,
but the bot is telling you that
reservations can only be made for the next seven days.
At the moment, we're not enforcing that.
What I'm going to do is I'm going to add a condition,
and that's going to add a new branch,
and by default we get the friendly,
very usable UI, very familiar
to anybody who's used one of these tools before.
What I can do now is head over and I can hit change the formula.
Once I do that I can pop this out,
and I can go straight over to
my new embedded Power Fx formula editor.
Power Fx now actually powers
the entire variable system within Power Virtual Agent.
Not only can I use it to build
custom conditions, more bespoke conditions,
I can also use it to manipulate my data,
set my variables arbitrarily,
it really is a big deal.
We've even introduced more complex data types
like records and lists as well.
>> This is cool because if someone has
the memory muscle for this kind of thing,
it's cool to be able to reuse it across all the power stuff.
>> Exactly right.
You can see here that actually what I've done,
instead of having just a simple condition I've
used the data function within Power Fx to
compare the reservation date time that we accepted
from the user earlier with today's date,
and I'm checking the difference.
I'm making sure it is somewhere between today and seven days out.
If it's not, then I can click "Insert",
that will add my branch,
and I can just send the user a quick message and say,
reservations need to be within the next seven days.
That then adds very quickly a nice new branch to my topic.
>> Yeah. That's cool because it's
like if you're used to doing Excel and stuff like that,
you're literally creating an entire conversation
just by hitting the plus with the conditional.
>> Exactly. If I pop open the test canvas right now,
which I just did, I can do from the toolbar here,
you'll see that the changes that we've just made,
I can now test immediately.
We can see that it's picked one of our messages at random.
It's displayed our image that we added
earlier to the message in the greeting topic.
I can hit "Make a reservation" that's going to
trigger the topic that we've just made some more updates in.
Now if I say something like June 30th,
2022, for my reservation,
what should happen there is it says now reservations need to
be within the next seven days because it's correctly executed.
That power affects expression that we just added by the formula.
>> That's so slick. I don't know.
I do machine learning and those things are hard to
demo live and say this was all, you just did this.
It wasn't fake and it felt very slick from a user perspective.
>> Yeah, honestly,
some of these things have been much harder to do
in the past and would
have been impossible for somebody who
was more from a less technical, non-technical background.
We're bringing these together.
Images, for example, though,
are ways around it with Power Virtual Agents by
trying to use Power Automate in a particular way,
return some data,
and you try and hack it together.
But we want to make sure that those things that are so
crucial to compensation design are
just easy and intuitive
and you don't have to look at the box. It just works.
>> You showed us some of the cool responses,
being able to embed stuff, make them really rich.
You showed us the power of facts.
Any other cool things that you have up your sleeve here?
>> Yeah. If you remember last time when I was on,
we talked a bit more about speech bots. Do you remember that?
>> That's right. Yeah,
we did the demo with
the telephone that it called my telephone and everything,
which was really cool. Any advances there?
>> Yes. Last year we announced within
Power Virtual Agents the general availability of Dynamics 365 BOJ
Channel where you can use a Power Virtual Agents bot to create
an intelligent IVR if you're using Dynamics 365 customer service.
That was an incredible step forward for
people who want to get started
quickly and easily build out these intelligent ideas.
We also introduced a bunch of
speech-first authoring capabilities inside
our composer and integrated
that with Azure Communication Services.
Well, once again, just like we've been saying,
we're bringing these two things together and we're
now announcing Native Telephony Support
directly within Power Virtual Agents with
a new Telephony channel which is in Preview.
You can use this Preview to connect an existing telephone number.
Honestly, it takes less than 60 seconds to do that,
and we've got plans
to allow you to connect to your rather complex contacts.
The reality is many customers out there already have
a contact center and they want to be
able to integrate intelligent bots with them.
We're going to enable that to allow you to route
your customers to your intelligent IVR,
but then onto human agents when needed.
>> That's amazing. You basically just add a phone number and
now it's all just magically enabled. Is that right?
>> Exactly. One of
the other awesome things is if we jump
back over to our topics list,
I got a let me see where it's gone,
if I jump into my greeting topic.
Here we can see the greeting topic
that we modified there and we're saying,
hey, welcome to Contoso or thanks for dropping by.
Well, you'll notice here that I've got
this new dropdown in the top right-hand corner of
the note so I can now switch over to the speech tab on this note.
What this allows me to do is provide
tailored responses for when I'm
using this bot over speech so I
can add a message variation and say something like,
thanks for calling Contoso Cafe, how can I help?
For example, you could say make a reservation.
What that's doing is it's providing
a speech alternative and
this bot could now work through your website,
through Web chat, or it could work over the telephone.
I can even insert things like SSML text.
If I wanted a small break
between the how can I help and for example,
I can hit my SSML tags dropdown and I can click
on "Break" and that's going to insert the SSML tag for me.
Just like that, I can immediately start really finally
controlling how my bot is talking.
The last thing I'll show you here is if we head over to
the general page and into,
we have a new speech tab in the general settings page,
I can even pick from one of
those awesome neural voice fonts that the cognitive services
make available and you can see here that there's so many
available and we can even test what that voice font looks like.
Folks who've never been exposed to these voice fonts,
they don't really know what the composition this is are.
We're just surfacing it for them.
I can do things like I can make my bot sound angry if I want to.
Let's see if it will work.
>> Hi. I am a bot.
I can help with account questions,
orders, store information, and more.
>> It is angry.
>> It is very angry.
I'm not suggesting that people
should build an angry bot, but if you want to,
you can build an angry bot,
and that will set the default
speaking style and voice for your bot.
But then you can use those SSML tags to
actually override it at the message level.
It really is a huge leap forward for building intelligent ideas
and making that possible in
connecting to other systems using Power Virtual Agents.
>> That is amazing.
Basically, if it's a text thing,
you have the dropdown to do the text stuff.
But if it's a speech thing, you can customize
that option right in the Canvas, so to speak.
>> Yeah, exactly.
There's more to come as well.
We will enable you to do things
like enable or disable what we call bargain, which is,
let's say the bot is reading out
a long greeting like it was just then,
you want to probably by default be able to allow
the user to interrupt that because maybe they've called before,
they know they just want to say,
I want to make a reservation,
but let's say you are reading our terms and
conditions and they are incredibly
important and everybody must listen to them.
Well, you can enable or disable
bargain at the individual message level
to make sure that you can control that and
we'll have things like silence detection as well,
so that if you ask the user a question and they don't respond,
then we can send an event to your bot and
your bot can then respond in the appropriate manner,
however you think fit.
>> With the angry voice, obviously.
>> I think so, yes. Why aren't you saying anything?
>> This is so cool.
Well, Gary, where can people go to find out more, my friend?
>> As I said earlier, I believe
we've announced a technology preview.
This is available to try now,
you can sign up for that technology preview
by checking it out at this link below.
This takes you to our blog with all of
our build announcements and all of
the details about how you can get started to sign up.
We are so excited to get people's feedback.
The initial feedback we've had some folks,
even just in the last few days, it's been amazing.
>> Well, I'll give you my feedback.
This is delightful.
I feel like I need to add some of this stuff to my website,
maybe even have a call this number,
if you want to ask me something and I can respond with Seth
angry or Jenny angry or whatever. Don't ask me questions.
>> Exactly.
>> This is so cool. Gary, thank
you so much for being with us, my friend.
>> Thanks so much.
>> Thank you so much for being with us, you as well.
We're learning all about the evolution of
Power Virtual Agents here on the AI Show.
Thank you so much for watching,
and hopefully, we'll see you next time. Take care.
[MUSIC]