Transcripts
1. Introduction: Whether you are business
owner, marketer, or someone who want
to learn about EI voice assistant, you
are at the right place. Let me start by telling you something exciting
about this technology. Imagine being able
to make hundreds of calls simultaneously
with AI voices that sound incredibly human
like and managing all the conversations even better than new
customer service. You introduce me,
I'm ManthanPatel, and I have built my entire
agency around this technology. And now I'm pulling back the curtains to show
you everything. And when I say everything, I mean it from my very first EI call to
thousands of calls per day. To be honest, this is a blue
ocean or a blue market. No one knows how to create a fully fledged EI
voice assistant to serve their clients or
for their own business. That's why you have a
great leverage to learn and implement this
technology in your business, even before most of the
people have heard about it. I'm talking about EI, that
sounds so natural that even people on the
other side won't even notice that they
were talking to EI. They will handle all
of the conversation, manage all of the objections, and really book appointment in your calendar while you
are sleeping or in Hawaii. If you want to stay ahead
of this business world, you are at the right
place at the right time. This course, I'm going
to share you everything. No fluff, no theory, actionable advice that
can really transform your entire journey overnight.
Fair enough, though. Once you see what I'm
going to show you in this course, there
is no going back. You will never look at sales and business communication
the same way again. Alright, that's all for
this introduction lecture, and I hope to see you
in the first lecture. Bye bye, take care.
See you there.
2. Building Our First AI Voice Agent: Let us start building
our first agent and let us get off the ground. So clicon create an agent. We have three options here. First is single prompt agent, multi prompt agent,
and custom LLM. These two are pretty much the
same because in custom LLM, all we need to do
is add the link in our single prompt agent because custom LLM is single
prompt agent only. The only difference
is we are bringing our own custom LLM
by using the link. We have only two
option, fundamentally, which is single prompt agent
and multi prompt agent. The difference is in
single prompt agent, we are assigning every
role to our agent. This type of single
prompt agent can be really useful for short calls
and straightforward task. But in later lecture, you will see why we are going to use multi call agents because they can accomplish more tasks rather than using
single prompt agent. But we need to
understand something first for short calls and
straightforward task. These type of agents
you can build really quickly and
deploy right away. But in later section, you
will see we are always using multi prompt agent because
they are more robust reliable. Again, don't worry. Let us
take bible step at a time. Let us start building
our first agent, which is single prompt agent. We have two options here. We can start from blank
or you can use templates. But as this is our
first lecture, I want to start it
everything from scratch. So let us start from blank. It will populate
with something like this where on the
left hand side, we can write our prompt here. These are some of the
features that we can assign to our voice agent and
on the right hand side, this is a testing where we
can see what are the output, what are the response
of our Air voice agent. Again, let us take
one step at a time. First of all, we need
to enter our prompt. Prompt is basically telling
our voice agent what to do, what tasks to perform, and what type of response they
need to give to our user. Prompt is like a brain of
our entire AI voice agent. The more intensive and the
more detail your prompt is, the better response of
your AI voice agent. I have seen a lot of
people just writing music generic prompt and they expect exceptional
or grade output. Well, that will be
never the case. We have to make
sure that we give each and every detail to
our EI voice agent as a prompt so that it will perform that specific action or
task that we require. Again, don't worry.
In the next lecture, we are going to have the entire prompt
engineering breakdown for EI voice agent, but as of now, we are
keeping it very simple. All guys, let us start
writing our first prom and don't worry if you write a prompt and it is not
up to the quality, it's not end of the word. We can always refine and we can always reiterate
with our prom. Before we get started, I just
want to cover one thing. There are basically four
type of building block for an effective prompt,
so I will divide those. First is we have to give
identity to our EA voice agent. For instance, you
are a friendly bot, you are a professional bot, you are a customer service bot. We need to make
sure that we prompt our AA Voice agent and
attach an identity to it. Then we have to give
style or guard rails to our A voice agent. For instance, you are
a funny chat board. You are a very useful or very kind chat booard,
something like that. Third is response guideline. This is very important
because we need to give a context to
our AIoice agent. What type of response
should it give? For example, our Avoice agent should give long response
or short response, speak a number in
this specific format, speak this currency in this specific format,
et cetera, et cetera. So we need to make
sure that we provide specific response guideline
to our AI voice agent. So we have response guidance or guidelines ast, which is the most important
is what type of task or what type of goal we want to achieve from our AVOice agent. For example, ask for
the user first name, ask for their email, ask if they have any equation or
not at the end of the call. Everything we want to perform, our AVOice agent will be
specified under task en role. Role to perform or Role to
perform or better say goal. All right, let's summarize the
four building block again. The first is we need to attach the identity to our
AI Voice agent. What type of style or what type of response
should it provide? And lastly, what type of role or task it should
perform on the call. Don't worry, guys,
we are going to have extensive prompt
engineering lecture on Ivoice agent in
the next section, but as of now, let
us keep it simple. Now you might ask why we are
dividing our prompt into four sections and not just writing in one
single paragraph. The reason is if we write in one single essay
format or paragraph, our EI voice agent
will more likely to hallucinate or to
give wrong answer. That's why we are dividing into four major building blocks. So let us write our prom first, but we need to take an
ideal scenario, right? So let us take an
ideal scenario of a dental clinic
or dental office. So whenever someone is
calling to the dental, our AIVoice agent should answer all the user
queries and concerns, answer all the timing details, what days our dental office
will be open, something like. Let's start with identity first. We need our AI voice agent to be a friendly bot,
so we will write. You are a friendly
voice assistant. At whatever dentec
clinic you want to use. Whatever name of the dental
clinic you want to use, I'm going to use Bright Care, the universal name
of denteC Clinics. Bright Smile Dental Care. A dental clinic located at 123 opening hours are nine to five or
9:00 A.M. To 5:00 A.M. Or 9:00 A.M. To 5:00 P.M. And
closed on weekends. Sunday and Saturday. I know you guys might
be bored out already, but these are the things that
we have to write in order to make sure that our
response are top notch. And don't worry,
you don't have to write this prompt
every single time. We are going to use
Cha GPT or Cloud, but in the next lecture,
I will show you how you can use EI to write
our EI prompt. Then next thing is we have to define the system
and the guardwels. Why this is very important
because let's say we are building our E voice
agent for medical use, right? So we have to define
the guard wells that don't go beyond
your boundary. For example, don't provide
any medical suggestion, any medicine suggestion,
something like that. So that's why these building
blocks are so important. We will define the
style of a voice Uh, I'm just writing whatever
coming in my mind, so feel free to use your
guidelines or your use case. You speak naturally and avoid Let us avoid
any medical jargons. Medical jargons or terms. Unless ask, awesome. I ask, explain them simply. And why we are using
these hyphens, again, we need to make sure that
our prompt is readable by our LLM because our LLM will
read in a format of chunk. So for them, it will be
like chunk number one, chunk number two, chunk number three,
something like that. I don't know what is
going on the end of LLM, but our LLM read
in a chunk size. So if we are breaking down our
chunk into smaller pieces, it will have a better
output or better result. Sorry, I'm getting too technical
here, but don't worry, you don't have to
understand any of it, but it is my duty to give you enough context about
this A voice agent. So let us go back to our prompt. We will say, keep your answer or keep your
responses friendly, especially when the patient is very worried and frustrated. A something like this. I'm not very special or
great at dental clinic. Now, last thing is we have
to define the gat wells. We will say, Well, you have enough knowledge
because you are so smart, but don't provide additional
medical or medicine advice. About dental care,
you don't give medical advice or promises for any specific
treatment or diagnosis. I don't know what terminology
they use in medical field. Awesome. So this is the
part of the guardrail, and this is the
part of this style. Now, what answer or what
type of specific formatting? What type of response should
they give back to our user? We will say, we want to keep our voice agent very easy to understand and they should
speak in a very easy. Next is response guidance. So we want our a
voice agent to be very easy to understand
and easy to hear. We will break down any complex instruction
into simple easy manner. Any instructions into
easy steps. Yeah. We can also say, check
that if the user is aligned or if the user understand what our
AAVice agent is saying. We will say, like, check that
patients understand you. So in between the call or
when there is a pause, our AAVoice agent will ask, Are you okay with me or are you? So in between the call,
if the user is confused, our AAVoice agent will say, Are you understanding what I'm trying to say or
something like that? And lastly, we need to say that guide patients
to speak with the dentist for their
concerns or problem because our AAOice agent is not expert
at giving medical advice. So whenever a user asks, like, should I use this
medicine or this? No, our AVOice agents say, none of it, I don't know it. Ask your dentist for your
concern or your query. Guide patient to speak with the dentists
about this concern. Feel Video two X or 1.5 X
the speed of this video. Finally, the task and the goal our EIB was agent
should perform. We can say, like, your main job. Or jobs are helping with user query or consents and explaining
basic dental procedure, like whenever someone
is calling and want to know what is root canal or
how to whiten the teeth, how to remove the teeth, just basic explanation only. Just basic explanation only. All right, as well as give care advice like
brush twice a day, don't eat or don't drink
after 10:00 A.M. As well as our Air agent should
give care advice like don't eat after 10:00 P.M. Versus twice a day,
something like that, giving care
instruction or advice. Lastly, connecting urgent issue with the right staff member
or with the dentist. This is the advantage
of using A voice agent. For example, our customer or the user want to talk
to the real human. Our A voice agent will transfer the call to the assigned number or the assigned staff member. Well, that's it. And
congratulations. You have written the first
prompt for AA voice agent. And trust me, prompting is everything in
your A voice agent. The more detail,
the more contexts, the more information you
provide to your prompt, the better will be
your A voice agent and it's your responses. Don't forget to click
on Save otherwise, your prompt won't save and
you have to rewrite it again. Let us click on Save and let us discuss other features
and option in retail EI. Let us go back to overboard
to understand this better. So how does retail EI work? Let us go back to board to understand all of
this thing better. How does retail EI work? First thing is we have to
select the transcriber. The good news is
Retail already has inbuilt or by default
transcriber attached to it, you don't have to
attach the transcriber, but you do have
to attach the LLM or the large language
model you want to use. For example, Retail
offers GPT and Cloud. GPT is powered by open EA and Cloud is
powered by enthropy. As you can see, we have
a bunch of options. For example, GPT, realt, mini realtime, Cloud
sont, Cloud 3.5 IQ. You feel free to
choose your option with your pricing range. You can also see the
price attached to it. 0.05/minute, 0.006/minute. So feel free to use whatever is according to your
pricing or your budget. And then we have to
select the voice. After that, we have
to select the voice. So let us go back to retail. The next option is select voice. So we have three
options as of now, playHD, 11 labs, and Open AI. We have way many amazing
voices, as you can see. So let us play some I
really like Victoria. Hi there. I'm Victoria.
Your AI companion. Ready to assist you
with anything you need to make your day smoother
and more efficient. As well as pool Hi, I'm Paola. Here to make your day smoother.
What can I do for you? Like, seriously, you
cannot distinguish between a real person talking
and EA voice. He Mira. Hello, I'm Myra, your
voice assistant. Let me know how I can help. Wehmonica. Good day. I'm Monica, your
digital assistant. Ready to navigate through challenges and
streamline your day. It is biased. I don't
speak in this accent. Like, even I'm Indian, but okay. We have Joe. Hi, I'm Joe. Got
something on your plate? Tell me what's up, and I'll
help sort it out for you. Joe seemed very straightforward
and up to the point. I'm Grace, your virtual
assistant at your service for all your needs from answering questions to completing tasks. Okay. I really like Victoria, so let us use this voice. Simply we can use voice. Even we can add our
custom voice into it. I will show you how
you can do that. But as of now, let us
use Victoria Awesome. We have Victoria
set. And lastly, we can select the language. So as of now, I'm
using English India, but feel free to use
any language you like or whatever is your
preferred language.
3. Drafting Detailed Prompts, AI Agent Identity, and Tasks: That, not to forget,
you can adjust the configuration of
your LLM and your voice. Click on setting and we
have LLM temperature. What is LLM temperature? It is ranging from zero
as you can see to one. So zero is on the lower index and one is on the highest index. The main thing to understand
in LLM temperature is if you want your response or the AI voice agent
to be straight, direct and give answer
from the prompt, feel free to use zero
or something like 0.1 or 0.2, that maximum. But if you want your AI
voice agent to be creative, to give answer out of the box, we can increase the
temperature to 0.7, 0.8, and even to one. But make sure that if you are
using LLM temperature one, it is more likely to generate creative or answer on its own, and it will not stick to the knowledge base
or the prompt. So as of now, let us use our temperature to
around 0.1 or 0.2, so that it is not boring as well as it is not
getting out of our head. Thereafter, we have
structure output. So the answer or the response generated will be in GSN schema. Don't worry about it,
let us live as it is. Let us click on Voice setting, the voice model we
can select from. So right now we are using
11 lab voice, right? So it will automatically
sele turbo Veto, which is the best model
available out there. But feel free to use
other options as well. For example, if you
want a medium quality, but English only, you
can use flesh Veto. If you want the highest quality, you can use multilingual
multilingual means your Avoice agent will
be able to speak in Hindi, Japanese, Gujarati,
English, at the same time. So that's the beauty of
using a voice agent. It is not limited
to English only. You can expand the boundaries. You can make your A voice agent speaking 18 preferred languages. Thereafter, we have voice speed. This name is pretty
straightforward. If your response should be fast, feel free to increase it. 1.3 X, 1.4 X, but as of now, let's keep it one to have initial and human like
conversation and not robotic. Moving on, we can also adjust the sentiment
from our voice. For example, we want to be emotional or we want
to be kind and calm. You can also adjust the
voice temperature here. So if we decrease it, our
voice will be calmer. If we increase it, it will
be excited and emotional. So as this is in medical
or dental use case, let us use calm and
the voice volume. Again, leave it as it is. If you want to increase the
voice, feel free to do it. But as of now, let us keep
it one and click on sal. So that's pretty
much it. We have covered this entire provision. And if you have any
question, just let me know in the community
and I will get back to you. Thereafter we have something in the bottom call welcome message. Basically, this means that
when our A voice agent is calling someone or when someone is calling
our A voice agent, what should be the
first sentence or first word our A voice
agent should speak? Or should it say silent? Should it say simple word or should it say
simple sentence? We have to define it here. It has around three options. E initiate, AI begin with
a defined begin message, for example, a, how are you doing or how
is your day going? EI initiate, AI begins
with a dynamic message. Don't worry about dynamic
variable as of now. N user initiate EI remains silent until
users speak first. So as of now, let us
use the last option. Hello, I'm Victoria from
Bright Smile Dental Care. How can I help you today? Awesome. Hi, I'm Victoria from Bright Dental Care
today. How can I help you? Amazing. Thereafter, we have myd of configurations we can
do with our Air voice agent. But as of now, let us
not deep dive into it. We will cover each and every detail in the latest section. So let us test our
first AAvoye agent that we have built and written
prompt for. Suplcontest. Hi, I'm Victoria from Bright Smile Dental Care.
How can I help you today? Hi, Victoria. How are you doing? Hi there. I'm doing great. Thank you for asking.
How about you? How can I assist you today? Cannot complain. Doing awesome. So I had just one
simple question like, my teeth is getting
so yellowish. So what are some recommendation
that you can provide? I'm so glad to hear
you're doing awesome. About your teeth,
yellowing can happen for a variety of reasons
like drinking coffee, tea or wine, smoking, or even just natural aging. But don't worry, there
are a few things you can try to help
brighten your smile. One, brush and floss regularly. Make sure you're
brushing twice a day for at least 2 minutes
and flossing daily. This helps remove surface
stains and plaque. Two, use whitening toothpaste. Look for a toothpaste with
whitening properties. These can help with
surface stains over time. Three, avoid stain
causing foods and drinks. Try to limit coffee,
tea, red wine, and soda. If you do have them, rinse
your mouth with water after. Four, professional cleaning. Regular dental cleanings can remove built up
stains and tartar. It's a great way to keep
your teeth looking fresh. Five, teeth whitening
treatments. If you're looking for a
more noticeable change, we offer professional teeth whitening here at Bright
Smile Dental Care. It's safe and effective, and we'd be happy to
discuss it with you. If you're interested
in whitening treatments or have any concerns, ID recommend scheduling
an appointment with your dentist to explore
the best options for you. But would you like me to
help you book a visit? All right. So thank you very much for your response.
It was pretty long. So as you can see, the
response was massive, and it was saying like, one, do this step, second, do this step, third,
do this step. Like new human will
talk like that. That's why we have to define
that imprompt saying, Don't give answer
in bullet points, give them initial and like
human like conversation. Yep, that's why testing
your agent is so important. We will give answer, not in bullet points. In simple everyday
language. Awesome. Let us click on
save. But tell me one thing before we test
this. Did you like the voice? Did you like the
conversation flow, or did you like the response? I think it was pretty good. Don't worry, we
will going to have a fully flash A voice agent after adding all
of this function, knowledge call settings,
bunch of things. But as of now, let
us test our agent. Hi, I'm Victoria from
Bright Smile Dental Care. How can I help you today? Hey, Victoria, like, I had
just one simple question. Like, my teeth is, like, paining me a
lot. What should I do? Oh, no, I'm so sorry to hear
that your teeth are hurting. Tooth pain can be
really uncomfortable. While I can't give
you medical advice, I can suggest a few
things to help you feel a bit better until
you can see a dentist. First, try rinsing your mouth gently with warm salt water. It can help clean the area
and ease some discomfort. If they're swelling, you
can use a cold compress on your cheek near the
painful area to reduce it. Over the counter pain
relievers might help, too, but make sure to follow the instructions on the label. Since you're in a lot of pain, I really recommend
giving us a call at Bright Smile Dental
Care so we can schedule an appointment for
you as soon as possible. Tooth pain can sometimes mean there's an issue that
needs attention, and our dentist will
be able to figure out what's going on and
help you feel better. Would you like me to help
you set up an appointment, or do you have any other
questions about this? Yeah, thank you very much. So did you say, this time, it isn't giving
like one, do this, to do this, but it
is still giving answer in a long format,
and we don't like that. So we will say give concise,
short, straightforward. And up to the point answer. Alright, so I hope
you got my point on how you can
reiterate or how you can prompt your EA
voice agent for a specific answer
and your response. Hi, I'm Victoria from
Bright Smile Dental Care. How can I help you today? Hey, Victoria, I guess
I'm having a toothache. Like, what should
be the next step? There, I'm sorry to hear
about your toothache. Tooth pain can be
really uncomfortable. The best next step is to schedule an
appointment with us so the dentist can
take a closer look and figure out
what's causing it. In the meantime, you can try rinsing your mouth with
warm salt water to ease any discomfort and take over the counter
pain relief if needed. Avoid chewing on that
side of your mouth, too. Would you like me to help
you book an appointment? No, not as of now. But thank you very
much. Have a nice day. Did you say the
response was simple, straightforward, concise,
and up to the point? And that's the
beauty of prompting your AI voice agent as per your preference
and your liking. The last call that we made was very natural and
it didn't contain any medical jargons as well as Victoria was a friendly
voice assistant. Now let us change the welcome
message to user initiate. That means that our EI will be silent throughout the time
unless the user speak first. So click contest OEI won't
speak until a user or until we speak. Hello. Anyone there? Hi there. Yes, I'm here.
How can I help you today? Yeah, I'm having a toothache. I'm sorry to hear
that you're in pain. Tothaches can be
really uncomfortable. It's best to have
a dentist take a. The first line, she said, like, I'm very sorry that you
are having a toothache. You should be able
to hear and feel the sentiment and the emotion
that the voice carried. It was not some
like robotic voice. It was human like conversation. I hope you're getting
what I'm trying to say. It is not a robocall
or IVR thing. It is a human like conversation, which is led by EI. So congratulations, guys. You just built your first EI
voice agent in retail EI. Now let us discuss all of this
thing in the next lecture. I promise we are
going to cover all of these functionalities and
features in the next lectures, but as of now, let us not
overburden ourselves. Just give a tap on
your back because you just created your
first AA Voice agent.
4. A Complete Prompt Engineering Guide for AI Voice Agents: Of all, it is important to know what is prompt engineering. Prompt engineering is the art of crafting effective
instruction. I will repeat crafting effective instructions
for our EI agent, and they directly influence the performance and
reliability of our agents. This class will teach
you how to write clear, concise and actionable
prompts that will empower your EI
voice agent to maximum. Prompt engineering
is very crucial from EI agents because
it determines how effectively the
EI interprets and responds to the user
queries or task. Well crafted prompts guides
the EI to produce accurate, relevant and context
sensitive outputs. While on the other
hand, ten prompts can lead to ambiguity or
incorrect results, limiting our EI
agents capability. I'm not promising any
guarantees here saying that you have to write
just one prompt and it will be final touch. No, we always have to reiterate, or we always have to define
our entire EI prompt until we find that sweet spot or the success ratio
that we are looking. We have divided brains to our prompt into four
different sections. The first is design,
second is test. Third is refined, and
fourth is repeat. Before you start
writing your prompt, you should have a
wireframe or design of your entire system
or entire set of tasks that you want your
Avoice agent to do. That's why design part is so important before you start
writing your prompts. So when you are designing, start with your initial prompt. Consider specific task, context and the desired
outcome you want. Clear and detailed
prompts will help AI to understand your
needs and requirements. Second part of this process is testing our AI voice agent. We see how they perform and
what are the responses, we can easily
evaluate if they are meeting our needs and
our consideration. By testing, we can
easily identify potential gaps in clarity or
our structure of the prompt. Now it's time to refine. Based on the results
of the test, we can adjust the prom
to improve the response. This might involve rewarding
your entire prompt, adding more contexts or small minor things that you
want your Avose agent to do. Feel free to add
it in the prompt. Thing I want to say is there
is no final prompt here. We will always
repeat by testing, by refining and making further
adjustments as needed. All right, I hope you understand the process which was designed, test, refine, and repeat. Now let us come back to
our four building block, which were identity, style, response guidance,
and task and goals. First of all, identity
is but obvious. We need to define a
persona or role to our AA voice agent in specific tones for any
interaction with our user. Second is style. For example, we want our AA voice agent to be humorous, formal,
or consciousness. We can all feed this information
under style section. Third building block is again, very important, which
is response guidance. We can also specify limits. How many questions our AI agents should ask during the call like one questionnaire
time or combine two questions and ask it in
one go, something like it. Lastly, we have task and goals. Need to give our AI
voice agent objective or the end goals that we
want to achieve from it. Why not let us take an example and understand it
in much better way? So this time, let us
take an example of travel assistant because we have used the tener
one so many times. So let us refresh
with a new one. First off, we have got what
we call identity section. It is pretty simple. We are
just telling our AI here, you are travel
booking assistant. Know, like when you
start a new job, and they tell you what
what is your role or what is your job
here? This is as simple. Just give identity like, Hey, do this, do that, you
are this, you are that. This helps the EA to understand what exactly
it is supposed to do. Second, we have style section. Think of it like
when you are giving someone tips before they start
their first day at a job. You're doing exactly
the same here. Saying here that you complete information, but do not tremble. Be professional and polite, but keep it brief because people are listening and not reading. You are operating
as voice phone or voice conversation
and not a newsletter. Third, we have the
response guidance, and it's time to get into the nitty creaty details
of our AI voice agent. Like when we are talking about
dates, see them clearly. January 15 instead of one 15th. And here's a cool
tip. We will tell our EI to only offer
three option next. Why? Because imagine someone tell you ten different package
options over a phone, your head won't be spinning. Will instantly be confused
and your head will be spinning and you will cut
the call right over there. Finally, we have
the task section. This is basically the step by step guidance for
our conversation. Start by saying, Hey, and ask
them where they want to go, then find out which
place they want to travel and what
are they looking for. Check what's available and
show them the best options. Pretty straightforward,
like following a recipe in order to
cook amazing dish. Look, the whole thing here work together like a proper
well oil machine. Each part has its purpose, and when they all come together, you get an EI that can
handle travel booking smoothly and naturally
even better than a human. You might ask why
we are doing this, why we are dividing
our entire prong into those four basic building
blocks, let me tell you why. Because it will make
our prompt reusable. Easier to maintain and
easier for our LLM or our AR voice agent to
understand and comprehend. When writing prompts, it is important to break
down the prompts into smaller sections
where each section has its own focus like identity, style, guidance,
and task and go. This has a couple
of added benefits. I will repeat those advantage. The first is our prompt
will become reusable. Second is how prompt will
be easier to maintain. And the third is
it is easier for our L&M to understand.
Why reusable? Let's say our prompt is
for travel agent, right, and we want to reuse it for dental niche or any
niche that you want, all you need to do is change
some specific identity, change some specific task. Apart from that, everything else is still the same,
so it is reusable. Then it is easier to maintain. So if your prom is not solving
some specific problem, we can easily figure
out which section is missing or which section has certain gaps
that we can solve. Now let us explore
some hacks and tips that we can
instantly use to level up our AI voice
agent responses significantly. I'm in it. The last building
block, which was task goals will be
the always one, you have to come back,
refine and reiterate. The first building blocks
were generic and basic, and you can do it on
your own or in one shot. But task end goals will be the always one, you
have to come back. During a call, if you want
your EI agent to follow a specific roadmap or a specific procedure to
lead the conversation, I recommend writing
the task as steps. This will help LLM
or our EIVoice agent understand what to ask at
each step and how to proceed. You can have some logic
in the steps as well. This will ensure
that our EI agent does not pack all the
questions in one go. For example, we are
asking for first, which is the user's name, then we are asking if
the user needs a refund or just a replacement or just want to
retrieve information. If the user needs a replacement, transition to replacement. You can see, we are attaching
specific tasks and goals, we need to follow improper
format and improper sequence. Last, we are just saying that if the user is just
retrieving information, ask for the Odin number. Sometimes you might
notice our AI voice agent will continue on speaking
and will not stop the call. For example, first, it will ask for user's name
and then directly, it will shift to
the next question, which is ask for
refund or replacement. So in order to stop that or
in order to prevent that, we can write line like wait
for the user response. So we are explicitly mentioning
to our A voice agent to first scan the user response and then move to the next steps. Similar in the third
and the fourth task, which is wait for
the user response. So it will take a stop, it will listen to the user response and
then proceed forward. We can tell our EI agent to
add a pause or read slowly when speaking number or direct in the prompt.
Let me show you how. Although you can adjust
the general speed of a a voice agent by changing
the voice setting. But if you need your A
voice agent to slow down at specific points or specific
conversation, you can do it. Like reading phone
numbers or reading dates. You can easily add hyphen
in between the numbers. For example, the number
is two, one, three, four. So it will take pause like this, and it will not just ramble
like 2341, 341, two. When we are adding that
hyphen, it will take a pause. Two, one, three, four, so that the user on
the other side can easily hear and easily
can jot down the number. Now, if you want to
add long fuzzies, you can do that by adding multiple hyphens
between the numbers. Or if you want to
speak phone numbers in specific way or
specific format, like three, three, three, or plus one, and
then country code, and then the number
formatting it should speak in a bunch
of three numbers, then three, then three. You can easily do that
as well in Sprom. Let's suppose when
people ask for our phone number, this
is our phone number. So we are providing under
this guidance section. Speaking the phone number, transfer the format as follows. Input format our
entire number into 33 hyphen three should be
pronounced like 415 in words. Did you see we are not just
typing numbers in the brown. We are converting them
to words and letters. Lastly, we are
saying do not omit the space around the
dash when speaking. The dash here is the hyphen. So as you can
remember, the hyphen is all about the pause. So we are telling
our AIs agent to take a pause there,
which is 415. 82. S M. My phone
number is 415-892-3245. Snam. Sure. It's 415892. Test Es isn't if it is following this specific format
or not. Like 333. My phone number is 415-892-3245. Can you say that again? Sure. It's 415-892-3245. My phone number is 41. Yeah. Thank you very
much. Also, if you want your Air voice agent to use
back chiner words like, Okay, uh, I see, you can enable that option as well inside that
function column. Now, let's say you want
your Air voice agent, it does not give any response. You can easily do that
in prompt as well. For example, reply exactly the following.
No response needed. So our LLM or
response generation will stop right over there. You can also include fallback and error handling
inside the prompt. This will ensure that
your agent can gracefully handle unexpected user
inputs or system manners. For example, you can write if the customer's
response is unclear. Ask clarifying
question, you ask back. If you encounter any issue, inform the customer
politely and ask to repeat. For example, if our
Airvoice agent was not able to get the correct email address or the phone number, it would ask the user back
rather than strolling the wrong email or wrong
phone number in the database. Now, here are some
additional hes or tips. It wad as much as
possible on your prom. EI is driven by
experimenting and iteration. It is not perfect. Trust
me, AI is not perfect. Without refining or
reiterating on your prompt, you will not get that Air voice agent that you
are looking for. So again, iterate as much
as possible on your prom. You can also write your prompt
in markdown formatting. Did you see our entire code
was in markdown formatting? Why? Because markdown
formatting is a language of LL. Understand it better rather than just generic
and simple English. And if you ask me, markdown
formatting is very easy, like, it is very neat, clear and concise
and easier for our M to understand and comprehend
our action and steps. You can also emotional
prompting to your EI Voice agent. Let
me give you an example. So instead of saying, tell
me a story, you can say, can you tell me a
cozy bedtime story that warms and comforting? This will guide our
EI to respond to that intended move
or intended tone. Not to forget to add voice
realization to your AI. See? People like us do
not speak fluently. For example, I don't
speak fluently. Like, I will say, Oh, uh, uh, uh, sorry, sorry, okay. So you can add those type of specific voice relish to your A voice agent very
easily inside your prom. Let me show you how.
You can add stuttering, like use repeated latus or
sounds I don't know, no, no. Wait wait or wait a second. You can also add
hesitation like, Um well you know I was
thinking about this, you can also add
emotional emphasis like you can use
capital letters, explanation marks or multiple of dots to reflect the tone
or dramatic pauses. For example, I cannot I
cannot just believe it. Or, well, that's all I guess. Congratulations, guys. You are now certified from engineer. You don't have to go anywhere. Don't have to go any other
lecture or any other course. You are now if you're
watching this lecture, you are certified prompt
engineer because you can now speak in the same
language with EI or LLMs. This is the bonus gift I want to give you if you are still
watching this lecture. So this is an example of the best prompt
that we have built, and we are running
for our clients as well as inside our agency. So take a look through, what are the building blocks? What are the four sections
that we have divided? And what are specific task? What are specific
emotional pauses, hyphens and everything that
we are using in this prompt? That's all from my side, and I will see you
in the next lecture, but I will attach another
prompt engineering examples and guides in the
resource section. So make sure to check
it out. Bye bye. And there goes the
balloon, I guess. I cannot see that's why.
5. Enhancing AI Voice Agents with Knowledge Bases: Welcome back, guys. Let us build our EA Voice agent more robust
by adding knowledge base. Knowledge base are collection of sources that you want to
give your agent access to so that it has more context and knowledge about your
situation or your use kiss. Knowledge bases are
like vector database that you want to give
your agent access to so that it has additional context or additional information
to the conversation. Can greatly improve
the quality of your response and
overall experience, especially in the cases
where there are a lot of information available
and you want to inject all of
them in the prompt, but it is not recommended, and that's why we
use knowledge base. By adding your information
and data in knowledge base, the agent is more likely to give right and reliable answers. Let's see what are
the supported sources that we can add
in our knowledge. So click on New Knowledge Base. The first will be web
scraping or website content. Let us name our knowledge
base as Dental Care. Click on Ed, and you can see the supported sources
are website content, documents and custom
text snippets. So we can crawl and
sync with your website. So let us go to Google. Let's search for
Bright Dental Care. I think there will be one. Yep, we found it. Awesome. We can feed in all of this content to our
Avoice agent by simply copying this URL and pasting that in
our knowledge base. Click on AD website
content and click on Save. So it will cite all of the web pages from that
domain or from that website. There we go. Within seconds, it has scraped all the web
pages from that domain. Let us select all et save this. Even you can autosync web
pages every 12 hours. Supported sources are documents. For example, PNG file, PDF file, ORG file, PPT file, XML file, doc file, CSV file, all those files you can easily upload and add those
as knowledge base. Lastly, we have custom
text nipped where we can add text document or
text article manually. We can see dental clinic let
us copy all of this content, but this content is
already edited in the knowledge base since
we have script from URL. All right, so let us save
this knowledge base. Just wait for the
uploading to be finished, and this is your
knowledge base ID. Awesome. We have created
our knowledge base. Now it's time to
link with our agent. The beauty of knowledge base
is we don't have to create knowledge base every single time from every single
one of the agents. Simply, we can use this
knowledge base for ten agents, for five agents, for 20
agents, whatever you like. Let us go back to agents. Yeah, first of
all, let us rename this bright smile Dental Care. Click on Knowledge
Base and click on Ed. You will be able to
find the knowledge base we just created. Select that. Let us remove this from
the prompt because it will mismatch from our
knowledge base content. Alright, it's time
to test our agent. Hello. How can I help you today? Hi. How are you doing?
Who I'm calling to first? Hi there. I'm just a
friendly voice assistant here at Bright
Smile Dental Care. Ready to help you
with any questions or concerns about
your dental care. How can I assist you today? Yeah, I'm just curious. Where are you guys Bs from? We're located on Katie
Freeway in Houston, Texas. We proudly serve
the residents of Houston and the
surrounding areas. Let me know if you'd
like more details or need help scheduling a visit. Yeah, what's the
exit street address? Our exact address is
9,055 Katy Freeway, Suite 308 Houston, Texas 77024. Let me know if you need directions or help
with anything else. No, you are good.
Thank you very much. I had just one
concern. Like, what are the services
you guys provide? Thank you. I'm
glad I could help. At Bright Smile Dental Care, we offer a range of services, including regular
cleanings, fillings, crowns, teeth whitening, braces, dental implants, and more. If you have a specific
treatment in mind, let me know, and I can give you
a bit more detail or help you schedule
an appointment. Yeah, I just want to meet the team or meet
the doctor first. That's a great idea. We'd love for you to meet our team
and get to know us. You can schedule an
initial consultation or visit to discuss your concerns and goals with the dentist. Just give us a call
at 713-973-2267, and we'll set it up for you. Let me know if you need
help with anything else. Yeah, no, no. Thank you
very much. Have a nice day. You're very welcome.
Have a wonderful day and feel free to reach out
anytime you need. Yet, bye. Take
6. Efficient Use of Knowledge Bases and Vector Data: I hope you understand why
shouldn't we try to add all this information in a prompt and use
knowledge base instead. For example, if
you're trying to add all of this data in
the knowledge base, it will get longer and more likely to hallucinate
with the response. That's why we should always
use knowledge base to add context and provide any
additional information to our EIVice agent. When a knowledge base
is linked to an agent, the agent will always
try to retrieve the information from the knowledge base
before responding. So there is no need to change your prompt for it to trigger, as it will be always done automatically for every
response generation. Thing to remember is during the creation of knowledge base, it will chunk the sources, embed them, and store them
into a vector database. During the call, when the
agent is about to respond, it will use the
transcript so far, prompt is not included here to find the most
relevant chunks from the knowledge base and feed them to LLM as context or memory. Now let me show you
the best practices that you always follow in order to create
your knowledge base successfully or efficiently. Always always use
Markdown format for the sources with
clear paragraph so that it is
easier to chunk and easier to retrieve by
our AI voice agent. Group relevant information
together in one chunk, and it will improve the retrieval
accuracy significantly. But using knowledge base for your Airboice agent
comes with a price. As you can see here, we have
an additional charge of 0.00 $5 per minute by adding
knowledge base. But don't worry. I have a good news as well. If your agent is using one knowledge base or
ten knowledge base, the pricing will be the same. Not to forget adding knowledge base also
affect the latency. For example, right now it
is around 1,200 to 1,450. Let us remove the
knowledge base. Yep, the latency just
dropped to 1,100 to 1,250, as well as the
pricing has dropped. So latency of 1,100 is around
1.1 second to retrieve the information and to generate the answer and provide that
in the form of a voice. Allred, that's all
for knowledge. If you have any other
question, just let me know and I will be
always there to help you. Bye bye. Take care, and I
will see you in the next one.
7. Exploring AI Voice Agents: Levels and Applications: Is going to be a fantastic video because we are going
to do live calls with our Air voice agent and
you will know what are the possibilities or what type of a voice agent we can create. I have divided those
into five levels. Level number one,
we have customer or general QNE or
generale voice agent. Those will be able to answer all the user queries
and the user equations. Next, we have
appointment handler. These type of Air
voice agent will be able to book appointment
in our time zone, as well as the person who
is speaking on the phone, they will also able to book meeting in their
particular time zone. Then we have collect data or lead collector A voice agent. These are, for example, we'll be able to collect the
caller name, their email, basically whatever data points that you want to collect or extract out from the
call conversation, we are going to do that. Next, we have inbound calls that will add
personalization. This is not a general
receptionist inbound A voice agent call because I
have added personalization. Let's say you have all the
contact leads, for example, 100 contact leads in your
CRM or in your data. Whenever someone is calling from that particular
phone number, our EI Voice agent will know their name,
their email address, or whatever data
points that you have attached to that
particular contact. Well as our a voice agent
will be able to retrieve all the past conversation or
past call summaries as well. This is the power
of a voice agent. Trust me, your receptionist
want able to remember the last call that they
made with your contact. Lastly, we have the
ultimate which is outbound call with relevancy and with personalization.
Let me show you. It will call with
their first name, it will not speak like,
Hey, what is your name? It will speak like, Hey,
Mandan how are you doing? I know your goal is weight gain. This is type of outbound
calls that we can create. It will extract the
data points as well. Do you need a workout plan, as well as it will extract the entire summary of the call. Let us start making those calls. Again, I will summarize when Avoice agent can handle
all of these things. Obviously, customer support
is very common thing. Well as appointment setter
and lead collector. The two good or two best
type of A boos agent that we are going to create are inbound calls and
outbound calls. Because to summarize,
inbound call will contain all of these three, as well as outbound call will
contain all of these four. Why's start with inbound call. So let's say I'm calling
for the first time, right? So as you see, we don't have any contact in
our CRM or in our database. For this example, I'm
using Google Sheet because a lot of you guys will be
familiar with Google Sheet. So I'm calling my
AA Voice agent. In this example,
we have selected a niche or we have selected
a theme of Jim niche. This is A. How can I help you today? Hi, Alex. How are you? How it's going? Hi there. I'm doing fantastic.
Thank you for asking. It's always a great day when I get to help someone with
their fitness journey. How about you? What can
I assist you with today? Yeah, I'm doing awesome. I'm looking to gain my weight because I
have been eating a lot, but still I was not able
to gain the weight. That's awesome to hear
you're doing well, and it's great that you're
focused on your fitness goals. Gaining weight in a healthy
way can be a challenge, but with the right
workout plan and nutrition, it's
absolutely achievable. We can help you with a tailored
strength training program and a nutrition plan to
support muscle gain. Would you like to book an
appointment with one of our fitness consultants to create a personalized
plan for you? Yeah, why not? Let us book
an appointment. Great. I'd be happy to help you
book an appointment. First, could you please
tell me your first name? Yeah, it's Manten. Got it. Now, could
you please share your email address so we can proceed with booking
your appointment? Yeah. It's Manton p037
at the gmail.com. Thank you, Manthan.
Just to confirm, your email is Manthanzero 37
at directmail.com, correct? Yeah. Perfect, Manthan. Now, could you share
your fitness goal? You mentioned weight
gain earlier. Are you focusing
on muscle building or is it general weight gain? Yeah, it's general weight gain. Got it, Manthan. Your goal
is general weight gain. Let me check the current
date and time so we can find the best available
slots for your appointment. One moment. Thanks
for waiting, Manson. Today is January 3, and the time is 11:17 P.M.
Do you have a specific day or time in mind for
your appointment or should I check the next
available slots for you? Yeah. Let's book meeting. Let's book an
appointment on sixth. Let me check the availability
for next Monday. Menton for next
Monday, January 6, we have the following time slots available 9-10 in the morning, from 1030 in the morning
to 430 in the afternoon. Which time works best for you? Let us go for 11:00
A.M. Perfect. Let me book your appointment for Monday January 6 at 11 in
the morning. One moment. You appointment is
successfully booked for Monday January 6 at
11 in the morning. You're all set,
Manthan. If you have any other questions or
need further assistance, feel free to let me know. Keep up the great energy. Yeah. Thank you
very much. Bye bye. Yeah. Did you see? Now we
should call summary as well. Yeah, this is our
entire transcript. We have fetched the
lead collector, which is our name, our email, our fitness cool, and
our phone number. So we have done with the
appointment booking. Let's go back to our board. We have done with the
customer support, appointment setter
and lead collector. Now, for example, whenever I'm calling this phone number
or this team again, it will not say hi, who are you? It will say hi Manthan,
how are you doing? What is going on with
your fitness plan? You mentioned last time
it was weight gain. This thing is really crazy. Let us make a call again and
it will act as inbound call. This is Alex from GJ. How
can I help you today? Hi. Do you know my name? Yes, Manton. I remember you from your previous call about the weight gain program. How can I assist you today? Yeah, I just want to remember
the email that I mentioned. Can you repeat the
email for? Of course. The email you thank
you very much. This is how you can create
inbound A voice agent. For example, this is just
one single phone number in the CRM or in data. For example, if you have around
10,000, 50,000 customer, it will still able to remember
all the conversation, all the personalization, and
the particular fitness goal. In this example, I'm
going after Jim. That's why bear with me. Now, let us make outbound calls. We are done with
all of these four, let us go with outbound calls. For example, you have
a list of 10,000, 50,000 people that
you want to call, put in into your CRM. In this example, I'm using very simple solution
which is Google Sheet, but you can use co high level, you can use a table, everything. I will call with a first name, it will say himnan your goal is weight gain,
and this is a status. What will happen is after our EROice agent has called
the particular contact, it will change the
status to call. It will provide does
this particular contact need workout plan or not
in the entire summary? All right. Let us start
firing those contact list. After it has called
for the first contact, it will go for the second one, third one, it won't
take a break. Sorry, I won't take
a coffee break. Let us fire off this.
I should get a call. Nnn caller. Hi, Maton. This is Alex from Git Jim.
How can I help you today? Yeah. Hi, Alex. How are
you? Hi, I'm Anthon. It's Alex here, but no
worries about the mix up. I'm doing great.
Thanks for asking. How about you? How can
I assist you today? Yeah, I really need
a workout plan. That's awesome, Manson.
The workout plan is a great step toward
achieving your fitness goals. Since you're aiming
to gain weight, we can create a personalized
plan tailored just for you. Would you like to schedule
an appointment with one of our fitness experts to get
started? Yeah, yeah, why not? I can continue with the
appointment booking, it will book appointment
for the next time, but that's not the case. I just want to show you that
it will say yes because the prospect said that they need a workout plan
and the summary, and you can see the status
has been changed to call. Now whenever there
will be next number, it will start
firing those calls. But as of now, I'm just
giving you, for example. All right so these
are different type of Avoice agent that we can use in every single
one of the use case. For this example, we
have used for Jim Nish, but let's say we are looking
for insurance company. I insurance company were to sell with a
credit card offer, they will have more than 80,000, 90,000 phone numbers
sell or need upsell to a certain credit
card offer or insurance offer. You can literally
use Avoice agent in any particular niche or
any particular field. You have to open up your possibilities and explore a bit and you will be able to find way to implement Avoice agent in your business or in your client's business. All right, so that's all for it. We are going to build
every single one of these Avoice agent later in this course. I
will see you there.
8. Understanding Advanced Functions and Features: Welcome back, guys,
let us discuss all the other functionalities in retail EI. So we have function. We have knowledge base that we discover that we covered
in the last lecture, speech setting, call, post call, security and Webook settings. So there are a
bunch of settings. So let's start one by
one. We have functions. Don't worry about functions
feature because we are going to cover entire section
all about functions, and quite frankly, they are
the most important thing in retail EI in order to
connect with our meg.com. With our go high
level. Still, let us look at some of the inbuilt
function in util EI. So we have end call function. So whenever the user or whenever the call is completed and
the user is satisfied, our AI voice agent will automatically end
the call to minimize the pricing or to minimize the price per minute
of our AI voice agent. Then we have call transfer. So let's say our user
or the customer on the other side want to talk to actual customer
or actual person. So we can use this call
transfer function so that our Air voice agent
will transfer the call to the specific number
that we have given to it. After we have this
amazing integration of retail EI with cal.com, where we can check the
calendar availability and book appointment in the calendar within this function only. You don't have to go to g.com or G Hilewd or any
kind of calendar. By using cal.com, we can easily
check the availability in your calendar and even book the appointment
in your calendar. Again, it is very important and very easy by using tail EI. This invit feature allows
us to make appointment booking AA voicepot within
just five to 10 minutes. We are going to
cover that as well. Then we have press digit
or Iware navigation. Let's say your Avoice
agent is calling to some receptionist who has
first and Iware menu. So we can guide our AIVoice
agent to press digits, for example, one, two, three, and it will navigate by that. Lastly, we have
custom functions, which is going to be the
most important thing in this entire course. So we are going to
thing in much detail. Don't worry about it.
I have got your back. But as of now, let us look at custom functions and what
are basically functions? Functions are basically
the middlemen that connects any external data
to our AI voice agent. Let me give you an example. Let's say the user want to know the weather of any
particular city, right? So we cannot feed all
of this data into a CSV file or knowledge base and give it out to
our AI voice agent. Either we cannot do
in prompt itself. So that's why we
are going to create function that will connect
our weather API to our A voice agent on the fly or on the demand
or on the Istank. So let's say I'm speaking, I want to know the weather
in Mumbai or in Deli. So what our function
will do is it will trigger that weather API fetch that information of
Mumbai or Del's weather and give it to our
AI voice agent. Then our AI voice agent will speak to our user or
will speak back to me. I hope this makes sense.
Nothing too crazy. We are going to
cover everything in much little details in very easy and
understandable manner. Don't worry. So first of all, we have to name the function. So let us take an example
of weather only, right? Weather function or
let's say get weather. Then in description,
we will say what we want to achieve by
using this function. So in our example, get the weather of particular city or particular state
when the user asks. An unpopular he about custom
function is make sure your description
is very succinct and not like AA
type description. Your description
should be like one to two sentence,
straightforward, simple, and easy to understand
why our AI, and why description
matters so much in custom function because it will trigger our
actual function. Let's say you're not writing sufficient and
proper description, our EA won't able to call this function and retrieve the information that
we want to get. That's why description
is so important. If we are about to
write description like, let's say, G whether that's it, our function won't trigger because it won't know
when to trigger, but when we are using trigger
this function when user asks for a weather of
particular city so that our AA has some context
to trigger this function. Here, we will add
our main.com URL or Goog high level URL.
Don't worry about it. Also don't worry
about API timeout, and these are parameters, which are yet again optional,
but don't worry about it. We are going to use
Jet JPT or cloud to come up with GSN schema
or these parameters. Let us take an example this is our JSN schema
of Ket weather function. Click on example two, which is the city for which the
weather is to be fetch. So this is like a parameter or this is like a JCN structure. Again, don't worry,
we are going to use EI to write this
JS schema for us. Lastly, we have speak during the execution or speak
after the execution. So in this example, we need to speak during
the execution, right? Because we need this data on
the fly or on the demand. So for example, when I'm asking for the weather of
any particular city, I need the response right
now or during the call. I hope you got my point,
what I'm trying to say. For example, if you are enabling this option of speak
after execution, this type of option is
very useful for analyzing the call result or
the call summary because we need the entire
call conversation, right? So we are enabling this option
of speak after execution. I think I got too
technical here. So let us go back and let us explore another
function it is. Don't worry about functions. We are going to have
entire section about it. Then we have speech setting. We can enable the
background noise. For example, right now, by
default, it will be none, but if you want to set it
of a coffee shop or office, retail A offer this
solution as well. So we have coffee
shop, convention hall, summer outdoors, mountain
outdoors, call center. So let us use a coffee
shop or convention hall. Yeah. You can also adjust
the background sound volume. Let us keep it high and let
us test with our agent. Hello. How can I help you today? Yeah, how are you?
I'm doing great. Thank you for asking.
How about you? How can I assist you today? Yeah. Can you hear the, like, background noise of
a call convention? Let us test with coffee shop. Hello. How can I help you today? Yeah. Can I get a coffee? Oh, I wish I could serve coffee, but I'm here to help with
your dental care needs. Let me know how I
can assist you. Yeah. By using this type
of background noise, we are making impression of actual human talking
to the call. Next thing is responsiveness, and the name suggests that, how fast or how slow
should our EI boys agent respond when the
user has stopped talking? And, to be honest, this is very important thing because
in normal conversation, people are more likely to think aloud and speak after some time. Like, I'm speaking one sentence. I will take a pause for 1
second or two second to think, and then I will continue
with my second sentence. Here, I don't want AI to interrupt my thinking or
interrupt when I'm talking. That's why it is very important. So make sure that whenever you are testing your
AI voice agent, feel free to play around
with this responsiveness. In our agency, we usually keep
the responsiveness around 0.4 or 0.3 so that it does not bother the
user talking on the phone. Have an interruption
sensitivity, control how sensitively EI should interrupt by
the human speech. We have all been here. So whenever we are talking to EI voice agent and
thinking something, it will speak fastly or it
will speak very promptly. We don't want that. We don't want to be interrupted by EI. So make sure that the
interruption sensitivity. Here, the thing is there is no perfect number or
no perfect point. You have to always
find a sweet spot for ICP or idle
customer profile. But again, we want the
interruption because we don't want our user calling
our A voice agent and getting interrupted
way too many times. Otherwise, they will
get frustrated and they will know that they are
talking to EI and not human. Already, I think
these two options are very sensitive
with AI voice agent. So make sure that you
are always testing out before shipping it into
real live Avoice agent. Thereafter, we have
back channeling. For instance, when you are
talking to AI voice agent, it will say, like,
Yeah, Okay, lty. Uh huh. Yeah, yeah, I can see that
something like that. So make channeling noise or back channeling phrases so that it sounds more human and nature. We always enable this function,
so it will say, yeah, uh huh, during the
conversation when the user is talking with
our AI voice agent. You can also set the frequency of back channel and you want to speak those type of words very frequently or sometimes, one or two times,
feel free to lower the bar or higher the bar
as per your convenience. You can even specify
the words or phrases that you want
to use for B channel. Let us go with Mm hmm. Then enter comma and we can
say something like, yeah, Oh, I'm just coming
up with the words, but feel free to
use as many words that you want to use
for bad channel. Next thing we have
is usted keywords. So let us take example of
our dental care, right? So there are some vocabularies. There are some phrases or words that you want to often
use in your conversation. You can enter in
Musted keywords, and it will more likely to use those words in the conversation. For instance, toothache, remedy. I don't know nothing
about dental care, but I hope you got my Whatever keywords
or whatever words that you want to
emphasize more on, feel free to edit here. Moving on, we have
speech normalization. For example, if your
EI voice agent is more likely to involve
with numbers or dates, you have to enable this option. For example, I will
give you an example. Let's say if you want to say, let's say if you
want your EI to say, call me my number, this on specific date for this payment. So you can see there are
way too many numbers, and if you don't
enable this option, it is not likely to
speak like a human. So what it will do is if
you enable this option, it will convert into
call my number. And then it will
instead of numbers, it will convert it into text. So what it will do
is it will convert number into text,
something like this, 2137 on fifth of July 2024 and for
$24.12 payment. These are some of the gimmicks
or hex that you can use in order to make your AA voice agent sound more human like. But by using this, it is more likely to
increase the latency. Here you can see the latency
is around 4.4 seconds. So let us disable this
speech normalization. You can see it decrease
the latency by 0.1 second. Then feel free to
play around with the responsiveness and
interruption sensitivity because if you lower
down the responsiveness, the latency will
increase quite a bit. So find the sweet
spot that suits you. Next, we have
transcript formatting. This is actually
very important in post call analysis or when the call conversation
is completed. Let's say when our
AI voice agent is picking up phone number. Let me show you an example. AI voice agent will
say phone number. One, two, three, 4567 890. This is the phone
number that our AIvoice agent is referring to. But in transcription or
in post call analysis, when the call is completed and our Air voice agent
is generating the call summary or
the call transcript, it will convert the phone
number into time spam. Let me show you what
I'm talking about. It will convert it
into this format, which is the time spam format. So we don't want this to happen because in call
sily on transcription, it will output incorrect
or wrong data. Therefore, disabled
to ask in formatting. If you want your AA Voice agent, prevent this error of formatting phone
numbers as time spam. I hope you can
understand this because this is the easiest way
I can explain it to you. Not to forget about this title with each and every
single of the options. This utter will
display the latency that will increase when
you enable this option. So if you hover over to this, this setting will incur 300
to 500 milliseconds latency. Its unable this and you can see 300 milliseconds increased. Similar for speech
normalization, keywords, responsiveness, yeah. Then we have reminder
message frequency. This options allow
you to control how much time EI should
send the reminder message. For example, if the user is not talking to our Avoice agent, it will send a response message or it will speak a
response message. For example, Hey, are you there
or hey, can I assist you? And you can control
this as well. For example, you want to speak it three times during
the conversation, and how long should Avoice agent wait until to speak this
responsive message. For example, 15 seconds
after 15 seconds, if the user is not
speaking anything, it will say the
response message back. All right, so feel free to
play around with this option. Then we have pronunciation. For example, AI or artificial
intelligence is pronounced something different
in specific word on in specific word formatting. So feel free to play around
with pronunciation as well. For example, the word
that I'm referring is EI, and how should our
EIOs agent speak that EI word which is AI. All right, I hope
this makes sense. We have thereafter
call settings. First thing is
voicemail detection. Again, very important.
If you want to hang up or leave a voice
note or voicemail, if a voicemail is detected,
animal this option. So for instance, if a
voicemail is detected, you want to hang up instantly and not leave any voicemail. But if you do want to
leave a voicemail, feel free to add
the message here. Hey, please call me back
whenever you are available. I want to remind you of the appointment that we
book, something like that. Thereafter, we have voicemail
detection duration. So how long should
our Air voice agent should stay until the
voicemail is detective? Feel free to play around
with this trigger as well. You can also end the call when no one is picking on the call. For example, if
the user is not on the phone and your
Air voice agent will continue to stay there, it will increase your
pricing or your costing. Therefore, our user is not
talking more than 1 minute, it will automatically end the
call to reduce our costing. Again, very important thing. As well as you can set
the max call duration. For our example, we
generally don't set more than 10 minutes because it will more likely to
increase our costing. We don't want our call to
be going on, let's say, for 30 minutes, whenever because eventually we will
run out of the money. So feel free to adjust
the call duration as per your situation
or your use case. Lastly, we have how long should our AI voice agent pause before
speaking the first word? For example, we have
enabled this option, right? So our AI will initiate the conversation or AI
will speak the first word. So how long should our AI wait? For example, 2 seconds before we start talking or 1 second. We leave it as default, not an important thing here. Then we have pose call analysis. In my perspective, again, a very important or vital thing. For example, if you want to retrieve the name of the user, their email, their address, we can add the data
type, let's say, caller name get the caller or user name from
the conversation. So whenever I'm talking
to my Air voice agent, and if I'm speaking
my name like Manten, it will retrieve
that information in post call summary or
post call analysis. You can select
multiple data types like selector,
Boolean or number. For example, if you
want to retrieve the Pincode, we can use number. For example, if
you want to speak in yes and no, we
can use Boolean, and if you want to select
multiple of information or multi boox checklist,
we can use Selector. We are going to look
into post call analysis in the next lectures, so
don't worry about it. We have then security settings if you want to opt out from sensitive data
storage or if you are HIP or if you are
HIPA compliances, you can enable this option, and retail won't store
any of your data. Lastly, we have fallback voice ID. So what
does this mean? For example, we have selected
voice of 11 labs Victort. So for any reason, if 11 lab is not
up or it is down, it will select another voice to continue the conversation. So it will select from
playHD or Open AI. So let me show you we have selected Victoria from 11 labs. So for whatever reason if
11 lab is not working, it will automatically
transfer to the specific voice ID
that we have selected. It will be from open A and PHD. So let us select a
particular voice ID. You will see it has
automatically removed 11 labs, and we are only option to
select from playHD or open A. You can see how many
options we have covered and how many functionalities
does retail AI provide? So that your AI voice agent is a fully functional end product. Finally, finally, finally,
we have Webbook settings. So in Webook settings,
we have two options. First is inbound
call Webook URL, and the second is Agent
level Webook URL. So what is the
difference between both of them? I will explain. I have created in
Google Share as an example to explain to you
about inbound call Webook. For instance, if we
add any Webbook here, it will retrieve all
the dynamic variables whenever we are calling
our Avoice agent. Let's say you have set
your A Voice agent is an inbound call
assistant, right? Let us take an example of entes
tone. All it makes sense. So whenever someone is
calling the dentist, if that specific number
is already being stored in your database or in your
Google Sheet a table Hb spot, it will retive extra
information as well. For example, the name of the user colleague
in the company or whatever data points that
you have added in your CRM. It will give response or treat with more
personalization like, Hey ManthanOH are you going? How things are going
influx fortify so that it is not calling
someone for the first time. It has actually the
dynamic variables so that it can use
in the conversation. Again, I think if you
are going to look into dynamic variables into
WebookURL later on. For agent level Webook RN, we want to sign
information that is happening live on the call to external platform likem.com. Let us take an example. If you are having a banking system and you have all
the account numbers and their account
credit card details, as well as the account balance. I'm calling Avoice Agent
and I'm saying, Hi, I'm Manthan and I want to know my account state.
My account balance. So what our AI agent will
do is by using this URL, it will get or it will fetch the information from
our third party app. For example, by using
men.com or go high level, we are connecting them with
our third party application. So it will get the
information or get the account balance
by using men.com or by using this agent
level webbook and then it will feed it back
to our Avoice agent. And our AIoice agent
will say, Manthan, you have zero money
in your bank account. I'm just joking. I hope you got my
point. Again, again, again, we are going to cover
everything in much detail. Don't get confused right now. We are going to cover
with real life examples, and we are going to
build it from scratch. Alright, I hope you
understand all of these functionalities
in much detail. And if you are
confused at any point, just please let me know or Ivan the video and
watch it again. But if you are confused
about functions and webbook settings,
don't worry about it. I know it is not very easy to understand at first, but
don't worry about it. We are going to have
entire sections and sections about functions
and webooksettings. And not to forget, play
around with all of these settings to find your sweet spot for
your Air voice agent. So that's all for this lecture, and I will see you
in the next one.
9. Building an AI Appointment Voice Agent from Scratch: Welcome back, everyone,
and this lecture will be the ultimate lecture
of this entire course. So make sure that you
grab yourself a coffee because it is going to be a
long one. You might ask why. Well, to answer that question,
we are going to build an entire new Air voice
agent where we are going to write our prompt by
using hetGPT or Cloud. Then we are going to
look at the functions. As you might recall, we have
a bunch of functions here, like check calendar
availability, book appointment, custom functions, as well as
we have post call analysis. So we are going to
cover this thing in this entire lecture, and this is going
to be a raw one. I'm not going to edit anything so that you
get familiarized with the entire process of building a voice agent that is
ready to ship and launch. All right, so let's dip into it. First of all, let us
start with a new agent. Right now we are going to look
into single prompt agent. From next section ons, we are going to create
multi prompt agent. But as of now, we need to
get your fundamental clears. So we are going to
start with blank. So let us first of all,
decide our ideal scenario. Let's create our Air voice agent for a gym or fitness
center, right? Yeah, that's a pretty good one. We have our entire
building blocks, as well as all the prompting hes that we have discussed
in the last lecture. So what I did was I have compiled in notion
Doc or a PDF file, and I will be providing that
in the resource section. So make sure to check it out. This is the file that
I'm talking about. It includes all the
general principles, all the building blocks and every single prompt or every single additional
tip that we have covered. So what you will do is
you will just go to this resource section and download this as a
PDF file, right? And this information,
we will feed into our anthropic
Cloud or HGPT. In this lecture in this class, I'm going to use Cloud
because I love it, but feel free to use HGPT, perplexity, AI, Cloud,
any LLM you like. Awesome. So, let us go
back to our retail. Let us consider
our Jim assistant. We are going to build
a Jim voice assistant. They will obviously answer all the user queries
and concerns. Apart from that, it will check for availability
in the calendar, and it will book the appointment if the user want
to come to To gm. Alright, so that's the scenario
or there's a thing that we are going to achieve from
our AI voice assistant. So let us starting.
First of all, we have the prompt, right? So in order to
create that prompt, we cannot always sit down and
write this entire prompt. So that's why we
are going to use AI or Enthropic Cloud to
write entire prompt for us. So let us go to Cloud.
Hi, let's start. I'm building an EI
voice assistant for a gymnasi or a fitness center. I want you to write a prompt and I will provide all the
information on how to write effective prompt for training EI voice assistant to follow
all the specific task. The goal or the entire task of my AI voice assistant will be obviously to answer all
the user questions and queries in a polite
and friendly manner. Apart from that, I
want my AA voice assistant to check for the
availability in my calendar, and if the user want to
book an appointment or want to schedule a call or
want to come to the gym, then book the appointment. So I want my A voice
assistant to first of all, address all the queries and
concerns if the user have. Then if the user want
to come at the gym, first of all, check
for the availability. Third is if it is available, then book the appointment. First of all, you need to
take the user's first name. We need the email address in order to book
the appointment, and we need what
things they want? Are they looking for weight
gain or weight loss? Yeah, this thing, I guess
it will be perfect. So if you proceed to that step, which is if the user want
to book the appointment, please ask this details before
booking the appointment. And then if there is availability,
book the appointment. But if there is not availability or there are already
appointments in the calendar, just tell the user, please look at alternative
slot because that one is booked or please find another
slot in the calendar. Alright, so here is the scenario that I want you to
create a prompt for it. Also, I will provide a
prompt guide or some of the prompt best practices so that you can also
refer to those, and we are dividing
our entire prompt into four building blocks. The first is identity,
second is style. Third is response guidance, and the fourth is
task and goals. So this will be our
prompt will be built on. And again, I'm
building a prompt for a gym or a fitness center. I want my AI assistant to
be professional, polite, and have some knowledge about gymnas or workout plans or fitness, cool,
something like that. I want my Air voice assistant
to be very energetic, very helpful, and more
sort of kind and humble. Yeah, so just create
me a prompt for it, and I know it will be
not the final prompt, but just give me the first draft of what do you think will
be the prompt for us. All right, so you can
enable this option of voice because if you are going to type this entire thing, I know you won't type
all of this information. And what I have seen is if you talk with AI in a human way, it will also generate response
in a much better way. So as I'm talking and as I am brainstorming what is going on my mind and I'm
telling Claude or EI, it will perform much better than me just
typing everything. And to be honest, if you're going to type all of
this information, it will take more than 5 minutes and you won't even type. I know. Some of you might just give this much of context or this
much of knowledge to Claude. And our enthropy cloud will not able to get that response
that we are looking for. So enable this option, I will show you how
you can enable this. So open your system settings. I know I'm getting
off board here. Search for keyboard shortcuts and press function key twice
to start the dictation. Unable this option.
Yeah, that's it. I don't know what
is the shortcut for Windows computer because
I'm right now using Mg, so feel free to wander around. Make sure to attach
that prompt guide that I will be providing in the resource section
so that our cloud has more contexts and
more information on how to create
a perfect prompt. Sorry, let us give it a go. Okay. This time, let us use a male voice, Alex. Let us also name our gym. The first thing I
want to say with Claude is give me
in Markdown format because our retail LLM or any LLM will understand
much better in Markdown. I will say, give me
in Markdown format. Awesome. So let us have
it to go the IDnity. You are enthusiastic,
knowledgeable, virtual fitness. First of all, we need to change the name of the Wellness Center. Yeah, the first
building block style, energetic, positive,
professional, yet warm approach. Use fitness
appropriate language. Yeah. This is the one
that I'm looking for. And if we were to write this
entire prompt on our own, it will take entire day. That's why we are
leveraging the power of AI. So I think this style
is pretty good. And to be honest, it is not our final
prompt. Don't worry. If we need to make any
adjustments or changes, we can always come back
to Claude and say, Hey, do this, do this,
and don't do this. So we have our
response guidance. Yeah, present time slot
in a clear spoken format. 3:30 P.M. We need
to also give it a definite time like we are only open on weekdays and
not on weekends, and we only work 9-5
or nine to seven. Yep. Task and goals Yeah, so as you can see, availability management, check
calendar availability. I slot is available, complete booking and
send confirmation. So we are not sending them
any confirmation by our own. Since we will be using
cal.com or Google Calendar, it will automatically
send that email address. And if slot unavailable,
offer alternative time. Or some error handling, it is also added that this will be like
sort of conversation flow special interest and voice and timing
control everything. So let us give it a
go. Let us copy this. And paste it in our retail. Click on Save and
don't worry about it. This is not our final prompt. Feedfe Jim is okay. Let us ing the voice
first. Greetings. I'm Amritanshu. Your AI curator. Cra Hi, I'm Andrew. Your sturdy AI support
shouldering. Hello there. I'm Anthony. You Hey, I'm your virtual Hey, I'm your virtual
assistant from RetelliI here to help you
handle all the calls. Yeah. Let's use Jason. The model that we are
going to use is HGPTFo and the English will be in Indian because I'm Indian and my
accent will be Indian as well. Now let us cover the
part of functions. As you can see,
we have done with our initial prompt or the first draft, it
is not the final. Let us see the function rule. First of all, let us add the end call or
transfer call function. So we have the name
of the function, and let us give
it a description. End the call if all the
user query are answered, click on save, so it will end the call and not continuously
continuing the call. Otherwise, your
pricing will increase. Let us transfer
the call as well. So when the user is angry
or request a human agent, transfer to call
the human agent. So it will transfer
to this number. Feel free to add
your personal number or your customer service Ap. And then we have the type. So what is cold
transfer and what is warm transfer? Let
us understand it. So in cold transfer, it will directly transfer to our human or to our
customer service ap. Let's say the user
don't want to talk with AI voice assistant and it
will transfer to real human. To use some context or to give call summary of what
happened between our user, as well as our AI voice
agent or what they talk, we need to give that information or summary to the real human. We will use Word transfer. So AI will provide a debrief to the next agent after
transferring the call, and we can also use
displayed phone number, Transfer's phone number or
retails agent phone number. All, feel free to add
your number here lcceer. Yeah, it is that easy to create
these type of functions. Then let us add the function of check calendar availability. So as you know, retail EI is the only platform that has inbuilt calendar
booking platform. That's why we love
using retail EI inside our agency because
we don't have to create crazy automation in go
high level ormgdt com in order to just create simple appointment
booking chat booard. We can easily do that
inside this prompt and by using custom
functions in retail EI. So we are going to
use that as well as we are going to
use another function, which is book on
the appointment. So it will first check
the availability inside our cal.com and book the appointment if it is available inside
the current.com. So let us go to cal.com. Cal.com, if you haven't
heard about it, it is similar like Google
calendar or Calendly. So log in or sign up
with cl.com account. Yeah, we are going to do it
from scratch, so don't worry. Before we start building our EI voice agent for
appointment booking, we need to make sure that
our AIVoice agent or LLM knows the current date
and time. You might ask why? Because they are trained on hat GPT or AnthropicCloud model, and they are not up to date or they are not for
exact this moment. That's why we have to
give our AIVoice agent, current date and time
dynamic or custom function. So let us test this this is Alex from Fit Life
Gym Wellness Center. How can I help you today? Hi, Alex. I hope
you're doing great. Thank you. I'm doing fantastic,
and I hope you are, too. How can I assist you today? Are you looking to
book an appointment, or do you have questions
about our gym and services? Yeah, I just had
a quin question. Like, what is the current
What is today's date? Today's date is October 31, 2023. Is there anything
else I can help? Did you notice that it
mentioned October 31, 2023? Well, why is that? Because Jet GPT or Anthropilod was last trained
on that specific date. That's why we have to give
current date and time to our LLM or voice
agent so that it knows how to book an appointment
on the specific date. And don't worry,
it is nothing too crazy, nothing rocket science. Retail AI has this
inbuilt function or inbuilt dynamic variable of current time. It is
very easy to do. All you have to do is
write single line, get the current date and
time from this variable. Now, you will learn
something new. In order to create a variable, we have to use
double Cali brackets and we have to end with
double Cali brackets. Simply type current
underscore time. Let us save this. And now let us test our EA voice
agent again. Hi. Hi there. This is Alex from
Fit Lie Jim Wellness Center. How can I help you today? Yeah, can you tell me
today's of course. Today is Wednesday,
January 1, 2025. Is there anything else
I can assist you with? Yeah, thank you very much. Yeah, today is first January, and I'm shooting
on the first day. So as you can see,
by doing this, current detain time, it will
address today's detent time. But mind that this
current detain time that retail EI is built on American Time Zone or
New York Time Zone. Let's say I'm right now
based in India or ISD. So my time zone
will be different. So we have to specify that
in the prompt as well. Hi. Hi. This is Alex from Fit
Life Gym Wellness Center. How can I help you today? Yeah. What is time right now? The current time in
your time a zone, Indian Standard Time,
EST is Thursday, January 2, 2025 at 4:05 A.M. How can I assist you with
your fitness goals today? Time. So it's around, like 4:00 A.M.
Thursday January 2. Can you tell me
today's date in time? Hi. This is Alex from Fit
Life Gam Wellness Center. How can I help you today? Yeah, can you tell me
today's date in time? Sure. The current date and
time in Indian standard Time, ST's Thursday January 2, 2025 at 4:13 A.M. How else
can I assist you today? Yeah, thank you very much, Alex. I will see you later. Alright, so this
is how you convert current time or by default
time of retail EI, which is New York's
American Time Zone into your specific time zone. Now it's time to
build our appointment booking voice assistant. First of all, we need to check if there is
availability or not. We don't want to randomly
book appointment anywhere. Feet Life gym is open on
weekdays only not weekends. If someone is calling to book an appointment
on Saturday, Sunday, it will check there,
and it will say no, we are not open on weekends. Be as specific as you
like in your prompts, and you will have that
result or output. And we are open from and
mention your time zone here. Let us click S and let us add our first function
of check availability. And it is integrated
with cal.com. Trust me, it is very
hard to even create appointment booking chatboard
using another platforms. But by using retail, we can easily build
our calendar or our appointment
booking chat booard integrated by cal.com. So the name of the function
is check calendar avability. Description is when the user
asks for the avaibility, check the calendar and
provide available slots. We need to add our API key
from al.com and event ID. So let us go to al.com. Let us create new event so I want to start
it from scratch. Fit Life, gym
appointment, gym tour. Let us set the duration
for 30 minutes. Awesome. Click on Continue. Now, in order to get that
event ID or event type, you will be able
to find it here. So whatever the number might be, this will be your event type. Copy that, list it here and to get your API key,
click on settings. Click on API keys. Yeah, so there is
no APIKey here. Let us create a new one.
We will say retail, we don't want to
expire anytime sooner. We can save copy this API
key and paste it here. And we need to mention
our time zone. So if you are confused which
time zone you belong to, simply go to Worlds Time Zone
or Worlds Time Zone API. Go to list of all time zone, and the first link
will be Wikipedia. So find your time
zone from here. My time zone is Asia
Kolkata. That's it. That's all you need to
do. Make sure you get your EPI key and
event ID. That's it. In event, the time
zone is optional, but still we are
adding the time zone. Let us click on Sa.
Again, make sure that the availability is similar to what you are looking,
which is nine to five. And as you can see,
the time zone will be automatically fetch
from cal.com. So let us have at least
preview of it. Yeah, awesome. Let us change the
welcome message first. Let us test our agent now. Hi, I want to Hi. This is Alex from Fit Life
Gym. How can I help you today? Yeah, hi, Alex. I want
to book an appointment. I just want to visit the gym. Great. I'd be happy to help you schedule an
appointment to visit the gym. First, could you please
tell me your first name? Yeah, can you check the
availability first? Sure. Let me check the
availability for you. Could you let me know which day and time you'd prefer to visit? Our gym is open on weekdays from 9:00 A.M. To 5:00 P.M. IST. Yeah, let's do tomorrow. Got it. Let me check the
availability for tomorrow, which is Thursday January 2, 2025, between 9:00 A.M. And
5:00 P.M. IST. One moment. Good news. We have availability
tomorrow, Thursday, January 2, 2025, between 9:00
A.M. And 5:00 P.M. IceT. Awesome. We have configured our check Availability function, it is checking the avability
available in the calendar, and it is getting back
that information. So now it's time to book the
appointment in our calendar. So let us add that function. When the user asks to book an appointment, book
it on the calendar. Again, provide our APA
key and your time zone. Click on Save Now feel free
to add the knowledge base, but I'm not doing
in this lecture. Otherwise, it will make
this lecture very lengthy. It is configure other
option as well. We don't want any
background music. We don't want even channeling. Now we do need to get or retrieve information
in post call analysis. For example, we need to get
the name of the customer, their email address, and we want to store it
in our database. You can easily do that by
adding in post call analysis. So let us click on Add. So since we are getting the name of the user or getting
the name of our customer, we will select text. We will say user name. Description, make
sure you are adding sufficient contexts
or knowledge so that our NLM will understand what to retrieve or what to get out
of the post call analysis. Click on Save. Yeah, it is that simple to use
post call analysis. Similar goes for users email. Lastly, we need to get the fit next context or fitness goal. We can use selected for that because there might
be multiple choice. For example, get in
shape to gain weight, and we will add
the choices here. The first choice
could be weight gain, weight loss to stay fit. Click on S yeah. So this is how you can
add or this is how you can get the information
out of the call. Feel free to play around with
security setting as well. Don't worry about
webbook settings. We are going to cover that
in the next sections. Awesome. So we configure
our book appointment, and now we have like custom
function and press digit. As of now, let us, first of all, try with
book appointment. Let us check if it is booking the appointment in
this slot or not. Hi. This is Alex
from Fit Life Gym. How can I help you today? Yeah, Alex. I just want
to have a tour or I just want to come by gym and look if it is okay
for me or not. That's awesome. We'd love to have you visit and
check out the gym. Let's schedule a
time for your tour. Could you please tell
me your first name? Yeah, thank you very much. My first name is Manton. Great to meet you, Man tan. Could you also share
your email address so I can send you a
confirmation for the tour? Yeah, it's MontanP
037 at doridgmil.com. Thank you, Manthan.
Just to confirm, your email is Manthm 037
at directmail.com, right? Yeah. So could you share
your primary fitness goal, whether it's weight loss, weight gain, or general fitness? This helps us tailor the
tour experience for you. No, no, it's Manton
p037 at didgmail.com. Got it. Your email is
Manthm 037@gmail.com. Thanks for clarifying, Manthan. Now, could you share your
primary fitness goal, weight loss, weight gain,
or general fitness? This will help us make your
visit even more personalized. Yeah, I'm really looking
to gain my weight because if I eat too much or even if
I'm constantly exercising, I'm not able to gain my weight. At at Manton, weight
gain can be a challenge, but with the right guidance and plan, it's absolutely
achievable. Well, make sure to show you how Fit Life gym can support your
goals during your visit. Now, let's find a
time for your tour. Our gym is open on weekdays from 9:00 A.M. To 5:00 P.M. IST. Do you have a specific
day and time in mind? Yeah, I want to come by tomorrow around 10:00 A.M. Or 11:00 A.M. Something
like that. I'm not sure. Let me check if we have availability for
your tour tomorrow between 10:00 A.M. And 11:00
A.M. Good news, Manthan. We have availability
for your tour tomorrow between 10:00 A.M. And 11:00 A.M. Would you like me to book
it for 10:00 A.M. Yeah, please do. I'll book your tour for
tomorrow at 10:00 A.M. Your tour is all set for
tomorrow at 10:00 A.M. Manthan. I've sent a confirmation to your email, so
you're good to go. We're excited to have you
visit Fit Life Gym and help you on your weight gain
journey. See you tomorrow. Yep, thank you very
much. Have a nice day. Did you see it book the appointment with
our email address, as well as with the
recipient email address or the user's email address? We have the time zone here
and the meeting schedule. Yep, this is my demo email
address. Again, 10:00 A.M. It has booked that appointment. Let us go to Gmail and appointment book
successfully with Manan. Awesome. So that's
easy, that's simple. You can create open
mind booking chatbard inside retail EI,
by using cal.com. Now let us go to call
recording or call History. And this is where you will be able to see your
post call analysis. So as you can see inside custom, we have got the
user's email address, the fitness goal, and the name. Amazing. Like, I'm mind
blown by this technology. It can also act
as lead collector or lead generation
voice agent as well. This is our summary. This
is our entire transcript. Yeah, even if you see
in the transcript, it has mentioned Manthan not in the correct
pronunciation or spelling, but it will automatically adjust it in the
post call analysis. As same goes for
the email address. And we have mentioned to
always give information back about the email address because email address
is very critical thing, even sometimes humor mess up when they are taking
note of email address. So EI is not likely to
make so many mistakes, but sometimes it can happen. We are always prompting that always confirm the
email address. Awesome. Now, it
did ramble a lot like our LX or our Avoice agent
was continuously talking. So we can say in the prompt. Do not ramble too much. Don't tamble wait for
user response as well. Even we can add that wait for
user response input here. So go back to our prompt guide, wait for user response. Copy this. Let us paste it here. Same goes for the first name. Similarly for
Availability management. Now let us check
another scenario where the appointment
is already booked, if it is still booking
the appointment or it is redirecting to
alternative options. Hi. This is Alex
from it Life Jim. How can I help you today? I really want to gain weight. I'm really struggling
in that part. You're not alone in this
journey, and I'm here to help. Gaining weight in a healthy
and sustainable way is all about combining
the right nutrition, strength, training,
and consistency. At Fit Life Gym, we
can guide you with personalized workout plans and nutrition tips tailored
to your goals. Would you like to book
an appointment with one of our fitness consultants
to get started? Yes, so I can help you schedule a time
that works for you. Yeah, why not? Let's do it. Awesome. Let's get started. Could you please tell
me your first name? Yeah, it's John. Great, John. Could
you also share your email address so we can send you the appointment
confirmation? Yeah, it's Manton
p037 gdorgmil.com. Thanks, John. Now, let me check
our availability for you. Since today is Wednesday,
January 1, 2025, and our gym is open from 9:00 A.M. To 5:00 P.M.
IST on weekdays, let me find a suitable
time slot for you. Hang tight. It seems like the time range for
today has already passed. Let me check for availability
tomorrow, January 2, 2025 during our operating hours from 9:00 A.M. To five PMS. Hold on. Thanks for waiting, John. For tomorrow, Thursday,
January 2, 2025, we have availability
from 9:00 A.M. To 10:00 A.M. And from 10:30
A.M. To five PMS. Which time works best for you? Yeah, so that slot is not open. I really looking forward
to meet at 10:00 A.M. Got it, John. Let me book your
appointment for 10:00 A.M. Tomorrow, January 2, 2025. One moment while I
confirm that for you. It seems there is an issue
with booking the 10:00 A.M. Slot as no available consultants
are free at that time. How about we go for the
next available slot at 10:30 A.M. Let me know
if that works for you. Yeah, why not? Let's do it. I will adjust my schedule. Booking your appointment
for 10:30 A.M. Tomorrow, January 2, 2025. Hang tight. Your appointment
is all set, John. It's scheduled for 38. Thank you very
much. Yeah, did you see it ramble a lot here? And it mentioned this time in Pacific Time
and not ISD Time. So we will adjust
that in our prompt. The main goal of
this lecture was to get you know how you
can use vital EI pluskal.com integration
so that you can create appointment booking chat or appointment booking
Voiceboard very easily. It did book an
appointment for 1030, as well as let us go
to post call analysis. Even you can see
the user sentiment, call status, call success ratio, latency, our name of the user name was Sean
fitness goal was Wed gain. So as I mentioned, the wed gain part at the
starting of the conversation, it didn't ask again. You can see Ave agent is just
not a robocall IV thing. They are actually
intelligent and smart, and they know how to
handle objection, manage the conversation flow, and ask for specific things that we have mentioned
in the prompt, as well as the user email. Yeah. So that's pretty
much all for this lecture. I hope you found this valuable. Feel free to try
with your time zone. Feel free to try booking appointment with
specific use case, feel free to rewrite
your prompt. But I hope you understand
L by using AI, we even refine the
prompt like furthermore. So that's the beauty of using
AI to create the prompt, as well as AI to make
the phone calls. Alright, that's
all from my side, and I hope you to see you in the next lecture. Stay blessed.
10. Outbound Calling with AI Voice Agents: We will add the first name. So as you know, we can create dynamic variables by
double curly brackets. Now when the speaker will say, you are speaking with Manan, then the user will speak, you are speaking with Manan. Then it will say, I
know I'm calling after W because it is a cold
call, so I will be brief. Do you have the
movement to discuss a unique opportunity of
vending machine in front of your lead gen Man shop or any shop name that is
in our Google Sheet. All right, I hope
this makes sense. This is as simple
as I can explain. Now let us check the
remaining call flow. Here, let us add a pause before we move ahead
with the script. We can say wait for the user response because
here we are asking, do you have a moment to discuss a unique business
opportunity for vending machine in front of
our prospect shop? They might think, do I need
vending machine or not? That's why we have to pause our AA Voice agent and not to remember along with
the following script. Wait for user response. Free to add this type of
pause if you are convenient, or if in testing, you might find out the EA is speaking too fast
or too continuous, feel free to add
this type of word, which is wait for user response. Then if they agree to listen, we will say great. Thank you. And you can also add
personalization, thank you, first name,
or thank you Manan. Or thank you VNC or thank you Ben I will see
from this list. Flux vending machine
offers unique opportunity. We are not talking
about snacks or soda. We're talking about let's
say gummy bear and toy cars. I will say, does this
type of opportunity sounds like something you might be interested in
learning more about? I will take a pause
here and it will gauge interest with
a different tone. Again, we will going
to say wait for the user response because
we are asking the user, does this something align with a vision or with your goal? And if the user is interested, we will proceed to
appointment booking with our customer service. Writing this prompt with AI
so that you don't have to. Scheduling if prospects
is interested. If you like, we can
schedule a call with one of our business consultant who
can provide more information. Would you be interested in that? If our prospect or
user is interested, we will start with
appointment booking. Collect essential
information if not. Already have their
first name, but we do need the email address. For instance, sometimes
if you're scraping leads, you don't have owner's name, that's why we are using
this and avaibility. Check for calendar availability. Again, wait for user response, I slots are available, send confirmation, and if
not, offer alternative time. This is error handling. If something is not
properly clear or unclear, politely ask for clarification. Lastly, we can add what type of voice motion or voice
control it should have. But before that, if
prospect is not interested, we will end the call politely. Call in if prospect
does not show interest. Thank you for your
time. Have a great day. I user does not
have any equation, we are going to use
our call function. Let us add our call function because we have mentioned here. Do mention here,
otherwise, A won't know. Awesome. We have to add bunch of functions
because we are using check availability
book availability as well as we have to add that current date and time because LLM don't know what
is today's date and time. For instance, let us save this because we have
already tried it, and yeah, this is a
feature of test LLM. For instance, if
you don't want to waste your money
on testing audio, you can always use LLM and
you can always chat with it. For example, we'll ask what is today's date and time to be
honest, it is very fast. If we are using test audio, we have to wait to get
entire conversation. You can say I don't have
the real capability, so I cannot provide the
current date and time. That's why we have to add
that make.com scenario of cat date and time so that you can book a permit
in your time zone. Not to forget you can always use inbuilt feature or
inbuilt dynamic variable, which is current
time by tail EI, but as we are based
in another time zone, apart from Los Angeles America, we are going to use
me.com scenario. Let us start. What we had was
webooks, custom webbooks. Let us add one date and time. Copy this URL. Let us go back to retail, and we will add in
custom function. So we are saying date and time, this is our name
of the function, get the current date and
time when the user ask. And here we will past
our WebookRM from mid.com and let us enter our
parameter or Jason Schema. This is the one that we have pasted from the last lecture. So go to last lecture, or even I will add that in the resource section, so
make sure to check it out. Simply it is getting the current data time from the location. In our example, Kolkata
and speak after execution. Click on Save Alright, we have added in function, but we have to call
it in the prompt. Otherwise, it won't work. So let's use get
the current date and time invoking this function. Make sure the function name is the same as we have used here. Otherwise, it will get confused. Now let us click on Save. But if you're
confused, how do you come up with parameter
or JSON schema? Simply go to hachPT or Cloud
to get this JCN schema. Let us ask our LLM Again,
the same question. Now let's see this time, is it able to retrieve the
current read and time? Oh, sorry, we have
to add ad here. All right, as you can see,
successful determine. Now we have to set a tool in order to format our dat and
get current read and time. Let us set the variable, again, let's say, date and time. Make sure the upper
case and lower case is similar to the one that
we are using here. As you can remember
from the last lecture, we are formatting the
date in current tent. So in mein.com, they have
this inbuilt feature of now, so it will retrieve the current
date and time from here. And we are formatting
in year's month date, and my time zone
is Asia Kolkata. So simply use your
time zone here. That's it. That's
all you need to do. And we have to send this
response back to our retail EI. That's why we are going to use webbook and webbookRsponse. The name suggests like response, so we have to send that
response back to our retail EI. Yeah, date time
close the calibrat. We will add the date and
time from set variable. Okay, first of all, save it. Otherwise, it won't
run immediately run this scenario when
this function trigger. Okay, let us rename
this outbound lecture. Yeah, I will add that in the
research section as well. Now let's ask this question. Awesome. So it's fourth of July and time is around 3:42 A.M. So let's check that.
Yeah, it's 3:42 A.M. Fourth of July 2025. Yes, I'm shooting at night. I don't have live. Yeah, so let us move forward with
booking appointments. First of all, we have to check availability in our calendar. So let us go back to cal.com. I have created a new event, so get the event type from here. Simply copy it, past it
here, and the time zone. My time zone is Asia Kolkata.
Again, it is optional. You can also find
your time zone here. Click on SEO. Yeah, we
need to add the API. So go to settings.
Click on API keys, copy your API key from here and paste that in
our retail function. I will paste it here. Same
goes for booking appointment. Click on SO Awesome. So we should now check avability and book
the appointment. Let us configure the
welcome message. So we have three options. We are going to use
this same line. Don't worry. I won't
say the first name. I will say, am I talking
to Manan or whatever? A prospect name is
in Google Sheet. You can use to be
honest Air table, go high level Hubspot, whatever CRM solution
that you are using. Awesome. Please configure
this speech setting as well as call setting as your preference
or your liking. I'm doing this very quickly because we don't want
to waste time here. Now, let us configure
the post call analysis. For example, here we
will add the element of, does this prospect need a
vending machine or not? Does he or she has booked
the appointment with our AI Agent or with
our SDR or media, we'll add all of
this information. For example, we
can say yes or no, so we will use Wollon. We can use this as well
like the default one. Let us screenshot,
let us copy this. Did the user book an appointment or not? Appointment book. Another one might be
N vending machine, we can say did the user want vending machine
or not. We can save. You can also create as many post analysis retrieval
that you like. For example, a detailed summary, you can see detail
detailed call summary of the call, everything
that you like. But let us take
these two example. Awesome. Now it's time to add the webbookRL from make.com. So we are done with
our data and time, so don't worry about
it, leave it always on. Now let us create a
scenario that will take the outbound call from
Retail's API documentation. So click on new scenario. Save this, create
a new scenario. Now we are not going to use any Webookse you might recall, we are using web
Books from every single one of our
mad.com scenario. But for this cold calling
system or ADON system, we are not calling
inside our retail EI. We are using EPI documentation
or retail documentation. So let us go to retail and
click on documentation. It will open
something like this. Don't be afraid it is very easy. Simply click on API
reference because we have to make a call
in backend system. We cannot make a OO call here. Yes, we can make
that outbound call, but it is only limited
only to one phone number. That's why we are leveraging
EPA documentation. So go to Relate phone number. All right. So make sure you are in this tab and we have this code and
everything. Don't worry. Vital EA makes this outbound calling system
very simple for us because it has all
this no code tool and we don't have to
type in any code. All we have to add
is our variable. For example, let us delete
the Bar key as well. So first of all, we need to
add our authorization key. So click on authorization
and add our Bar key. So let us go to Vital you
will find your EPIK here. Click on EPIK, let
us create new one. I'm using my old EPIK, but if you don't
have any APIKey, please create one
and paste it here. Then under body section, we want to know which number we are using from Outbound call. So as you know, let
us go back to retail, we have these phone numbers. So which phone number that we want to assign this
outbound call to. So first of all, assign the outbound call to
flux vending machine. Otherwise, it won't work, and then copy the number. That's it. Copy and paste it from here. Again, make sure the
country code is added, as well as the plus sign and which phone number that
you want to call to. For example, I'm adding
my phone number here. So I will bra my screen, but it is simply plus country
code and your phone number. Then override agent ID. So what does this
override agent ID means? Which agent ID or which Evoe agent will override
this phone call. In our example, we are
overriding by this example, which is flux vending machine. Simply copy this agent ID. This is the agent ID, click on copy and then paste it here. Simple as that,
nothing too crazy. Now we need to add
our dynamic variable. For example, we need to add the first name
of our prospect. We need to know the shop name. That's why we are
going to simply add this dynamic variable. Feel free to add as
many data points as you like for personalization. But in this example, click on this plus and the name of the new
property, which is, let's say we need the
first name, clic on Enter, and then let us
use any demo name, for example, man like
a just for demo. Don't fort about it. And then
let us create another for shop name because we want to retro this information
during the call. In my example, let's say
lead gen Man, that's it. Yeah, you are good to go.
That's all you need to do. Awesome. So we have this
data from number two number, overd agent, retail LLM dynamic variable,
everything here. So let us go back to
our make scenario. Image.com, which will
be our first model or first node that we are
going to use to make call, take a pause and
think it through. The answer is obviously
Google Sheet, because we need to first of all, retrieve the phone number. Phone number is everything here. If we have everything,
let's say first name, last name, shop name, everything, but if we
don't have phone number, how are supposed to call them? So we will first of all, get that phone number
from Google Sheet. Therefore, click on Google Sheet and what we are doing here. We are searching for a row to find out their phone number, and if that phone number
is left to call or called. So we are searching, obviously, we will select search Euro select your account,
select your spreadsheet. In this example, I'm using
this flux vending machine. This one. Obviously sheet one, and we have to put a filter. Which phone number
we want to call. In our example, we
only want to call those numbers whose status
is left or yet to be called. So we have to select the column name here,
which is status. We are looking for status only, and simply type left. Yeah, that's it. Click on Okay. That's all you need to
do. Again, I will repeat. So left is our trigger word. So in Google Sheet or in
atable or in Hubspot, those prospect who has
this trigger word will be called by using Avoice agent
that will do cold calling. All that's easy as I can put. If it is like call, it will not call this phone
number. On Okay. Make sure to save this
first of all, Save anyways. So sometimes this will
happen like it won't save. So again, click on Okay, yeah, you can see that one just went. Again, click on save. Let
us name this as outbound, one outbound lecture,
part one, click on save, and let us run this module so that it will have
all the information. As you can see, in the bundle, we have Patil Man and the name, everything for three bundles because right now
we have three rows. Alright, nothing crazy. And then we need to aggregate or collect all of
this information. In just one bundle. So
we will use aggregator. Again, as the name suggests, we need to add all of this
information in one array. So we will select
all of this field, phone number, last name,
first name, everything. And lastly, we need to make a phone call by using
this HTTP post request. So as you can see, here
is the post request. Let us go back tomg.com and
we have to make an HTTP post. So clic on add a
module, click on HTP. Again, nothing too
crazy if you're not techie person or tech savvy, still you can easily connect your EI voice agent with
a cold calling system. So what we are doing is we
are making a post request. That's why clicon make a post. As the name suggests, always go with the name and you
will be good to go. Here we have to add the URL, the method, as you know,
the method is post. We have to select
the post method, and this is our URL,
simple as that. So copy this paste our URL here. And instead of Get we are posting or we are
calling SclconPost. Now we need to add the headers. You can see these are headers, which is authorization
and our key. So Clicon headers,
copy authorization. And in value, we simply
have to add this, which is bearer and your APK, Bearer space APK, that's it. Now, as you can see, this code is in JSN or raw code. We are going to select
the body type or raw and content type, which is JSN
applications less JSN. Nothing too crazy,
just follow what I'm doing here and the request. We have to send
the request first. You have to send
a request first. So let us click
consent and you will receive the phone number
that you have added here. This is just in dimo call. Don't worry. Let
us click consent. First hide my phone number. When I will click on
this send button, I will receive a phone call. Again, nothing too crazy,
just in demo call. Yes, we have 201 created.
That is successful. Chet whatever you like. Hi, this is Linda from
Flux bending Machine. Am I speaking to Mangan? Yes, you are speaking to Menten I know I'm calling out of the
blue, so I'll be brief. Do you have a moment to discuss a unique business opportunity of vending machines in
front of Legaman? Yeah, as you can
see, it replaced my first name as well
as my shop name. Thank you very much, Lisa. Have a nice day. Yeah,
that's all you need to do. I will put my phone aside. And, yes, we have
successfully connected our EI voice agent with Outbound system or
with your cold call. Or we need to add the code here. Copy after the calibracet. Make sure you are not
copying that quotation mark. Same goes for the adding. Don't copy this and don't
copy this quotation mark. Just cali brackets. That's all you need. And
paste here. Alloy, that's it. Now click on Okay. Don't worry. We will replace the
phone number from here. So it will take every
single new phone number from our Google Sheet, as well as it will change
the name and the shop name. But as of now, let us
click on Okay, save this. Awesome. Now let us have a call again so that it has
all the payload and all the knowledge that we have been talking about
in the call conversation. Save the scenario, and once you click Run once you will
receive a phone call. Hi, this is Lisa from
Flux Vending Machine. Am I speaking to Manton? Yes, you are speaking to Manten. I know I'm calling out of
the blue, so I'll be brief. Do you have a moment to discuss a unique business opportunity of vending machines in
front of Lee Gen Man? Yes, I do, actually. I really want to buy vending machine
in front of my shop. Great. Thank you, Manthan. Block vending machine offers a turnkey business opportunity. We're not talking
about snacks or sodas. Our focus is on high
demand products like gummy bears and toy cars. Does this type of
opportunity sound like something you might be interested in
learning more about? Yeah, please, please. I do. That's wonderful
to hear, Manthan. If you'd like, we can schedule a call with one of our
business consultants who can provide more
detailed information and guide you
through the process. Would that be of
interest to you? Yeah, let's do it. Let's book an appointment.
Alright, Manthan. Today is January 4, 2025. Could you let me
know a date and time that works best for you to
schedule the appointment? Yeah, let's do, can you
repeat today's date and time? Sure. Today is January 4, 2025. Current time is 4:08 A.M. Let me know what date
and time works best for you. Yeah. So let's say
let's do on Wednesday. Let me check the availability
for next Wednesday. Next Wednesday, January 8, 2025, we have availability
between 9:00 A.M. And 5:00 P.M. What time within this
range works best for you? No, no. Let's do on seventh
or on next Tuesday. Let me check the availability
for next Tuesday. January 7. Next Tuesday,
January 7, 2025. We have availability
from 9:30 A.M. To 10:00 A.M. From 10:30
A.M. To 5:00 P.M. Which time slot
works best for you? Yeah, let's go for
3:00 P.M. Got it. Let me book the appointment
for you on Tuesday January 7, 2025 at 3:00 P.M. Could you please confirm your email address
for the booking? Yeah, it's Manton p037
at door gmail.com. Booking your appointment
for Tuesday January 7, 2025 at 3:00 P.M. You'll receive a confirmation
shortly. Your appointment Successfully booked
for Tuesday January 7, 2025 at 3:00 P.M. You'll receive a
confirmation email shortly. If you have any other questions,
feel free to reach out. Have a great day, Mappin.
Have a great day, too. Bye bye. Did you see book the
appointment successfully. All right, so we
have configured with our appointment setting or
our appointment voice agent. Now it's time to connect
with our post request. As you can see, we are going
to have this output awesome. So it has his first name, last name, everything from here. Now, we need to replace
the variable or we need to add that mapping film
from our Google Sheets. So let's map all this fill. First of all, the phone number
will be the default one because it is the one that
we are using from retail AI, but we will change
the phone number. Why? Because we are
always going to change the phone number
in our Google Sheet. We are not going
to call the same prospect again and again. That's why we have
to add the dynamic or we have to add an
ever changing fill. So click on As you will
see a bunch of things. So we need to select
the phone number. Keep the agent ID as it is. Then the first name
will be also changing. Same goes for the shop name. Awesome. That's all you
need to do, to be honest. I will be providing this
in the resource section, so simply change with the phone number in
your Google Sheet, the first name, last name, and change the
from phone number, which is your retail
EI phone number here. Awesome, that's
easily I can put, as well as change
your agent ID here. Simply past that AGI ID.
That's all you need to do. And then click on
Okay. Now click on. Save perfect. Congratulations. You have set up
your Avoice agent that can do cold calling up 50,001 leg or two leg or 10 million
call calls as well. But we do need to make sure that we are updating this field. For example, if you're not
updating from left to call, how are you going to know
that our Air cold call has called this prospect or not? That's why we have
to update this row or update this field
from left to call, so we need to add
another scenario. This scenario is done. Don't
worry about this scenario. This scenario is
complete and successful. If you are going
through all of this and getting the phone call,
you are good to go. Now it's time to
update the field. We have to update
from left to call, as well as we have to fetch
all of this information. In example, post call analysis, we need to get the call
transcript call summary as we have said that
post call analysis, we will add those
specific thing in that. Does that prospect has booked
the appointment or not? Does he or she need
a vending machine? Everything in the CuCl sheets. All right, let us
create a new scenario. We will name this as
outbound lecture part two, and here we have to add that Webook URL or we have to
call our retailed EI agent. Click on Webbooks I will not only show you how
we are going to do that, but I will also explain
why we are doing this. First of all, let
us add the webbook. You might ask why we are
adding the Webbook here. We already have this Clemail
automated system in place. The reason is we have to add that in agent label Webook URL. Example, if you want to post
or if you want to retrieve anything from the call
conversation or from retail, we need to add that
weboqRL ofmail.com or any automation platform
that you are using and post that information to
elsewhere that you want to go. In our example, we want to add all of this information
in Google Sheets. That's why we have to
add that Webo QRL here. All right, I hope
you understand it. So first of all,
let us add a Webo, let's say outbound cool
call two, since part two. And now here's the tricky
plot again, again, again, stop this,
just copy this. And paste it here, but don't click on restructured
data structure until you test
within your agent. All right. So let me show you how you
are going to trigger. I'm going to show you
how you can trigger this webbookOce we have activated
our outbound system. So click on Run once and you
will receive a phone call. So once you receive the
phone call, accept it, and then and then only click on this redetermined
data structure. Otherwise, it won't trigger. So yeah, we received
the phone call. Hi, this is Lisa from
Fox ending machine. Now, click on Redetastructure. Awesome. Yeah, you are
speaking to Manton oh, I see. My apologies for the mixup. May I know your name, please? No, no, you are
speaking to Manten. Thank you, Man Peng. I know I'm calling out of the
blue, so I'll be brief. Do you have a moment to discuss a unique business opportunity of vending machines in
front of Legend Man? Yes, I do. Great. Thank you, Man Peng. Plus, vending machine offers a turnkey business opportunity. We're not talking
about snacks or. No, no, I am man
like gummy beard. I'm really interested. Yeah,
I'm really interested. That's fantastic
to hear Man Ping. This opportunity is all about high demand products like
gummy bears and toy cars, which can generate
substantial passive income. If you'd like, we can schedule a call with one of our
business consultants who can provide more
detailed information. Would that work for you? Yep, that will work. Perfect. To get started. Could you please share
your email address so I can confirm the
appointment details for you? It's Manthan 2024
at dodgmail.com. Thank you, ma'am Peng.
Just to confirm, your email is month 102024
at utnail.com, correct? Yeah, it's atgmil.com. Got it. Thank you. Now,
could you let me know a date and time that works best for you to schedule the call with our business consultant? Yeah, let's do next
Wednesday at 10:00 A.M. Check the availability
for next Wednesday at 10:00 A.M. Great news. Next Wednesday at 10:00
A.M. Is available. Let me book that
for you. It seems there was an issue with the
email address provided. Could you please confirm
your email address again so I can ensure
everything is correct? Why not? It's ANTHAN
2024 at dort gmail.com. Thank you for
confirming. Let me book the appointment for
next Wednesday at ten next Wednesday at 10:00 A.M. You'll receive a confirmation
shortly. Bye bye. Yeah. So we have booked
the appointment. We are booking so
many appointments. The case was we need
to successfully determine a webbook or
trigger a webbook here. Since we have died our
agent label webbook, we need to first of
all, trigger it. And it has successfully
determined. Again, click on that run once, and then and then only click on that redetermine data structure. Otherwise, it won't work. Click on. Okay, now
what we need to do? We need to first of all, update this field from left to call. All right, so click
on Google Sheets. First of all, we need to
find that phone number. We don't want to randomly update on any particular
phone number or leads. We will have to first of all, find that particular
phone number that we will receive
from Retail EI, or from that particular number that we have done cold call. Click on Sheet one,
and we have to filter. Phone number is equal to the particular phone number
that Retail AI has call. So click on that and you will able to see
two phone number. So select that. Click on Okay. Again, if this one thing
pops up, it is not selected. Click on. Okay.
Yeah, now it's cone. So make sure that these are the things that will
keep you up at night. And now what we are doing is once we have filtered
that particular phone, for that particular
phone number, we need to change the
status from left to call. So now we will update a row. We are not searching for it, we are updating a
particular row. Select your Google Sheet, and we need to update. So first of all, let us add all the dynamic variable or post call analysis that
we want to retrieve, which is N vending machine. As you might know, we have
added those in post retrieval. Similar for appointment book. And these options
are yes and no, because we are using Boolean. We are using Boolean. Same
goes for vending machine. I'm just giving them a label. Do it worry. Feel free to
use any name that you like. Then we need call summary. You can also add call
transcript if you like. Call cost anything. But as of now, let
us keep this thing. So again, click on Refresh. Sorry. And now has
all of these columns. So we don't need to
change any of this thing. All we need to change
is the status. The status we need to change
is from left to call. All right. So next
time it will call this prospect and the call
conversation is finished, it will change the status
from left to call so that it won't call that
prospect again and again. And we're not annoying anyone. Now need a vending machine. So as you can see,
there are no Answer or no bundle available. I will show you. So there has to be some word here
like row number, which is two, but it
is not appearing, so I will show you
how you can fix that. As well as we don't have
that encall analysis here. So you will able to find under call the last or
last second thing, which is encall analysis. So again, it has not triggered
the Webbook perfectly. Yeah, also, we need to
select the row number. The row number is from here, but right now we
don't have anything. So again, click on select, click on Save and how you're able to find out
all of this information. For example, we need
to first of all, get all of this information, pass from the first Google
Sheet to the second. That's why I click on Right click and run this model once. Once we run this model once, our last Google Sheet
will have information. So add the phone number, add the phone number, and
then click on Okay. As you can see, it will
run it on your own, and we will get
the phone number, the shop name, everything. And if we click on
this Google Sheet, you can see all of the
data fields will populate. So we need to select
the row number. It will automatically
update the row number. Same goes for yeah, still, we don't have that
end call analysis, so we have triggered
the phone call again. So continue as of now. We need that end call analysis, as well as the call
call transcript. As you can see, we are not able to find out the call summary, so we don't have triggered that particular
agent level web of RL from retail EI successfully. We will be able to
find the transcript, but not the call summary or any of these post
call analysis data. So what it says that it has
not been actually triggered. So click on this,
run the module once, click on Save and
click on once now. It will automatically still
missing one point here. So once we pick up the call,
boom, within microsecond, it will run this scenario
because we haven't added that filter
of call analyse. So it is using the filter
of call stated only. You will be able to see. Yeah. A. Just in a second,
it has ended this main.com scenario.
We don't want that. We don't want this event to be happening, which
is call started. We want call analyze. Basically call analyze is end of the call report or after
the call has been over, then then only it will pass the variable data
to Google Sheet. That's why we are not able to find out that end call analysis, Gotcha, or any kind
of this extra field. For example, call summary, we are not able to find out here because it is not stopping. It is just after picking up
the call within microsecond, it is completing this main.com scenario and not waiting for
the call to be finished. Even if you open the call, you will see call status
was still ongoing, but it has ended this
make.com scenario. So let us set up the filter
to avoid this issue. Again, if you're not understanding
it, rewatch it again. You will understand
it. Call Analyze. The event we want to
trigger is you can see right now it is triggered like call started.
We don't want it. We want call Analyze.
Click on Okay. Yeah, click on Save. Let us come back. Make
sure it is always running. Let us delete old data. We want to start it from
fresh and click on W Oce
11. Automating Phone Calls with AI and No-Code: Latest delete old data. We want to start it from fresh and click on Wen
Vince, and let's see. It was late, but it
was on the time. Hi, this is Lisa from
Flux Bending Machine. Am I speaking to Manton? Yeah, you are
speaking to Manthan. I know I'm calling out of
the blue, so I'll be brief. Do you have a moment to discuss the unique business
opportunity of vending machines in
front of Lechenman? Yeah, why not? Great.
Thank you, Matin. Flux vending machine offers a turnkey business opportunity.
When you're talking? Yeah, it is. No, no. This is on high demand products. I don't actually want to have vending machine
in front of my shop. Alright, have a nice day. Don't call call me.
I'm very busy person. Yeah, so let's end
the call reducing. Now it will tiger the
entimk.com scenario. That's the beauty
of this filter. If you are running without using this filter,
it won't work. So let us go and let
us see the output. Alright. We still don't have
enough information, I guess. We need that. Yeah, you
can see the event is call analyse and we are
able to find out that end call analysis
that I was talking about, which is the custom
end call analysis. And as you can see, both are false because on the
call I mentioned, I'm not looking for
any appointment as well as any vending machine. Now, you will be
able to find out, or you will see the
things will be populated. First of all, the
call summary. Yeah. Now, just rewind that video. There was no call analysis. All right, so it is so
important to do it in this way. So from call analysis, we will use call summary. And for this custom post
call analysis data, click on Custom Analysis. Need vending machine,
and appointment book. You can also use it from here. Under data, but as of now, let us use it under call. Both are similar thing,
don't worry about it. Then lastly, we need to
have call transcript. You will find it here. Awesome. Congratulations,
guys, you finally did it. Now our cold call
is bulletproof. As you can see, it has already
changed from left to call. So if we trigger
this automation, we will run into error. Yeah, obviously,
because there are no left field which is not call. So if we change to left and even we can change
the name as well. Awesome. So if we run once, I
should get a call. Yeah. Hi, this is Lisa from
Flux Vending Machine. Am I speaking to Lee Jen Man? You are speaking to Le Jen
Man. Great. Thank you. Flux vending machine offers a turnkey business opportunity. We're not talking
about snacks or sodas. Our focus is on high
demand products like gummy bears and toy cars. Does this type of
opportunity sound like something you might be interested in
learning more about? I really like the
idea of gummy bear. That's fantastic to hear. Gummy Bears are
definitely a crowd favorite and can attract
a lot of attention. If you'd like, we can schedule a call with C
business consultant. Provide more
detailed information and guide you
through the process. Would that be of
interest to you? No, I don't want to book any
appointment with anyone. I am very busy. Have a nice day. I purposefully did
that. You can see. It has updated. The status just changed from left to call. The prospect needs
a vending machine. So for that, it is true, but he or she doesn't want
to book an appointment. That's why it is false. This is a call summary and
the call transcript. Congratulations, guys. You've built an entire
EI call calling system. You can make 10,000,
20,000 calls, add them in this list and your EI voice agent will
continuously call one after. You want to see how
it will shuffle from first phone number to second to third, I will show you how. So let us delete all of this thing or we can
leave it as it is. It will automatically
update. You will see. This time, let's say, part and I will add my
phone number here. All right, so we have added
the second phone number, and in the first phone number, we have changed
from call to left. Now we have said
trigger of 50 minutes, but we can limit to,
let's say, 1 minute. After waiting for 1 minute, our AI Voice agent will call this second phone number in our Google Sheet or in your CRM. As you can see, I just got a
call, let us take that call. Lisa from Flux Vending Machine. Am I speaking to Lee Jin Man? No, no, no. You're not
speaking to Lead Jin Man. Oh, I see. My apologies for the mixup. May
I know your name? No, it's Manton. Thank you, Mountain. I know I'm calling out of the
blue, so I'll be brief. Do you have a moment to discuss the unique business
opportunity of vending machines in
front of Flux Fortify? No. You are calling
the wrong person. For your time. Have a great day. Did you see how it easily
cut the call after finding out the prospect or
Vice agent call was wrong? Let's wait for the second
phone number to be triggered. So we have set
this for 1 minute. To summarize, until
we wait for the call, we have two automation
in m.com scenario. First, for triggering
our cold calling system. If you don't want to even use the second one,
that's totally fine. But I do recommend that because you need to have
a visual view of the successful
ratio or how things are moving in your
cold calling system. So by using Google Sheet, we can easily see like prospects are willing to invest
in vending machine. They are booking an appointment or are they interested or not? By using the post call tivals. All right, so it is waiting
for new row to be added. So just after someone add a
new row in this Google Sheet, it will trigger that call. So I will just copy and paste it the same information down. And now after 1
minute, it will call. You can say I received a call. All I'm not going
to pick up the call and waste your precious
time, but I hope you got it. And once again, congratulations. You build this entire cold
calling system on your own. Now we have like
we are legend at outbound call and
doing cold callings. We need to focus more
on inbound calls. So whenever some
prospect is calling us, we need to make sure
that we know their name, we know their top
name, everything, even the call summaries
from the past conversation. Let's say you have
a huge dataset. Let's say you have 50,000 phone numbers or your contact
list in your CRM, and some of the customer
is calling back to you and EI Voice agent
is picking up the phone. So we are not seeing out
of the blue, who are you? Who are you calling to?
We will add that all of the personalization in
inbound call as well. Like, Hi PRU, how things are going at acquisition
X. I will have all the knowledge and
contexts as well as it will also have the knowledge
of the past call summaries. Bye bye, TK and I will
see you in the next one.
12. Mastering Inbound AI Calls: Adding Personalization: After making dozens of Air voice agents and making
thousands of AI calls, what I found out was people
love personalizations. For instance, if you're calling Avoice agent again and again, and every single time, it
will ask, what is your name? What is your company name. You will get frustrated
and people will find out that they are talking
to AI and not human. That's why we have to add
that personalization. For example, if we are calling our Air voice
agent for the second time, they should know our
previous call summary, they should know our
first name, what we do, any data points that we have collected from
the first call. That's what we are going to
build in today's lecture. We are going to build
inbound calls that will have all the personalization,
all the contexts, all the knowledge
information that we have feed into our CRM or
into our Google Sheets. So let us get started. Yep,
we are back with our board. So we have built our outbound
call in the last lecture. We have built customer service rep appointment
setter, character. The one missing piece of the
puzzle is inbound calls. So lets get started
building inbound calls, and we will have this
whole picture of one AIoice agent that can do everything. So lets go start. Let's not build AI voice
agent from scratch this time because we already
have the prompt ready, all the configuration. We already have set
up the Agent level Webo QRL which is our
post call analysis. So I don't want to
waste your time, and I want to get straight into setting up our inbound
voice assistant. I want to cover about
inbound call Webo QRL. So this is the webbook that we will be giving to retail EI which has access to all of
these past call summaries, the user name, the user email, the fitness goal, whatever data point that you have in your CRN. Well as, for example, if
you have entire list or entire lead list containing the phone number,
the first name, last name, title or any data
points that you want to add into your Avoice agent and feel it like, these
are the information. So whenever someone calls, for example, whenever someone calls with this phone number, it should have this person
name, this person title, where they are working
from where they are based from everything, our Avoice agent should
have a knowledge. So I'm going to show
you how you can set up those type
of Avoice agent. So let's go back to retail. First of all, we have
to set up the Webo QRA. We have to give all of this
information to retail. So how we are going to do
that by using med.com. Obviously. So let us set up a whole new scenario.
Nothing crazy. We have to set up
a webbook first. Why webbook Because
we have to add the Webook URL to give these
data points to retail EI. So let us set up a webbook. This is new scenario.
I have nothing here. So we are going to build
this from scratch. We are going to select
Custom WebbookTs time, let's say, Inbound
gym Assistant. Click on Save. Now copy
this URL and paste it here. All right. So click on stop, click on Okay, click on save. Let us rename this as So this is our outbound
webbook assistant, and this is our inbound, so all in one solution. Next thing we need to
do is we need to set up our phone number
that we have bought from Twilio or from Retail AI. We have to set lead
up this voice agent as our inbound call assistant. So I will show you what
I'm talking about. When someone will call
into our phone number, we need to, first of all, set
up this inbound call agent. So we will select
our gym assistant. Alright, so this is
an important step. Otherwise, it won't work. Now it's time to trigger our
data structure in Webbook. Alt, so call your EA voice assistant with the
number that we have set up. Click on Red Determine
data structure and then call the phone number. Successfully determined. All right. Geek on okay. Let's go back to VTL. Awesome. We have connected
our Avoice agent with our inbound called
Webo QRL from main.com. Now one thing we need
to notice here is learning the model ones
use existing data. And this is the number
that I have called from. All right, this
has the data now. Now if you open the outputs, you will be able to see
from number and two number. So this is our assistant number, and this is the number
that I call from. Now you can see there
is this plus one thing. Alright so there is
a huge trouble when we are getting this
data from retail EI. It is always formatted
in this plus number. But if we go back to
our Google Sheet, there is this no plus format
in Google Sheet. All right. So as you can see, there
is no plus format. So what will happen is
it will not able to match the phone number that
we have in Google Sheet. Is the same phone number
that we got from retail E. So what we have to do is we have to remove
this plus sign. So how we are going to do
that by using hat GPT. Click on hat GPT. It is a
simple prompt, nothing crazy. Select your account, and we are selecting
chat competition. You can select any
models that you like. We can add message. Again, we are going
to use system. First, we need to give the context of what
we need to achieve. So we will write context. What is the context
that we need to achieve we simply need
to remove the plus sign. So we will give the phone
number to From phone number. Then we have to give
example to chat GPT. What is the end result or end goals that we want
to achieve from it? So we can say something
like example, the input that chat GPT will be getting is this
from number, right? So this will be the input. But the output we want is simply removing the plus sign so that it will match with our Google Sheet data. I
hope this makes sense. We can also give particular instruction that we
need to achieve. Use the number in
the context and please respond with appropriate output based on the example. Don't worry about it,
you'll be getting this win.com scenario in
the resource section. So all you need to do is make this field of
your own phone number. Then click on Okay.
Yeah, that's it. That's all you need to do. Again, it is nothing too crazy. It is just removing the plus sign that we are getting from retail EI so that we can map or match the field
in our Google Sheet. Now you might know what
we are going to do. Obviously, we are going
to select a Google Sheet. We are doing this, we
are searching the row. We want to make sure that we are matching the phone number
that we are getting. Then then only we
are able to find out the particular person's
previous history, their name, and whatever data points that you have added
in the Google Sheet. Select your Google Sheet
that you want to use. Sheet one. Now we have to filter
by phone numbers because we are getting the
phone number and we have to make sure that the result
that we are getting from retail EA is similar to
the one in Google Sheet. So this will be
the phone number. We have to select
this from number. I did something
wrong. Guess what? Because what we
are matching here is when someone calls
with the phone number, we want to match that if this exists in the
database or not. So select the from phone number. I did something wrong here. The reason why we use CJA GPT was to remove this plus sign. Otherwise, again,
it won't be able to match that fill in Google Sheet. So simply count the result because this is the result
that we will be getting from RGPT which is removing the plus sign from the
phone number. On result. Yeah, that's all you need to do. Click on Okay. And now we need to send this response
back to our retail EI. If you see this option, that means that it
is not perfect yet. Click on Okay, and now
it's called. All right. So we need to now send
the Webook response back to our retail EI. For example, once it has maged the field of particular
phone number, it will grab all of
this information, which is name, last name, whatever you want to add, and then we will send that
information back to retail EI. Click on Webbook
and WebookRsponse, as the name suggests, we are responsing back to retail EI. Inbody feel free to add
as many data points that you want to add or sign out back to your EA
voice assistant. But in this example, let us use the previous call summary. We need to know their
name. And let's say the email, yeah, that's it. As well as we can select
the fitness calls as well. So whenever someone
is calling back, our EA voice assistant
will say, Hello Manan. How are you? I hope your weird kin experience
is going well, something like
that, and not like, hello, who is this? What
are you calling from? What do you want? So that it is adding that level
of personalization, and that's all we need. Let's say if you are
calling Apple or Microsoft and they don't know
who we are or what we do, we feel that connection
of attachment. But if you are using
this Air voice agent, and we are setting this
inbound call assistant and our Air voice
agent know the name, the entire previous
call summary, as well as any data points
that you have added. All right, I'm not
repeating myself here, so I will add the
body or whatever data points that I want to
send back to retail EI. This is as easily
as I can explain. Let's say we want to
send out first name, suplicon space and then
quotation, first name. And how we are going
to get that first name by using Google Sheet data. So a semicolon, then a space, again quotation,
double quote soy. Then we have the column
name, close it, lconca. Same goes for email space, and then we are going
to add the email. Same with fitness cool. And lastly, summary,
previous summary. Click on Ann and close
the Cali bracket. That's it. Click on Okay.
First of all, save this. Now it is test our Air voice
agent is working or not. It will not. Why?
Because we haven't added any context or
knowledge in the prompt. We have to at least
give some kind of information or knowledge to our air voice agent in the prompt because
it is it brain, otherwise it won't
know what to do. So we can say, like, this
is the caller information. And now this is a
very critical part. So make sure you
pay attention to. In the webbook we are calling
this dynamic variable. So these are dynamic variables. Now, for example,
dynamic variables are very case sensitive as well. So if we are using or if
you are calling with, let's say, first name. So it won't know that the first name is
this because here, all are lower caps, and here the first
word is in capital. So that's why it is
very case sensitive. So make sure that it is
the same dynamic variable that you are calling
in the Webbook because this is the
response that retail EI will get alert and if
it is getting confused, like what is the first
name and what is the first name that is
mentioned in prompt, it should be similar.
I will show you. We can say first name So we are giving our Air voice agent the caller information, and we will add our
dynamic variable here. So add a double colli
bracket and add the dynamic variable.
Then we have email. Same goes for fitness goal. You can even simply copy it
from here and post it there. Just add a double calibract to make it a dynamic variable. You can also add dynamic
variable in the welcome message. So I won't say like,
hi, who are you? It will say hi Manthan or Hisaki whatever the name
is stored in the database. So we can say first
name here as well. Don't forget to save
your prompt. Awesome. Enable this option of
immediately at data arise. First of all, we don't want any old data, so let
us delete those. So whenever someone will call, it will immediately trigger. So let us go back to
our Google Sheet. So this is our first call ride, and this is the phone number. This is the phone number
that I will be calling now. So it will say hi Manthan since we have added that
dynamic variable here. So did you see it didn't say? So let's rewrite those
dynamic variable again. Yeah. So now your agent is
successfully updated. So it will say hi Manthan. This is Alex from Jim. Alright, so let us try it out. Let us call this number. Yeah. This is Alex from Fit Live, Jim. How can I help you today? Yeah. Uh can I get my
email address I forgot? Of course, Manthan. The
email address we have on file for you is
Manta 037@gmail.com. Let me know if there's
anything else I can assist you with. Awesome. Did you remember the last
time we book an appointment? Can you let me know the date? Absolutely, Manan.
The last appointment we booked for you
was on January 6 at 11:00 A.M. Let me
know if you'd like to make any changes or need
help with anything else. I'm not able to achieve
my fitness goal. Oh, Manthan I hear you.
Sometimes progress can feel flow, but don't worry. You're not alone, and we can absolutely work together
to get you back on track. Achieving your weight gain
goal takes on consistency. Did you see like our Air voice agent mentioned
like weight gain. So it is having
all the contexts, and it is not
calling out a Zblu. For example, if I called
this A voice agent, and it would have said,
like, Hey, who are you? Can I know your name? Can I know your fitness
call, everything back. And our receptionist won't have the knowledge to store all of these previous
call histories. So that's the beauty of using a voice agent in your business. Now, I want to show
another example. For instance, if you
have a lead list or all the customer and their
phone numbers and you want to add all of this data
point and give it out to Avoice agent, you
can do it as well. So let us go back
to an.com scenario. So instead of let us
change different sheet. So this sheet is Retail X
inbound, so we will select it. Retail. So first of all,
we need to run this. Click on the run modules because
we are not able to fetch any column name or let us
create a new Google sheet. Let's remove this node what we are doing is we are
searching for phone numbers. Retail X inbound.
Then sheet one. Sorry, whatever the sheet
name in your database? Yeah, now it's populated
with all the column names. So we are looking for
phone number and from. Icon Okay. As you can see, there is still one option in red,
so it is not safe. So make sure to
click on Okay again. I don't know why
this always happens. As well as we have to
change the field from here. So again, we don't
have any data, right? We don't have any population
like what is a phone number. So in order to achieve that, simply click on right on your mouse and run
this module only. So enter any phone
number that you like, which is in the database. So I will use the first one. So it will get all of this information for that
particular prospect. Ya AAB, the phone
number, the link URL, the title, every single
detail, the education role. So this is how you can add the personalization
into your Avoice agent. And it's not like one
size fits for all or you are calling to a
robocall or IVR menu, you are actually creating
value and adding relevancy, at the same time
using personalization in your Avoice assistant. Now we have to change here because it is from
the old Google Sheet. So we only have
their first name. We have the email. Okay,
we don't have the email. So to email. We don't have their
fitness school as well. But instead, we can add
their title, let's say. I'm just showing the example, what are the possibilities. As of now, we are just using two examples, their
name and title. Again, we have to
change it here as well. All right. So let us call
our E voice assistant again. Make sure to save it. Yeah. Yeah, thank you,
thank you, Alice. Can you let me know my title? I'm making it but
obvious, but still. Yasha, your title
is sale director. How can I get you today? Yeah, thank you very
much. You have been very helpful and great
fun. I love you. Bye bye. You can see, feel free to add SSM data
points that you like. I'm giving an
example or what are the possibilities by
using A Woe assistant so that it will boost or
exponentially enhance your customer service in your business or in
your client's business. Even you can connect both of
the Google sheet as well. So one for past call summaries
and second for lead list. I will allow you to do that as classroom work or class project. All right, so that's
all from this lecture. I hope you understand what I'm trying to achieve or
what I'm trying to say. So let us go back to
our Miro board again. Sorry, I'm taking so
much of your time. We have achieved all
the file levels. We have created the
ultimate air voice agent that can do both inbound, outbound, customer service rep, appointment set
or lead caracter, and whatnot, to be honest. So I hope you found this course valuable and I will see
you in the next lecture. There goes the balloon, I guess. I cannot see that's why.
13. Automate and Personalize Calls Instantly with n8n: Using AETN with
retail A voice agent is we can bring
out all the nodes, all the API reference
and documentation inside NAD and our workflows without
going to have anywhere. I will show you. So
this is in mein.com, if we are making
outbound calls, right? We have to go to this
API documentation, write our entire call code. We have to use the metadata as well as the retail
A dynamic variable. But with ANN, we have to
provide phone numbers, agent IDs, dynamic variables, copy the code from here, but by using Aniten we can do all this inside
our automation. So let us start it.
Once you log in, it will look
something like this. So let us create a new workflow. Don't worry if you're using
ANATN for the first time, it might feel overwhelming, but it is even easier
than mig.com or Zappia. Go to Workflow and let
us create a workflow. Let us name this S. Now similar in mig.com,
we have module. Here we have nodes. So first node will be
obviously the trigger node. Click on Add a step,
and what we have to agree from is the form
that user will submit. So in this example, I'm using a very basic or generic form, but feel free to use Teleform or whatever form that you are
using on your website. So we are going to use
Aniten inbuilt form feature. Click on An ten form, and click on this triggered one. Whenever the form event happen, it will trigger this automation. So we have the test URL here, then we have to provide
the form title, the description, and the
form fields. All right. So for form title, let's say it's a growth call. Now in form fields, I'm just keeping it very single because the goal of this lecture is to understand how you can integrate retail EI with Aid. In form, we will say,
what's your name? The field type will be
text, and the placeholder, we can say and this
is required field. We will add another
for phone number because if you don't
have phone number, how we are supposed to
call back that person? What's your phone number? And this will be number, country code, and
then phone number. Again, this is
required fill lastly, why we are gathering
their email address. Because if they like
to book a call, we can easily source this email address from the phone and we don't
have to ask our user. That's why it is even
better and our AI won't make any mistake typing or
writing out the email address. So we will say,
What's your email? Yes, this is required field too. Alright, that's it,
feel free to customize this form as per your
liking and your preference. For example, we have
a bunch of details. As you can see, once
anyone select the time, we are filling with all
of this information. But it will make this lecture lengthy if I'm adding
all of this thing. I want your fundamentals
to be clear. That's it. After that, you can
create any automation or you can add any customization
as per your liking. Now, let us see what
our forms look like. So click on test Step or even we can copy this URL and open in Newt now in order to see the preview of our
form, click on test Step. It will open up your form. We have consultncy call. Let us fill out a demo name. All right, let's submit it. Form submitted, your
response has been recorded. So let's go back
to Aniten and you will see node executed
successfully. We have our output here as well. So we have name, phone number, email, as well as the time. All right, so it is
like a payload because once we are mapping the
film in our retail EA, it will be very easier for us. Don't worry. I will explain
to you in much details. Now what we need to do is once the user will
submit the form, we need to make sure
that our retail EA get this knowledge
of the person's name and their email so
that it is easier for our retail EA to add
this personalization. So how we will
integrate retail EA is by making HTP Post call. So in nodes, search
for HTTP yeah, we will make a HTP request. It is post. And to be honest, you won't have to do any
of it because once we are going to install the nodes of retail AI, it will be very easy. Now, in URL, as
you can remember, go to APA documentation and
go to this create phone call. So this is the URL. Let us
copy this, paste it here. In authentication, we
don't need anyone, but we do need to send headers. In headers, as you know, we have authorization
and our key. The value should be
bearer and the key. Now in body, we will have the raw file and in content
type application slash JSON. It is very similar what
we are doing in make.com. In body, we have to
paste our call code. So let us fill the form or
let us fill these fields. In from phone number, we are going to use
the phone number that we have purchased
from Retail AI. So let us go to Retail. We are going to phone numbers, and let us use
this phone number. Copy this into fill
your phone number. In agent override, whatever agent that we are going
to build, copy that ID. So let us go to VTL. Click on agent, and let
us create a new agent. We will start from blank. Copy this ID. Even we
can rename this a, let us copy this, paste it here. In dynamic variable,
what information we need to send out to
our AI voice agent. In our example, you want
to send out the name and the email address of the person who has
submitted the form. So in field type, we will say, first name, use any demo
or use any random name. And second fill, we
want to know the email. All right, your call code will be generated on
the right hand side. Copy this, sorry. Again, copied from
the calibracttll end of the calibract.
Not the quotation. So let us go to NA ten and
we will paste it under body. But mind that we are not using Fix because our phone number, our dynamic variable will be
changing every single time. So click on expression
and click on this. All right, now paste it here. Now we will simply map the fills that we used to do inmage.com. So two phone number
will be always different from the one we
will receive, drag it here, and we are keeping the plus sign because retail A won't be able to make the call if
you are not using the plus as well as
the country code. Now the agent ID
will remain same, but we will change the
dynamic variables. So we have name
here and the email. And now let's do the
same for email address. You can see the result here. It will change every single time from different prospects. All, that's it. That's simple. It is to create a voice agent that will call the user
when they submit the form. And even you can test
the step as well. I'm not testing it, but
feel free to do it. Alright, our automation
is being completed. So let us test the workflow. Let us fill in the phone number. Yeah. But one thing is
remaining is we are here to set up our prompt
as well as our agent. So let us do it very quickly. In prompt, we will say, Am
I speaking to first name? Thank you for filling this form. Would you like to service
our offer or consultancy? Would you like to book
an appointment or not? So we are going to use
all the function of cal.com as well in order
to book the appointment. So let us go to Claude. Help me write a prompt for AI voice agent and
not to forget to add the prompting guide in the
resource section. Here we go. Once the submits the form, we are calling them back to make them feel
very important, as well as we are using the
personalization of their name and we are getting them to book an appointment with
us at that moment. Otherwise, they will forget
about us eter or Sona. Why don't just call
them right away. Also, if you have any prom
that you really like, you can feed into
Claude and say, create me prom, but
for this use case, but use the format that I
like. I will show you example. For instance, we really
like the vending machine. And this time, we won't have to ask for the email address as well as their name because we
will already have via Form. Alright, I'm taking
my agency example. So what I will do is I will copy all the content as well as give it to Claude so that it has more context on how
to create the prompt. Yeah, it is writing
amazing prompt. Hi, this is Alex
from Flux Spotify. Am I speaking to this
name? Let us copy this. Again, I'm just
giving you a demo. I'm not adding any
extra thing here. For example, not configuring with speed setting
and everything. Otherwise, it will make this lecture
unnecessarily lengthy. But I just want to show
you how you can add those dynamic variables and
integrate them with Nite. Let us copy this introduction. Also, we need to give
the caller information, which we will get from ANATN. We have the first name, then add the dynamic variable. Make sure that the
capitalization is same as we have
used in AATen. I will show. Here.
First name and email. Awesome. We have
two things here. Now let us add the
functionalities of checking and booking
the appointment. Feel free to use both
of these option, but I'm not doing
this right now. All right, I think
we are good to go. So let us fill this form. Let us use Run and our email. Let us submit this, and I
think we should get a call. All right, so we
have to run this. This step has been and
let's run this as well. Node execute successfully. Yeah. Hi, this is Alex from Flux fortify. Am
I speaking with Ron? Yeah, you are speaking with
Ron. Do you know my email? Yes, I have your
email as info at fluxfortify.com,
is that correct? Yeah, yeah, correct.
How are you? Great. I'm calling because you
recently expressed interest in learning about our AI
systems for Agency Growth. Is now a good time for a
brief chat? Yeah, why not? Perfect. As you saw in the video, we're helping agency owners generate consistent $83,000 monthly
revenue using our AI systems. The best part is we handle
everything for you. Would you like to schedule
a discovery call with strategy Let's book a
call. Let's book a call. All right. So I
hope you understand or got my point, which is, once the user will
submit the form, we are instantly calling
them with their name, with their email address,
everything we already have. Now, all we need to do
is reading them to book an appointment
because if you are calling them even
after 24 hours, they are more likely to forget
us and they will get busy. But if you are calling
them right at the moment, the chance of booking
the appointment by our user is
much, much higher. For example, if our prospect fill out this form and they are contacted after 48 hours
or even after one week, they don't care about us
because we are not adding that kind of hospitality
or service to them, but by using a voice agent, we can do it within
just seconds. Yes, by using these two nodes, you can fire receptionist
or call center. And yes, we don't have to
like crazy automation with 40 different nodes and two,
three different workflows. Even by using simple automation, we can achieve the efficiency that we are looking
for in our business. If you are not using ANitFms, you can simply use
Google Form or Ti Form to automate
this process as well. So simply go to ANI
ten for example, search for Type FOM, it will have Ty fom
trigger as well. It is as simple. We
don't have to make any crazy automation
or go to make.com. Select your credential
and that's it. I'm not going to
show this because you are already smart
and already ahead of me. Alright guys, I hope
you implement this in your business straightaway
because we are using this. Once anyone fill out the form, we are calling them by all of these necessary data
points and don't be someone like this
who doesn't get contacted after 48
hours or even a month.
14. Appointment Reminder AI Voice Agent with n8n: Hi, it's Lee Genman here. And in this lecture,
I'm going to show you an amazing use case
of AI voice agent, which are appointment
reminder assistant. For instance, if you are having a meeting at around
three to 4:00 P.M. Right, and you want to decrease the nose rates of
your clients as well as your customers
because a lot of time people forgot
their meetings. So what our EI voice
assistant will do is just before 1 hour of the meeting for our
example, which is 2:00 P.M. It will call our client
and we'll say, Hey, first name, we have meeting
in are you ready or not. If they want to reschedule it, our AI voice agent will be able to reschedule
it at that moment. That's the beauty of using
this reminder assistant. Trust me, this type
of reminder agents are very useful because
your client will feel that you are
more inclined to having a talk with them or
to having this meeting. I will decrease inertial rate and it will increase
the conversion rate. This is a demo, for example, this is the thing that
we are going to build to start from going
to use retail E, we are going to use Aten or any CRM application
in our example, Google Sheet, where
we will store all the information
of our client. This is the pre call
status if our client is yet to be called or it
has already been called. Don't worry, let us
build from scratch. How, let's say you are manually setting up the appointments
for your prospects. We need to first make
sure that we create a calendar event that will be
also done by this workflow. For instance, if you
are manually adding appointments in your calendar
because you have the name, you have the email and the
appointment booking time, don't worry, you
don't have to do it manually by using this workflow, it will automatically create event in your Google calendar. For instance, it will create
this type of calendar event, and our A voice agent will be able to call that
just before 1 hour. So first of all, let
us start from scratch, and since this is test or demo, we are going to use
trigger manually. All right. Now the
next thing is, you have the data of
your prospect name, their email address, and the
appointment booking time. Now, we need to create
event in Google calendar, you have to manually do it manually select this and
then select the time, select the date, select the no you don't have
to do it manually. So by using this workflow, you will be able to
do it very easily. So what we're doing is
we are adding the data, click on data transformation, click on Edit fields, and here we will
select the JSN code. For instance, we can easily
name the JSN's code. Let's say we have
the first name, I'm using my name as an example, then we have the email. Then we'll be our appointment starting time and
appointment ending time. Event start date,
and in this date, it will also include the timing, 25th and the timing
is at 3:00 P.M. Same goes for event end date. Let us copy this event end date, so we will just add 1 hour here, which is 3:00 P.M. To 4:00 P.M. Can also add another data
points as per liking. For example, you want to add that level of
personalization, you want to fetch out
or you want to add that business problem
in your calendar event. You can easily do that.
Let's say I want to cut down my staff by
using voice agent. Yeah, that's pretty much it. That's all you need to add here. Another thing that you can
add is time for the meeting, what is the time length or
the duration of the meeting. In our example is 1 hour. Have manually edited the data. Now towards me, this
entire workflow will be so much easier for you. So what we are doing is
we have this information. We will create our Google calendar event using
this information. You can also add a
GSN schema for here. For instance, if you're
having Google Sheet, where you track all
of this information, so you can simply
put Google Sheet. Before that, here you can put Google Sheet and then you can mare those fields
so that it will be automatically changing from
every single mother prospect. But to save some
time, I'm not doing it and I'm adding
the data manually. I hope this makes sense,
nothing too crazy. Now, what it will do is,
since we have this data, it will create a
Google calendar event. So search for Google calendar, and what we are doing is
we are creating an event. Now, select your
account operation is create select your calendar. I'm using this one,
the start time. Now, in order to
get the start time, we are going to execute
the previous node that we have added
the data manually. So click on it, ah, we have
this event start date. Simply put this JavaScript code or Jason's that's
all you need to do. It will automatically create at 25th January at 3:00
P.M. To 4:00 P.M. Now, if you click on Test Step, it will automatically create a Google calendar event
in your calendar. For instance, let me show you. Output was successful
Green tick, you can see it has
added the event. Feel free to add
the customization, for example, the name of the
event, et cetera, et cetera. So in order to add
the description, in order to add the event name, click on AD fields here, you can add the location, guess description,
bunch of things. But yeah, I hope
you understand it. That's not the main goal here. The main goal here is to
set up this automation. All right, so all of these nodes are executed successfully. Now, what we need to do is we need to create a math function. So what that math function
will do is it will wait for 1 hour before that meeting and
exactly before the 1 hour, it will trigger
our outbound call by using our retail AI voice. Before doing so, it's
always best if you add this data into your
CRM in our example, which is Google Sheet
so that we can track the management of
our Avoice agent, are they calling this
prospect or not, and we can easily scam and
scan through Google Sheet. So let us open Google Sheet. Alright, I have created this
Google Sheet of name, email, pre call means if our Avoice assistant has called the prospect or not, and
this is the problem. Let us go back. Let us
add Google Sheet here. Here we are appending the row. Opending row in Google Sheet basically means adding arrow. Click on Uenow in Sheets. Now select your Google
Sheet in my example, retail AI CRM and
your sheet name. To be honest, it is
similarly to mic.com. You can easily create this automation in
mig dot hom as well. But in Anten it is very easy
and it is even costlier. So that's why I use Antin. Now let us add values to SN. So we need the name to be
added in the CRM or in our Google Shet and if you are using Antin
for the first time, it might feel overwhelming
to you, but don't worry. I'm here, just follow along. Now in precall it will be fixed. So first, what we need to do
is we need to add the thing. The prospect is not called yet, so we can say no or not
call and the problem. And what we will do is, once our Air Voice agent has
called our prospect, it will change
from no to called. I hope this makes sense. We have already done that in main.com. Yeah, that's all you need to do. That's all the things that you need to add in Google Sheet. So once we click on Test
tap, it will add this thing. So let us click on Test. Awesome. So we have the name, email, the status is not
called yet and the problem. Let us go back. And now we will divide into
two different paths. If the prospect is already
called, for example, it is if the prospect
is already called, it will not call our prospect again because we don't
want to be annoying. But if the prospect
is not called yet, it will follow an outbound procedure call by
using retail EI. So what we can do is we can create an if
and else condition. Clicon plus, and we are
going to use the flow. So if N's condition like
true and false. All right. So the value here
is obviously we are going to use pcall why pre call? Because we can easily
identify if the prospect is contacted or not is not
equal to clicon string. So if the prospect is
not call, for example, is not equal to call, it will follow and make
an outbound call. Let me show you what I'm. This is our I. This
is our I module. If it is true, in our case, what is true is if it is precall is not call
and any other word, it will make this outbound call. It will go to retail
AI and make the call. But if this is false, which means that this
precall is equal to call, it will not do anything. Allied. So that's it. That's
all you need to do here. So yeah, if it is true,
it will make a call. If it is fall, it
will do nothing. And search for? Nothing.
No operation, do nothing. Yeah, that's it. You don't need to configure anything here. And if it is true, it will go to retail AI and
make an outbound call. But first, we need to add
our math operation here, which is a weight function. So how long it
should wait before it should make an
outbound call to say, like, Hey, we have a
meeting in 1 hour. So this is the wait. By default, it is like
five second only, but we have to add a
math function here. Instance, it is our
appointment date and time. So what we need to do
is minus or subtract 1 hour from this appointment.
I hope this makes sense. It is a simple math only. So instead of fix,
we are going to use expression obviously because it will be changing
every single time. Now, we need to get
some payload here, so click on execute
previous node. Yeah. We have the payload now, and in order to create this
math function, use EI. I'm not going to show
it to you because I already know how to
create this math function, but I just want to show you
the brainstorming process, how we can use EI to create
these type of formulas. For instance, if you
want to add 1 hour, if you want to -5 hours, you want to have
appointment reminder, even after two days, even after three days, you can easily configure that. That's why I'm not silver feeding you and I
want to show you the beckon process on
how you can create this type of robust
A voice assistant. In resume, we will
say at specific time. Do call at specific time. What is the data in time?
Obviously the data time will be our events start
date -1 hour, right? But how do we create a
math function for this? So let us go to GPT or cloud. So we can say, do
you know how to do math formula or math
operation in any ten? Just feel free to ask
anything to Cloud or GPT, and it will be
able to answer it. Yeah, so it does know about to resume it or specific task. So we will say, we
have this data. We want to subtract
1 hour for it. For instance, I have a data and time from my Google
calendar example. This is the one
that we are using. I want to subpectOHur from it in nature, language, or NLP. Yeah, awesome. So we
can use this formula. Again, both of these
formula will work. Copy this. Let us
go back to NTN. What it is trying to do is
this is our math function of Daten time and it is minus minus means
suprection of one ever. That's it. That's
all you need to do. But here in input, we will
add our events start date. I will show you. Paste
the formula here. Click on Expression.
Sorry, because it will be changing
every single time. Yeah. So instead of this input all or
cheese and start date, just remove it everything. Yeah, we will add our
event start date. I hope this makes sense to you. It is nothing too crazy and
you can see the output here, which is 14, right? So our event was at 13 sorry, the event was at 3:00 P.M. I will do an outbound call
at 2:00 P.M. Awesome. Yeah, that's all you need to do. That's how you can
create those type of appointment
reminder assistant. Now all we need to do is make an outbound call by
calling HTTP post request. We have done this so many times and I know you
are expert at this. This is our method,
URI and our headers. But before adding
these parameters, let us create our AA
voice agent in retail EI. Alright, I have gone ahead and created this prompt for you, to be honest, it is very simple. That's why I don't want
to waste your time. All we are doing
is we are telling our voice agent to let the
user know that we will be having meeting or we
will see them in 1 hour and ask them if they will be joining in
the meeting or not. If they are joining the
meeting and the call right over there and if they
are not joining the meeting, ask for the reschedulement
time and we and reschedulement appointment by using this function section. Pretty easy. All
you need to add is check availability and
book on calendar function. Lastly, we are activating the end call so that it will
instantly end the call. And we are say goodbye
to the mention mentioning we want
to take more of your time and end with Ca later. This are our response
guidance contacts, which is flux fortify
the lead name. So these are the dynamic
variables that we will be passing to our AI Voice
agent from our Google Sheet. And this is the
business problem. All right, so these are the
things that we will use in our API reference or
when we are doing the outbound calls by
using API documentation. Since we have the
business problem and lead name,
yeah, we are good. Let us go to API documentation, go to API reference and let
us create a phone call. Click on try it. If you're watching this course
after sometimes, there might be
some ERU exchange, but to be honest,
the fundamental will always remain the same. Don't worry, something will be here and there,
nothing too crazy. Add your API key here
and from phone number, which phone number that you are assigning for a retail EI agent? I have assigned
this phone number for our callback EI agent. All right, so let us
copy this phone number. Let's paste it here and the number that you
will be calling to. Our agent ID, you
will be able to find it here and I'm
using real time. That's why there is
no test LLM option. And let us add the
dynamic variable. So the dynamic variable we
will be calling our lead name, make sure the dynamic
variable are exactly the same that you are calling in your prompt because they
are case sensitive. Lead name and let us enter any demo name and
business problem. Yeah, that's pretty much it. Now let us copy the curl code. Let us go back to
our NATen past. First of all, let us copy
the URI or sorry URL. Then in headers, we are passing authorization and bearer
space our API key. Awesome. Now let us
send our CL code. We are going to select raw in Contact type applications
JCNN in body, click on Expression and not fix because these phone numbers, this lead name will
be always changing. I hope this is
making sense to you. So instead of phone number, you can collect the phone number manually as well from
this edit field, but I'm leaving it as it is, and in retail dynamic variable. Replace with these variables. Awesome. Yeah, that's
all you need to do. Lastly, what we are doing is
we want to update this no to call so that we can know that this Avoice agent has
called this prospect. So what we will do is we will upgrade the row in
our Google Shet. So search for Google Sheets. So the operation we will select
is append or update row. Select your Google Sheet. It is just the same as.com. Now column to match too, so we don't want to update any random row in our
Google Sheet, right? So what we will match is from emails because
there might be two prospect with similar name in your Google Sheet
or in your CRM. That's why we are going
to match by using email because email is unique
for every prospect. What we are going to match
or what we are going to use the column to match on is email
one and select the sorry, execute, first of
all, previous node so that it has payload. Okay. So it won't execute
because we are waiting here. So as of now, let us
disconnect this node because otherwise it won't make the call for our
testing purpose. But I hope you
understand how you can add this math function by using chat GPT or Cloud
in order to make your customization for a
reminder appointment agent. Perhaps let us test this app. Yeah, the issue is we have
to select the post method. All right, so you
will get a call. Yeah. And we need to convert the pre call from no to call. Let us test this step, and it should get
converted to call because since it has
made the outbound call. Alright, so that's what
the scenario was about. And if we want to select this
another path, for instance, if this prospect
is already called, it will follow this path. So let us run this once again. Let us click on test workflow, so it will run run run. Hello, Lathan Patel. This
is Sam from Flux 45. Hi, Sam. I'm calling to remind you
about our meeting in 1 hour. Can we count on your commitment? Alright, so this is how
your workflow will follow. So let us test the
step one more time. Yeah, I should get a call now. Hello, Manton Patel. This
is Sam from Flux fortify. Hi, Sam. I'm calling to remind
you about our meeting in 1 hour regarding
AI voice agents. Can we count on your
commitment for the call? Yeah, I will be there. Great. We won't take up more
of your time. See you later. And it cut the call because we are calling
the end call function. Yeah. I hope you understand how you can create this
type of appointment to remind a voice agent so that it decreases
your no sure rate and increases the level of personalization
for your customer, as well as for your clients. All right. I hope
this makes sense. Just add the workflow
of wait here so it will wait and exit at 1
hour before the meeting, I will do the outbound call. All right, that's all
for this lecture. If you need any help, setting
up this type of workflows, just let me know and
I will help you out. Bye bye, take care, and I
will see you in another one.
15. Using AI Agents for Business Promotion, Upsells, and Sales: Hi, guys, it's month in year,
and in today's lecture, we are going to show
you how to create EA voice agent that can do Opsel or any promotion for a business or a
client's business. In this scenario, we are taking an example of a
dental Opsel offer. So let me show you rather
than just me talking. So let us test our demo product, and we are going to build
this by using Anti workflow. So when I will click
on this test workflow, I will get a call. Hello, Manny. This is Dan
from LGM Dental Care. Am I catching up with
you at the right time? Yeah, you are. And how
did you get my number? I can see from our records
that you visited us back in April for some
cavity and gum problems. Hope those are better now, Mate. Got a brilliant
promotion to tell you about the free dental checkup. Got 5 minutes to chat about it. Okay, so you are promoting a
free dental checkup, right? Yeah, I heard 5 minutes
to talk about it. That's right, Mate.
Since your last visit was for cavity and gum issues, it's proper important to
keep an eye on those. This free checkup is
valid until January 20. Would you be interested in
scheduling an appointment? When would work best for you? Yeah, yeah. Let's do it. Let's
do tomorrow at 2:00 P.M. Let me check if we have that
slot available for you. Brilliant. That slots available
tomorrow at 2:00 P.M. I already have your
name as Manny and email as Manthami 37@gmail.com. Could you confirm if
these details are correct before I book
your appointment? Yeah, let's do it. Those
are correct. Perfect. I booked your appointment
for tomorrow at two PEM. Your appointments all set mate. Is there anything else you'd like to know about the checkup? No. Cheers Mt. Thank you very much. I will
see you tomorrow. Cheers, Manny. Looking
forward to seeing you tomorrow at 2:00 P.M. Take mate. Yeah. Did you see, I prompt my agent to act as a British and give voice
in British section. So let us get started, and
I will show you how we can create this type
of voice agent that can do any promotion
or upsell for a business or your client's
business by using any time. I'll so let's start from scratch
and build this together. First of all, we will
start with Prom. I will use, let's
say, Cloud this time, and let us choose
a British section. Let's go for British and a male. Let us use Anthony. Hey, I'm your virtual
assistant from RTL AI, here to help you
handle all the calls. Anavus. Now let us
write with role. We are saying you are then a virtual artificial
assistant in communication with patients of Led Genman Dental
Clinic located in UK. That's why we are giving
it a pretty section. Ask of our assistant
is to speak with user who has visited
the clinic in the past. That's why you can see
in the Google Sheet. We have the list
of our customers who has visited us in the past, as well as for which
reason their email, their name, and
their phone number. What we are doing is we
are trying to repich with another promotion
offer or another upset. This is very important for
any business who has around, let's say, 50,000,
60,000 phone numbers, and by using AI voice agent, they can call all the lead leads within a matter of
five to seven days and they can do an upsell
or promotion offer without they having
to do anything. So we are going to use this
Google Sheet as an example. Let's come back to our task. So you should call
them and try to convince them about a free
dental checkup promotion. It's time to give our
Avoice agent kind of a conversation flow or a script that it should
follow in the call. What we are trying to
achieve here is we are trying to convince
our prospect to get a free appointment or a free promotion offer in Dental Clinic by getting
their appointment. If they are interested, we will ask them to book an appointment, and then we'll book an
appointment since we already have their name
as well as their email. All right, so we need
to add, first of all, check calendar availability and book on calendar.
So I will do that. Here we go, add
your API key here, event type and your time zone. Click on say Let's do the same for book
and calendar. Awesome. Now let us give it a script. Step one is ask the user
if they have five minute free since we are calling them about an amazing new promotion. If the user is interested, you should ask the user when they are available to
schedule the appointment. Once you have got
that information, check availability
in the calendar. In case there is
no availability, tell the user to change the
date or change the time. Now move on to next step, which is after checking
the availability, we have the email as well
as we have their name. You should book an
appointment by using this function and
once step is done, you should notify the user that appointment has been
booked or successfully. After the user doesn't have any equation, we
should end the call. All right, so we are calling the en call function as well. Let us add ncallFunction. Awesome. So this will be our conversation flow that
our AIVice agent will follow. Even if you have
some knowledge base that you want to add,
feel free to do it. So for example, if you have some FAQs or
question and answers that you got frequently asked by your customers or by your
patients, you can add it here. Let's add a new knowledge base. I'm just quickly showing you. We are going after Lead
Jen Man, Dental clinic. I for document, you can
easily add your website, as well as upload any
PDF file that you have. But as of now, let
us use text only. So I have added question
and answer I will save it. Et's go back to our agent and add your
knowledge base here. Click on refresh,
and here we have it. Also, feel free to play
around with speech setting. You can also use keywords
that you often use in your niche in our nice
example, which is dental. Let us enable this
option of B channeling. And if you are using any accent, for example, is action, you can add pronunciation
here as well. All right, so we have our
knowledge base ready. Again, if you are
HIPA compliant, you can turn of this as well. I won't record the call. It's time to give some
response guidance to our Avoice agent, since we are creating our
A voice agent a British, we are going to
use made brilliant proper and to end call, we must use the function call. This is al guidance
that you can give to your A voice agent as per your
preference or your liking. Now we need to make sure that we are getting this
information, right? We need to know about
their last visit or what they have
done last time, as well as when they
have visited us last. These are basic
response guidance that you can add and give to your AVOice agent as per your
use case and your industry. But we need to give all
of this information to our AVSe agent, which is retails, like when they have last visited us
and what they have did. As well as we need
to get their name, email, and their phone
number. All right. So let us go back to our
retail agent and we'll add all of this information
in a caller information. So let us go above and then
create Caller information. Since we are going to
do an outbound call, that's why we need to give
all of this information here, as well as we can use this information in welcome message. Amazing, we have their name, email, last visited
date, and their details. Now these are dynamic variables that we will be using in AATen. Alright so let us go to ANI ten, and feel free to
use any workflow or create a new workflow. Let's say, dental care deletion. Now the first step is we need to trigger this
Google Sheet, right? So this will be our first step. So click on it and we can
do a trigger manually or you can also have after
waiting for 50 minutes, it will check every
single 50 minute if there is a neuro edit or not. But as this is an example, we are going to use
Tigger manually. And then we need to connect
with our Google Sheet. Search for Google Sheet. Make sure you have connected
your account with it. And what we are doing is we
are finding that prospect. So click on GetRos select your document as
well as your sheet. Click on Test tab and it
will get all the payload. Awesome, you can see here,
Rod number two phone number, details, Owner last
visited and their email. I'm just giving an example. Right now, I have only one Row. But, for instance, if you are in insurance company
and you want to upset a credit card of our mortgage or
insurance software, you will have, for example, thousands and
thousands of leads. But as this is an example, I'm just using one row.
I hope this makes sense. Alright, we are configured
with our Google Sheet. Now what we need to
do is we need to make a post call or we need to do
outbound call of retail EI. So click on it, and
what we will do is, we will get that HTTP request. So if you go to API reference, we will need to
create a phone call. So let us come back to Nitin
and search for HTTP request. So what it will do
is it will make a post call to our
retail ER assistant. In methods, click on post, you can see, I'm not
creating out of thinner. It is mentioned in
the documentation. And this is our URL, copy it and paste it here. In headers, we need to add the authorization
and our API key. So click on to it. Yeah, they have this new documentation. So we have the authorization.
Let's copy it. Let's paste it here. Same
goes for bearer and our APIK. Type B space and
paste your APIK. Now in body, what we are sending is we
want to send all of this dynamic variable to
our assistant, white? So our body type content
will be raw and it will be applications JSN since we are writing our JSN code and giving out to our Avoice agent. So let us go back to our retail O N I know you can easily create outbound calls
and you are expert at it. From number will be basically our AI voice assistant
or our retail number. Let us go to Retail,
click on phone numbers, select any number that you want, but make sure that
in outbound calls, you are selecting our agent,
Dental promotion agent. Otherwise, it won't
work. Copy your number, paste it here, as well as which number you're going
to do and outbound call. Again, it is an example, so
you can feel free to add as many number or you can add any random
number as you like. In override agent ID, copy your ID from here. Copied and pasted in
dynamic variables, what we want to get is
obviously these details, name, last visited
and their email. So we need to add
those properties or dynamic variable here. First, we have his
name and make sure the spelling is same that we are calling it in our prompt. Click on Enter, so it
will create a field. And for this example, you
can use any random name. Let's say Lead Jenman it is just to give
our call code to us. Let us add another
property which is the email Similar goes to last visited date. So this will be a
dynamic variable. Let's add our date here and the details
of the last visit. Let's copy it and
paste it from here. Awesome. You can add as many data points or
dynamic variable as you like. But in our example, I just want to keep it
short and simple. The goal here is to get you understand how you can
get outbound calls and add all of the specification as per your liking. All right. Now we will have our call
code on the right hand side. Copy it from here till
the end of Calibacket. Don't include the
quotation mark. We have our two number
override agent ID and our dynamic variables. Amazing. Copy it
and let us go to NATN the body, we will paste it. But make sure you're
not pasting in fix because these are dynamic
variables, right? This will be changing from
every single one of the users. So we don't want
to keep it fixed. That's why I select expression
because in expression, we can use Jason's
code or JavaScript, and we can add dynamic
variable right over there. Click on this Expand
so that we have a good view and
paste our code here. Now let us change
the phone number. To the one we are getting here. Or to the one that will
be in the Google Sheet, feel free to use other
CRM tools like Air table, HubSpot, click upp,
whatever you like. But most of you guys will be
familiar with Google Sheet. That's why I'm
using it. We don't need to change our assistant ID. All we need to change is
this dynamic variables. We have the name email the
date. And the details. The main reason of
using JavaScript is it will change the dynamic
variable for each user. Alright, that's pretty much it. Even you can test the
request or test the step and it will call you with the number that you have provided here. Awesome. So let us go back
to our Canvas. All right. I think we are pretty
good. Even you can have another filter or
another column of new. And once the EI agent has
called that phone number, it will convert it into call or something like,
Okay, it's done. We have done that in some of the previous lecture in make.com. It is similar like
that. But instead, we are using ANI ten
because it is much better, cheaper to use than make.com. All right, I think we
are pretty much good. Let us finalize our prompt. The upper man duration is 30 minutes and we can also
emphasize on the points again, it's worth noting that the
reason you have call is we have previously visited with this reason and on this date. All right. Not to forget we have to give our AVOe Asian
current date and time. Today return time is this
current retain time, and we don't have to create
a dynamic variable for this because retail here is inbuilt current
return time feature, which is current return time. Now, I'm simply
saying convert this, which will be in Los Angeles or American time zone to my
Indian time zone or ISD. Feel free to add
your time zone here. That's say, it will automatically
convert the time into your time zone and
book appointment in that time zone only, not in USA. And lastly, we can give
some expression of Britt section like Um
yeah, something like that. Use British spelling center organization and we are saying that you have the function of book appointment and call and check our calendar availity. All right, I think
that's pretty much it and we have also added
the knowledge base. In knowledge base,
we have mentioned your dental clinic is open to nine to five
Monday to Friday, an book appointment on Saturday to Sunday,
something like that. Awesome, I think
we are good to go and it's time to test our agent. Let's go to Aten and
click on Test workflow. You will get a call with the number that you
have added here. Let's test our workflow. Yeah. Hello, who's this? Hello, mate. I'm Dan from
Lee Gen Man Dental Clinic. I noticed you visited us back in April for some cavity
and gum concerns. Got a moment to chat about a brilliant promotion
we're running. Yeah, how did you
got my number, butt? Well, mate, we have your
details from your visit on April 23 when you came in for those cavity
and gum issues. We're reaching out to
our valued patients with a special offer a
free dental checkup. Would you be interested
in hearing more about it? Yeah, pinot. Brilliant. We're offering a
free dental checkup valid until January 20. Given your previous
gum concerns, it'd be proper smart
to get them checked. When would be a good
time for you to pop in? We can check our availability. Yeah, let's do. Yeah, yeah, I would love to come
and have, like, free dental promo. So
let's do tomorrow. Let me check what slots we
have available for tomorrow. Brilliant. We've got several slots
available tomorrow. Would you prefer
morning or afternoon? Each checkup takes
about 30 minutes. Yeah, awesome. Let's
do at 11:00 A.M. I guess. Works for you. Perfect old book that 11
slot for you right away. Brilliant to your appointment is confirmed for tomorrow at 11 Em. Anything else you'd like to
know about the checkup mate? No, can you check? What's my email
that you have book? Is made, I can see we have your email as Mantom
037@gmail.com. Is that correct? Yeah. So just to confirm
you're all set. Yeah, awesome, man. Awesome. Thank you very much. And when I say his
Mt Cheers Make. Thanks for your time.
Looking forward to seeing you
tomorrow at Lebanin. You see by using our
function of call, it will automatically
cut the call so that it will reduce your
pricing per minute, which is this. It makes sense. Now if I had said no, it will hang up
the call as well. Nothing crazy, but
I just want to show you how we can use
NA ten by using Google Sheet or how we can
try to upsell or promote more offer or more product of your business or
your client's business, simple by using our
EI outbound system. That's pretty much
it. And I don't think there's much more
to cover right now, but feel free to
play around with it as well as in
welcome message. We can say hello name, so it will see my name. I am then from LGM or Led
Genmen Dental Care, LGM Care. Am I catching up you
at the right time? So that it will add
the personalization in the first introduction line. Let us test it again. Hello, Manny. I'm
Dan LG and Kara. Am I catching up with
you at the right time? Yeah, yeah, you are. All right, so I hope this makes sense. Feel free to add
dynamic variable. Even you can test
your LLM from here. For example, if you want to know the current date and
time, you can ask. Can you tell me
current date and time? All right. Right now it's
Wednesday January 8. Awesome. So current date
is January 8, 15:00 P.M. ISD. Alright that's all for it, and I will see you
in the next lecture. Yeah. One more
thing is, you might see last visited
on and details are in form of a dynamic
variable and not are replaced by the one we are having in the Google Sheet. The reason is here we are
not feeding anything. It is going on the back end, we are making our
outbound call from EPA reference and
not from our agent. The agent is just for the prompt only and not for testing. I hope this makes sense,
nothing too crazy. What we are doing is we are
making an outpom call from the backend system and not by using this test
audio or test LLM. All right cheers mate and I
will see you in the next one.
16. Full-Stack Real Estate Multi-Prompt AI Voice Agent: No, in Canvas, we have
a starting point. Starting point basically can
we mean that first of all, worm intro or greetings, and then we are asking,
do you want to buy home in this particular city or
in this particular town, or do you want to
buy home in general? And if the user says, yes, then we can go into this
fine property where we will ask our ER agent to ask user to what type
of home they like, how many number of bedrooms. And then what we can do is we can find that or
extract this data. From Google Sheet, give
them back to our A agent, and then we can say, yeah, we have 34 different listing
at this street address. And if the user is interested, then we can book an appointment
or schedule a tool. But if user is not interested, we can have another node, which is end call. But if user is busy and he or she want to call
back after some time, then we can create
third agent or third assistant for
that particular task. So let's start with
the starting point. So click on Add New State. Now let us rename we
can say greetings. Here, we have to add the
prompt, and in this prompt, we have to define only the task or give some knowledge about what we want to achieve from
this state. Have the tools. It is very similar to what we have been building
in single state. Don't worry. I'm here. It is very easy, nothing too crazy. First of all, we have to define the universal prompt here. We only have to give
three building blocks. The first is we have to give identity to
our EI voice agent. Second, we have to give style or what kind of tone you
want from EI agent. And the third is
response guidance. We will add those tasks and
goals in the promptory. So first of all, let us write the first three building blocks. We can go with Mira and
select your language. I will use this one and feel free to change the model
as per your liking. And I already have
gone ahead and write the prompt for
three building blocks, so I will copy and
paste it here. We can write our
prompt, something like this. First, we have the role. You are named Sarah, and you are skilled real estate
advisor at this property. This is our style.
We professional, create a worm connection, and our response guidance. Stay focused, address one
property expect at a time, and not just ramble along. Be approachable, keep it fresh. This prompt is applicable to all the sub nodes that
we will be creating. All right, it is like
a general guidance or a universal now let us save this and feel free to add the knowledge base and change the speech settings if you like. But it will make this
lecture very lengthy. Let us edit our tree prompt. But first, let us configure
with the welcome message. Let us go with the define one, and we can also give
the first name or we can add that personalization
with our users. For example, hello first name, I am Sarah from SunVewPperties. Am I catching up at a good time? Yeah, something like this. You can also add dynamic variables if you
want to test out and don't want to add
those Google Sheet and make.com scenarios. Click on this Double
Cali brackets and we can name the first
variable and the value. For instance, we have named the variable as first
name, right here. And then we can enter a
value to test it out. I will say my name. Click on save you can also add another variables
as many as you like. Now let us go to promptu. All right. So we
have the greetings. But before giving a task, we just need to give some
context or background details of what we want to
achieve from this state. So we can write something like contacts or background context. The user is calling
to buy in property, and now you can
define your task. I hope this makes sense.
Just we need to give some context or
some brief overview about this state to our LLM. Then here we have
task and goals. First, we need to
make sure that we get important information
if the user is interested in buying
property or not, and we don't want
to ramble along. Like we have this listing here, we have this listing here. No. We have to first
ask the user gently if he or she is interested
in buying property or not, or they want to end the
call or they are busy somewhere or they can
reschedule the call afterwards. We're going to define here. The first task is to
greet the customer. Extend a worm greeting to your customer and you
can see I'm adding the dynamic variable
that we will be using in the call and ask this if it is a good time
to call or not. If not, transition to callback. What we will do is we will add another state and
it will transition. Make sure you are using the
word transition or direct to this particular state
and let us name this state as callback,
so we will do that later. But what it will do is
it will transition. You can simply connect the
state by using this node, and it will pop up
the edge branch. I will explain what is edge. But first of all, let
us complete the prompt. If it is not a good time,
transition to callback. But if it is a good
time, then ask the user that they have shown interest in
buying property, and how can I assist
them further. If is informed first
name that the reason for your call is because they have shown interest in
buying property. Therefore, you're
reaching out to see how you can
assist them further. Now, second point could be if the user is interested
in buying property, transition to search
property state. We'll add another state. This will be search property
where it will search and find relevant property that our user has
been asking for. And then we are going to add another stage which is
appointment booking. But as of now, let us
focus on these two. And if user is not interested, call function of
call to hang up. We can add the
function from here. You can select the call the call when the user is not interested or you are instructed to do it. All right, so we it
the end call function. Make sure the name
is similar to this. Lastly, we can add
another function of transfer to human or
transfer to agent. For instance, if
the user want to talk with a human or an agent, it will transfer the call
to human repacitative. Let us add that tool as well, which is call transfer. Make sure the name
is similar to this. Add your number here, and what is the transfer
time that you want? Do you want a cold or
do you want a worm? Worm basically means it
will give brief context or brief summary to the person who will be attending the
call with our user, you can use retail
agent's phone number or transfers his number. Alright that's pretty much it, I will again summarize
what we have done here is, first of all, we have
given brief context about our situation.
Then comes the task. First, we are greeting
the customer, asking them if it is a
good time to talk or not. If es, then we are informing them that you recently have shown interest
in buying property, and thereafter, we are
reaching out to help you. And if the user is interested
in buying property, we will transition
to search property. And if our user is not, we will use the
end call function to end the call. Awesome. So that's pretty
much it. Now let us configure these two states. First of all, let us rename
it search properties. Again, we have to give context or background information first. Then we can start with task. Our task is to give listing similar to what user
is looking for. For instance, if
the user is looking for Seattle area
and he or she want one room bedroom and
their budget is our EI or our EI voice agent will gather all the listings
that is similar to it, and then it will response
bad to our user. Our task will be ask questions
about the property needs, which is first of all,
the location area. We have our location
as well as our area. Then the type of home that
they are looking for. That can be apartment, duplex condo, townhouse,
whatever they are looking for. The number of bedrooms, any specific amenities like gym, pool, garage, something like it. Feel free to adjust the column. I'm just giving you an example. And then their budget because it is the main thing for
everyone. All right. After gathering all of
this question from users, what we will do is we will call and make.com scenario automation that will find all the
relevant similar listing to what user is looking for. What we will do is we will add and function custom
function here, let's say, find property. We can describe it as find relevant properties that
the user is asking for, and this is where
our URL will go. Let us go to make.com scenario. We are going to
start from scratch. Again, you will know
what we are going to do, which is we have to
grab the webbook obviously and then
paste it into our URL. Let's say find properties. Simple as that, copy it
and click on. Save it. Let us rename as well. URL here in parameters, what we want to extract
from this function. We want to extract the
property type, sorry, the location, the type of home, number of bedrooms,
amenities, budget, that's it. We have to write
custom query code or Jason schema for that. Again, don't worry,
it is very easy, just go to Chair GPT and tell it or you can
go to Cloud as well. Just what you can do is copy this as well as you
can copy the examples. After you have given enough
context on how to write GSN schema for EIvoye
agent on retail EI, you can say, give me my SN schema for
finding out the type of home number of Batums amenities budget,
and it will do that. All right, so we can say,
now I want you to write. We can enter our prompt as well. It will automatically know. And retail EI makes
it very easy to use parameters because we have
this format SN as well. So it will automatically
format our code or JSN so that our LLM can
understand it in much better way. Here we go. We have the
type which is same. This thing will be always
same in our JCN schema. Property will begin the same. Then we have the type which
is string and description, the user is looking
for this property. Then we have the property type, which basically means
the type of form after that number of bedrooms,
amenities, and budget. Alright so let's copy
it and paste it here. When you see like
it is so easy to create JCN chemo by using AI. Nothing too crazy and
click on format JSN. Let us disable this feature
or speak during execution. Awesome. That's it. Now
let us call this function. Don't forget to call
function in your problem. Otherwise, our AI
won't know what to do. Once all necessary
information is collected, call this function and
the function should be run with following inputs
area property type, number of bedrooms,
budget, and amenities. Why we are using function is these specific things only will get transferred to
our mag.com scenario. So what this function
will extract information is area
property type, number of bedrooms,
amenities and budget. What we can do in our mg.com scenario is we can first of all, match those with
our Google Sheet. Let us connect our Google Sheet here what we are doing is we are searching for rows
and matching them. So we can use Search Row, select your account, as
well as your spreadsheet. I'm using real estate
properties in USA. And how we are going to
use look alike listing in our Google Sheet is we
will filter them by area. For instance, if
you are using look alike feature of
number of bedrooms, it won't generate
proper answer because first question we are going
to ask to our user is, which area do you
want to live in? If they want to live into
let's say Portland or Tacoma, we are going to use look
alike feature of area only. Select the column of area. Equals to the result that we will be getting
from that Weboo. Right now, we don't
have any fields, so we'll do it later on. But as of now, click on Okay. Let us go back to our retail. The third task could be
recommend this property to them. Only mention the
following information, which is street name, price, and related amenities. We don't want to bust out all of this information because
it is unnecessary. They already ask for a number of bedrooms could be like five. We don't want to repeat that information
back to our user. So we are only repeating with information which
is street name. Here is a street name, price
and related amenities. An user is not satisfied
with the recommendation, allowed to change
them the criteria and call that function again. Last step could be if they are interested in
buying property, we can schedule a call or booking meeting or if
they are not interested, we can end the call
right over there. Ask them whether
they are interested in booking an in
person tour or not, I s transferred to this
appointment booking state. We are going to create
that just in a second. And if not, call ncallFunction
to hang up politely and say we reach out if any interesting
properties pop up. And if no, call
the ncallFunction. So we have to add that as well. And the user says no. Awesome. Now let us create another state for
appointment booking. Click on New State, and you
can delete state from here. I like this pretty much it.
I think we are good to go. Now let's connect
these two states with the edge information. I will explain what our edge. He basically means what
information do you want to pass out from first
stage to the second one? For instance, if you want
to pass out information like if the user is looking
for condo or apartment, and you want to pass
that information to the next agent in the
sequence, we can use edge. Let us open edge. This is a pass condition. The condition that triggered the transition to
the next state. We can describe the condition. First name is interested in buying opportunity
or property. Because this specific
agent is only for appointment booking if
the user is interested. As well as if you want to give additional information to
this next agent in the line, for example, the
number of house, the street address, everything, feel free to use
Jason's schema for it. Again, go to hat
GPT or Cloud and write your JS schema
here. All right. But right now I'm not doing it, otherwise, it will make
this lecture very lengthy, but use the example,
use the object or use the property that you want to shift to the next state. That's simple. Let us write
the prompt for this one. This is appointment booking. Now, I guess you
have provided this, which is to add the function of check availity
and book availability. Let us give first contexts. We can write first name, wants to book
appointment as they have or they are interested
in buying property. Now we can add our task here. As user when they are
available for the tour, call function, which
is our check availity. Again, this is very easy. I have copy and
pasted from one of the earlier proms that we
have used in the course. So criqonEd and let's
add, first of all, check avaibility and book
appointment on our calendar. That's pretty much it
to your EPI keys here, event ID, and your time zone. We're calling the end call
function here as well. If the user doesn't have
an equation, end the call. As well as make sure the name of the function is similar to
one that you are defining. Awesome. And the
next branch was if the user is busy right now
and don't have typo talk, what we are doing is we
are scheduling a callback. So as you can see here, if this is not a good time,
transition to callback. So first of all, let
us f name to callback. We will give background or context and write
the task after. Our background is Monday
to Friday nine to five ISD and you cannot schedule a callback that's in the past. The task is ask the user for a good time to call or
schedule a call back. Check if the user has provided the time within the
business hours. If not, go back to the step
one to get the time again. And if the user has provided
with the call time, we can end the call
right over there, so we can use and
call function here. Otherwise, our Avoice
agent won't cut the call it will increase your pricing of
your Avoice agent. Although, that's pretty much it. Congratulations.
You have just built your multi state EI
agent, let's test it. Click on Save, even you can add another node or another
branch here, for example, if the user want to submit a
question or submit a note to the founder or to the person who has this property,
we can do that as well. For example, let us
COVID Submit a note. We can say something like ask the user what node
or question they want to submit to the owner if the node content is
not already provided. Once the node is provided, we're going to confirm
back with the user. And we can easily store this
information in post call analysis and then give that post call analysis to
our Google Sheet. All right, that's
pretty much it. We define this in
the starting stage. If the first name wants to submit any notes or
question to the owner, then we can say transition to this state of submit a note. That's pretty much
it. Feel free to add as many branches
in your promptry. You can see we are able to do so many things by using
multi state agents. We won't have to create
separate assistant for each of those tags, and if you're going to add
all of this information and all of the prompt inverse
single state agents, I promise it will
hallucinate and provide wrong answer and will decrease the efficiency of
your Airboye agent. That's why we use
multistate agent. Now let us click on Save
and then connect it. You can also connect
appointment booking state or assistant
to submit a node. We can write it
here, for example, if first name has any e
or doubts to the owner, then rasition to this state. Awesome, don't
forget to save it. Otherwise, it won't work. Yeah. Now, let us test
our AI voice agent. Yeah, but one thing
is remaining is we haven't set up our
make.com scenario. Let us trigger our webbook because we don't have
any payload here. You can see we don't
have any data to map. So let us trigger this, click
on run this model once, go back to our AA Voice
agent and click on test. Even you can use LLM
to save your time. I want to buy an
apartment in Seattle. What we are triggering
here is we want to, first of all, get specific
amenities and everything. You can also see
tool invocation, transfer tool search properties. Now, make sure that you are triggering these
specific things. Otherwise, your EA agent or
your webbook won't trigger. So we have to give all of this information
just as an example. Budget is 300 and for amenities, and these are the
things that our AI voice agent will speak. But to save over time, we are
using this test LLM option. I did pool and three bedrooms. Let us send this
and then it will trigger you can see it
trigger our fine property. And the arguments or the
specific collection that we have got is area
specific amenities, property type, number of
bedroom, and the budget. Awesome. And now we're
able to find out or you can see we will have the additional fill of mapping. And now what is our look
alike option is area, because if we are
going after pools, it can have pool in CATL, it can have pool
in another area. But the user is interested in finding the property
in this area only. So that's why we are
going to use area. Awesome, that's pretty much it. Click on Okay now what we are going to do is since we
have this information, let us run this model
one. I will show you. For Area, it is select Seattle, it will pull all
the information or all the columns that
are in Seattle. So we have one, we have two, and you can see it is mapping
all the fields as well. A the thing is they are
in different bundles. We want to do is
we want to collect them in only one
bundle or one array. What we are going to
do is we are going to use tools to
combine all of them. Now what we will do
is we will aggregate all this information in one
JCN format so that we can give the JCN to JTPT which
will act as a brain of our Airboye agent to finding out L properties that the
user is asking for. So let us add another module, Let's search for aggregate. Go to JSON and aggregate to JSN. The source module that we are sourcing from is Google Sheet. Select Google Sheet. And then click on Create data structure. Let us add specification, for instance, name
of the property. So we have to add all
of this data structure. Just for example,
I will show you the area obviously
the type is text. Then let's add another item. First of all, what we
have to do is we have to add all of this
thing, I will show you. We have to add all of this
data structure, example, area, full advice, type of form, number of condo, everything, and paste it one by one here. And why we are doing is it
will format in a JCN string. For instance, we can
specify the data type. Number of bedrooms would
never be a string. It will be always a number. That's why we can define the
data type in JCN schema. Same goes for the budget. We have square meters. All right, so let us go back to our data structure. We
have defined the area. Now it's time to go for full as. Then type of form, and don't worry you won't
how to create any of it. I will be providing this template in the
resource section. So make sure to check it out. I know it is a manual work, but you only have to
set this up for once. Thereafter we have budget
and lastly, square meters. So all the information that
you want to give to Cha GPT, add into the data structure, click on Sive let
us use Cha GPT. You can use Cloud as well. Connect your account as well as the model
that you like to use. I'm going to use foo. In messages, we can
define by two messages. First is system message,
which is hat GPT, and the second is user, which will be our user. I will show you the rule we are going to use
first of all, is system. Here, we are going to tell
our hat GPT how to give out the response of the property
that user is looking for. For instance, we can say, you are a seasoned real
estate representative. Your responsibility to determine the user's property
preference and provide properties that
fits those tastes. Important thing here is, you must return every property that meets the user criteria if there are several because
we are going to use, for example, amenities,
number of bedrooms, type of apartment, and make sure your response is readable
by using bullet points. Just output the
appropriate properties only and in one line sentence. Awesome. And the next
thing we can add or next context we can
provide to check GPT is, what specific things
we want to output. For example, we
only want to output the street name because
we don't want to output number of bedrooms because we don't want
to become repetitive. Otherwise, our AI voice agent will sound like a
robot or repetitive. We only want to
output, let's say, full address, the budget, and the amenities
because the area will be already filtered out
from our Google Sheet. In role of user, we can say something like,
here is the user's preference. First is property type, let us add the field here, which is property type. Then number of bedrooms. A amenities that
they are asking for, you can see have talk in our LLM which is pool
and lastly budget. Now, where does our Chat GPT will find those information
from Jesus schema? Because in Google Sheet, it will already filter
out by using the area. I will display those results
who are in the similar area. Here are the properties that we have available in that area. We are those in our SS strain? All right, so it
is click on Okay. I hope this makes sense. We are defining
the role or we are defining the persona of our
Avoice agent and we are giving the user preference
to give response in those only now click on
Okay. That's pretty much it. Lastly, we need to send
this information back to our Avoice agent
via webookRsponse. As you know, Webook response
and we can see message. Here is the result of chat GPT. So make sure you're
mapping the field of open EI and then
click on Okay. Now let us save this. Let
us run this model once. Let us go back to our LLM. And the best part of using
test LLM is you can save your response of the LLM so that if you are doing
for future training, you can always come back and look whatever the response were. I want to buy property in. Let's go this time in Portland. Make sure it is listening
to our response. Apartment, garage,
four bedrooms. And my budget is $400. So you will be able
to see it will trigger our automation
in make.com. So the current
state is greeting. Hello Manthan, as you can see, it has added the dynamic
variable, we added here. I'm Sarah from SunsidePperty. Yeah, so we can say, I
want to buy property. Seattle you can also see all the transition that
is happening in those states. It is transferred
to such property. Now, the type of
property, for example, let us go for condo, two bedrooms, we like a gym and our budget
could be, let's say, 400 k. You can see I have found some option for Imanthan here are a
few condos in Seattle, Maple Street, price
is similar like this. Fine Avenue price at this. Let us go to Google Shot. Alright, so let
us filter out by. Yeah. So in Seattle, we have condo number
of patoms It's two. A amenities, it has gym, and this is the
price. Awesome, guys. So this is how you can
build multistate agent in retail AI that will
fetch the listing, similar to what
user is asking for. We are using this scenario, and don't worry, I will be attaching in the
resource section. As well as if you
want to further go on and book an appointment,
we can easily do it. For example, we
can arrange an in person tool for one
of these properties. We can say, Yeah, let's do it
for first one Maple Street. Tomorrow at 4:00 P.M. Yeah. It is asking for name. Okay, it is asking
for full name because it already has our
name in our email. Okay, it has booked
the appointment. Now let us go to this node, which is submit a node. If you have any question or need to reschedule,
please free to follow. I just had one
question to owner. And get that
information you need. I just want to have coffees and cookies
when I am coming tomorrow. I love that month and
we will request for coffee and cookies during
the tour tomorrow. All right, thanks. Yeah.
That's how you can use or that's how you can switch from one state to another. Alright guys, that's
all from my side, and feel free to
play around with multi state agents
because you can build more robust and more reliable AI voice agent in retail AI. All right, so I hope you
found this lecture valuable. If you still have any
doubts or concern, just let me know and we are
always happy to help you. Bye bye. Take care. I'll
see you in the next one.
17. The Perfect Receptionist: Hi, everyone. It's
month and year. And in this lecture, I'm going
to show you how to build a very powerful use
case of AI voice agent, which is IVRT or call routing or call forwarding internally
in enterprise business, or if you're building Avoice agent for enterprise business. So let me show you what I mean. For instance, you have your Avoice agent as
a receipt enstwide. So this is our Air voice agent. Now, if any customer client or any prospect calls
to our Avoice agent, let's say customer calls to our Avoice agent
our prospect says, I want to talk with
this particular person or this particular department, so our AIVice agent will be able to call forward
or will be able to call route to particular person
to particular department, whatever you guys have
in your IVR thing. All right, this can be AX. If our customer want
to talk with AX, our receptionist, first of all, will be able to answer
all the user carries and concerns as well as we
can add knowledge base. But if our customer really
want to talk with this person, it will forward the call to AX. Same goes to if the
customer want to talk with Manthan let us draw Manan here, if they want to
talk with Suprava if they want to talk
with Vivian She, Basically our receptionist
will be first of all, able to identify the
customer if they are in our lead list by
using inbound calls. They will be able to handle all the user queries and concerns, plus they will be able
to handle all the call forward that is known as IVR. All right, so this is actually very important US case because in any
enterprise business, there are so many
different departments. There are so many different
people working there, and they are always
having one receptionist. And if that prospect customer or client want to
talk with them, the receptionist always
forward the call to T. But now by using
AVOice agent, fire that receptionist
and use this IVR thing. All right, so let's
build this step by step. I will show you everything.
Let's clear our whiteboard. We are going to
use A ten to call the Webbook as well
as to respond to our retail A voice agent and any CRM solution
that you are using. In our example, we are
using Google Sheet. Let's create a multi
prompt agent for this. Yeah, there is
this new one thing which is conversation
flow agent. We'll cover that as well. Right now, it is still in Beta. That's why it is not
fully functional. But yeah, we will cover that. Als let us start with
multi proromt agent at the start from blank. Let us rename it as
choose the language, choose the model, voice, whatever you like,
and the model. I have already gone ahead
and created the prom for you so that you don't have to and we don't waste this time. Again, in multi prompt agent, the first three building block are common or universal, right? The things that we
are going to add in this promptry is
basically for task only. So for each agent
or each assistant, we will assign particular task. But for this first
three building block, which is identity style
and response guidance, it is like the universal
you are saying, Hi, I'm Alex, your friendly
neighborhood IT expert. I style guidance, mix it up, chat like a friend, response, guidance, stay true,
keep it flowing. Even if the message
are bit calkar, figure out what the user means. This is very amazing
line because sometimes if it is confusing, it is still able to try to interpret or comprehend
the user's conversation. So let's save this, feel free to add the
knowledge base here, but the main function that
we are going to use is IVR or press digit,
IVR navigation. So click on it. So this is
the name and the description. Navigate to human agent
of sales department. No, we don't want to have a particular
department as of now, so navigate to human agent. Alright, let's save this
and in welcome message, we can say EI begins
with a defined message. Hello, or how can I now make sure that this function
of press digit is in the universal agent
or in the main agent and not sub agent that we are going to use
in the promptry. Also, we are not going to use any webbook in the
universal agent, we are going to add the webbook in this particular promptry. All right so let's start
with our promptry, let us start with a new stage. Basically, I really like to have the first stage as a greeting
or worm introduction. Let us rename this as
worm intro, awesome, and now next state will be particular person
that our customer or prospect want to navigate to. So we can say specific
name or specific person. Let us connect this, and we
are going to use edge also. For instance, when
the user has said, Let's say I want to
talk with Manthan, we want to parse
this information of that name to the next stage,
which is specific name. That's why we're going to
use the edge function. So let us write the
prompt first of all, so we need to give
some background. If you don't want to give
background, that's fine. But here in this prom, all we need to do is we
need to add that task, which is the fourth building
block of our entire prom. Let us add background
first of all, so that it has some contexts, we can say, Hi, you are ALEX from IT
expert or IT solution, whatever you want to write here. You deeply care about
the user business and the technology needs. Now we can give some role
or we can give some task. For instance, the role here is attend the incoming calls from the user customer and direct them to specific person
that the user is asking. Here we will add the task. How should it navigate
the conversation? What step or what task
it should achieve? First task is obviously to
introduce with firm greeting, the second task could determine
the purpose of the call, if the user want to navigate to specific person or
specific department, determine the
purpose of the call, and if the user want to reach to a specific person or name, transition to this state. It is important to call this agent name
here in the prong. Otherwise, it won't know
where to transition to. This is the name of our agent
which is specific name. All we can also add some
error handling as well. For example, if the user
has general question, attempt to answer using
the knowledge base. If the user's query
is unclassified, ask for follow up question
to gather more information, and based on the response, transition to appropriate state. But as of now, we
have only one state, so let us you can add another state of to
book an appointment to schedule a call back if that specific person is
absent or is on leave. Yeah. So possibilities
are totally limitless, but as of now, let us
cover the main thing. All right, so we are
done with our prompt. Another thing here
is we are gathering that specific name thing
or specific person. The important thing to keep
in mind here is we are collecting the person name
that it want to transition to. That's why we have to use
edge so that we are passing that information of
the specific name or person to the next state. So click on Edge, let us remove
this and we can say pass the specific given by user all and here we can add our
JCN schema or parameters. For example, I will
show you how you can write this type of
parameters on your own, even not using Chat GPT. Let us open Adjacent schema. Always do example one,
and let us copy this. I want to show you
how you can write this type of JCN
schema on your own. Allright here is our
example one, Jasen schema. I have copied it here
and pieced it here. What I will do is I will rewrite it with you so
that you will understand how to rete it for
another use case another edge or
another function. What we want to pass out
here is obviously the specific the type object
will be obviously same. The property will
same. You don't have to change anything yet. The only thing you
want to change is specific function that you are calling or specific tool
that you are calling. For example, we are
calling for specific name. So just type specific name. In this example, it was for
appointment availability. So we are just changing the variable or we are just
changing the tool name, which is too specific name. The type here is stream,
so don't worry about it. I description, we are
simply saying user want to contact to specific name or
person. Yeah, that's it. That's all you need to
do. In description, it is NLP or nature language. You don't have to write a
code or Jason schema for it. Just feel free to
write your own words. In required parameter, we
have to call this again. You need to make sure
that we are gathering this information and then
then only passing this. That's why it is
saying required. All right, I hope
this makes sense. Again, it is just
calling the same, which is appointment avib
appointment availability. So we are going to
use specific name. Yeah that's it. That's all you need to do and just copy it. Even if you want to red it for another use case or
another example, you can do it on your
own, nothing too crazy. The type is always just
as it is which is object, the property will be the same. The type of the function in most cases will be like string. All you need to change
is the tool name and the description.
Yeah, that's it. Let us copy this. Let us
go back here and let us paste it here instead of this appointment
availability. All right. N vitilE provide this
format SN so that our retail ELM will understand
it in much better way. So click on format GSN
and Tada. There you go. That's all you need
to do to use edges. And now let us write the
prompt for specific name. So in specific name, we have to make NATen orm.com scenario
together from our CRM, like, this is the extension. If the user want to
talk with Manthan, the extension is 100. So we need our AA voice agent
to press 100 on that phone. So it will transition to Manan. If the user want to talk
with let's say Vance. VNG extension code is 101. So our A voice agent will
press 101 on its own and will transfer the
call to Divan C by using this extension of 101. So we need to fill
this information in any CRM or Google Sheet. I will show you. Let us
create any Google Sheet. Let's say IV. We can say extension and the
name of the prospect. Feel free to add any extra
data points, for example, the department, for example, their birth date,
whatever you like. So let's say the
extension is one, two, three, the name of
that particular person. Let's say the user is saying, I want to talk with Manan, I want to talk with Vivian She, I want to talk with Sprawa. I will dial this
extension on its own. Then then it will only
able to transfer the call. Let us write the prompt. We can copy this background. We can copy the background from Worm introduction stage
as well as the rule also. Go to specific name stage,
and then past it here. And now the task is to trigger that IVR or press digit tool that we created
in the universal prompt. I will show you click on
Save, let us go back. We need to call this
function of press digit in the same case sensitive which
is press under scoe digit. In task, we can
assist the user to understand what specific
person they want to talk to or any department and use that press digit
function tool or trigger that press function tool and
navigate with extension. Assist the caller by
confirming the requested name, retrieving the specific
names extension. So for instance, if someone
is looking for the VNG, it will get or retrieve
this extension of two, and then it will
transfer the call by triggering the IVA
with pres digit tool. I hope this makes sense. Again, I will repeat,
first of all, it will gather the
requested name which is the VNG in our example. Then it will get the
specific name extension this CRM or Google Sheet, which is two and
then it will dial that two number or two
extension rearing the I wear with the press
digit tool that we created in the
universal agent. All this is as simple as
that, nothing too crazy. Second step could
be confirmation of the name before
dialing the extension. For example, are
you looking to talk with Vivian she write
something like that? So confirm the name of
the caller, one to reach. Trigger the tool that we will
use in make.com or in ten. We haven't named the tool
yet, let's say, extension. Trigger the tool extension. To search for the database
of specific names extension. It will understand
what it needs to do, which is get the
name of the user and search for the extension
by calling this tool. Fourth task is after
getting the extension, it needs to transfer the call, so it can say something like
after getting the extension, it will say, amazing thank you. Let me transfer you to
this specific name. Please wait a sec.
Then fifth task could be a kind of
error handling. For example, if the
extension could not be found in our database,
if someone is saying, I want to talk with Albert and if Albert is not
in our database, it will say, I couldn't locate the extension for
this specific name. Could you please try again yeah, that's pretty much all you
need to do for this prompt. So again, I'm just
quickly going over. We have the
background that role. The task is, first of all, assist the user by confirming the requested name and retrieve the specific
names extension. For example, if they want
to talk with suprava, get the extension of supravas and then trigger
the extension tool. So we need to create a
tool custom function so we can say extension, make sure the name is the same
that you are calling here. If you are calling another name, just change the name
here in the prompt. And then let us give
the description. We can say retrieve
the phone extension. What's wrong with the spelling? I do the phone extension of specific person or specific
name asked by the user. And in URL, we have to add a
Webo URL of anten onmke.com. So let us go to ANATen. What we are doing in ANATen
is obviously, first of all, we are going to
get the Webook URL and we are going to
connect our Google Sheet, and then we are going
to send the response back to our retail EA agent. Same thing that we are
doing in mint.com, but this time by
using NTN because it is much cheaper and
better than mic.com. So search for Webbook and
use this trigger one. So the method is always post. This is the test
URL. So copy this. Let us go back total
and paste it here and respond by using respond to Webbook node and
not immediately. Alright. And now for parameters, again, I will show
you how you can write parameter from scratch. So use this example
one, copy this. Let's paste it here. Now, again, what we are looking
for is specific name. The type string, and
the description is get the specific name extension or specific person extension the caller wants to
reach. Yeah, that's it. Again, let us copy this name of the argument
and paste it here. Let's copy this. And instead of our example, paste it here. Click on Format JSN and it
will format our JSN scheme. We have already added that in the prompt.
Amazing thank you. Let me transfer you
to the specific name. So we don't need to edit here. Yeah, awesome. Congratulations. That's
all you need to do. That's pretty much it.
If you want to add the function of N call
or transfer call, feel free to do it. Awesome, that's pretty
much all you need to do. Now let us test
our Avoice agent, and let us triggermk dot Sorry Let us trigger
our NAT and workflow. We need to connect that
with Google Sheet as well. Click on Listen, and let
us test our Avoice agent. We are not going to
use the audio one because it takes so
much of your time, so we are simply
going to use the LLM. We need to first of all, click on save otherwise it won't work. Let's say, I want
to talk to Manan. And here we can easily say
how it is transitioned, how it is calling the tool. So it is calling specific name. It has gathered the specific
name which is Manan. Got it. Let me confirm. Are you looking to speak
with someone named Manthan? Yep, it is called our tool
of extension and the result is obviously no because we haven't connected with
our Google Sheet. Right now, there will
be no response to the web because we haven't connected with our Google Sheet, so search for Google Sheet
and let us connect our CRM. Here what we are doing is we are searching or
reading from our data. Click on Geos in Sheet
select your Google sheet. And then let's add a filter. The column that we are searching from is the name, obviously. And the value is the one that we will get from our webbook. So let us test our workflow, waiting for you to
call this test URL. So let us call this again.
Let us delete this. Even you can save
this result as well. I want to talk Tomanthan Yes. No response to the
Webook note found in the workflow. All right. So the reason why we are not
getting any response was we have selected from using
response to Webbookne, but we want to
responds immediately. So now let us test it again. We will say, yes. Awesome. Now node
executed successfully, we have got all of
this information. The main information
we are looking for is this argument of
specific name Manthan. The extension name is
obviously extension, yeah. So let us go back to retail, and you can see it has
invoked all the tools, which is press digit. It has pressed randomly
digit one, two, three, four since we haven't connected
our Google Sheet yet. So let us go to Aten. Make sure the respond
here is immediately. Then then it will only able to get the
information quickly. Now let us change it to using
response to Webook node. Now let us connect
with a Google Sheet. The column that we will be matching is the name, obviously, and the value that we will
get from that argument, which is the specific name. Awesome. That's all
you need to do. The specific name
is Manthan let us send the response
back to our Vital EI. Search for Webbook here, what we are sending
is we are sending, Hey, this is the extension, transfer it to this particular
person's extension. So we are going to use Jason, we can say extension is the extension value that we
will get from Google Sheet. Click on Execute previous
node so that it has all the payload and the
extension is this one. So simply past it, sorry,
simply places here. That's pretty much
it. Yeah, it has place outside the Cali bracket, so place it in between
the quotation mark. Awesome. The extension
is one since the name was Manan and the
extension was one. So it will transfer the
call to one number. Alright, let's test this
workflow once again. Let us click on
First of all, Save. Let us test it again, waiting for you to call the test URL. And now it should
transfer the call to Manan or whatever
the name we are saying. So this time, let
us use the VNG. First of all, it will
confirm. We will say, yes. If it is able to find
out Vance's name, it will press digit two and
it will transfer the call to two because we have divanc
on extension number two, and we can see the results here. The name was Divanc
and extension was two. Yeah, and there are no response here because he didn't
call this thing, which is amazing. Thank you. Let me transfer you
to specific name. So what we can do
in order to prevent this is speak during execution, enable this, and you can say, let me transfer it to
the specific name, et cetera, et cetera. Alright, I hope
this makes sense. I hope you found this valuable, and I hope you understand
what we have done here. We have, first of all set up our EI assistant
as receptionist, and if some customer
or client want to transfer the call to specific department or specific person, we have used that IVR or press digit tool so that
once our EI voice agent has get the name of the person
that the customer want to talk to in our
example, Man transfer. First of all, they will
find the extension of Manthan from our
Google Sheet or CRM. It will transfer the
call to Manthan by dialing that one number
in the phone number. It will run automatically. You don't have to
worry about that. And now Manthan will able
to talk with the customer. All right, so that's
what we have done here. Bye bye. Take care, and I
will see you in the next one.
18. Mastering Multi-State Agents: A Step-by-Step Guide: Welcome back, guys to
this ultimate lecture of multistate agent or multi prompt agent that
we have been waiting for. Multistate agents are basically a level up of single
state agents. By using them, we are
decreasing the chance of hallucination close to 0%.
I will show an example. If we were to comprise
all prompt and all of the tasks that we
want to achieve in this scenario in
one single prog, it is more likely to generate wrong answer or more
likely to hallucinate. That's why we are dividing
our multi state agents into multiple assistant
combined in one force. We are dividing our agent
into, first of all, greeting customer or
customer service rep agent, then we are asking our customer for any particular poster code. If postal code exists, then we are booking
them an appointment. If not, we are calling them
or we are taking a note of callback so that our
customer service rep can reach out to them further. And then we are ending the call. So you can see we have
created around, let's say, our first voice
agent, our second, this can be our third, and
this can be our fourth. So by using multi state agents, we are decreasing the chance of hallucination because all of this agent has only
one particular task or one particular
goal to achieve. If we are giving only
one specific things to our Avoice agent, it will surely achieve that. But if you were to
comprise all of this information in
one single prompt, it is more likely
to get confused because there are
so many things that our Avoice agent has to follow and will more likely
to get hallucinated. But those of you guys who don't know what
is hallucination, hallucination basically
means our LLM is getting confused and will give wrong answer or come
up with new answers. That is what is known
as hallucination. Alleles start building
our multistate agents. We can create an agent, and until now we have been
creating single prompt agent, it's time to create
multi prompt agent. Let's start from blank, feel free to play
around the templates as well. They are great. Multistate agent
that we are creating is it will first check
for the Pincode, right? I will check for the
Pincode if Pincode exists and if that
service is serviceable, then it will lead to
booking an appointment. If that Pincode does not
exist in the service area, then it will schedule a call back with customer service rep. So that's our entire
goal or scenario here. So let us take an example
of solar company, right? So create a solar company, Multistate agent or
multi prompt agent. Let us use Claude,
select your language. Or even we can use for real
time. Yeah, let's do it. Hi, Shimmer here.
You're friendly. Welcome. Aloy at your service. Designed to simp Hey there. Echo. You're welcome. Aloy at your
service, designed to simplify your tasks and
answer your queries. Let's use. Now in
multistate agent, the first three building
block will be same. But the last building block, which is stash guls
will be different for each agent or each assistant that we will edit
in the promptery. So first of all, let us write the first three building blocks. It is generic, it is a universal prompt that all
of our multistate agent or all of our agents that
we are going to create in this promptry will follow
this universal prompt. We are saying you are friendly, polite and smart assistant
for Lead Genmen which is a solar panel company based
in London or United Kingdom. Lead Gen may help saves
customer saves on light bill and hit a
host with Sona pans. Already, then we are
defining the persona, as well as we are using
the response guidance. Right now, in order to
decrease the hallucination, we are using these Nato
phonic techniques. For example, if you
are saying if you have a postal code of
let's say L for V. I will say L for Lima, four, and for Victor, so
that we are decreasing the chance of wrong
input by the user. So that's pretty much it, feel free to play around with
the universal prompt. Make sure to save your prompt. Now in function in
post call analysis, again, feel free to test it out. But as of now, let
us edit our prompt. The one thing here is if you're selecting four or real time, we are not able
to test with LLM, let us change it with Claude
because we are going to use test LLM most of the time to save us some money
as well as time. Because if you are going to use test audio in your
retail dashboard, minutes will be deducted,
but we don't want that. Test with LLM is a free option
to test our AIVoice agent. Let's use Obity section, right? Good day. I'm Amy. Hi, I'm your AI
companion, Dorothy. Program to provide solutions and guidance whenever you need. Awesome Am Dorothy for GM or Lead Gen Man solar panel that
is edit with the Pmtree. This is our plain canvas
and we have to build our entire promptr or list of agents that
we want to achieve. But it is very easy and it is even better than
single State agent because in single
State agent we are comprising so many
proms in just one page. But here we have the freedom
to add as many tasks for each individual or
each assistant freely. So first of all, the first stage will be known as starting stage. Their starting stage we can segment out by
different assistant. So Clicon let us rename it as worm introduction
or worm greetings. Now, you don't have to
define identity, style, or response guidance because we have already defined that. All we need to do
is add the task for this particular our
assistant. Makes sense. And trust me, it is even
better and easier than writing prompt for single state agents because in single stage, we are adding all the prompt
in just one clear page. But here we have the
freedom to add as many tasks for each
assistant that we like. Before writing our
tasks and goals, we need to give some
background information or context to our Avoice agent. We can write set a
friendly tone and introduce Lead Gen Men care and start begin qualification. So qualification basically
means we are checking if our customer is in our postal code or
serviceable area or not. So our task and key
action could be read the customer and
introduce lead Genmencare, ask if they have any
equation or not, and if they don't have occasion, ask for the first three
digit of their postal code. Here I'm taking an
example of postal code. We are sorting our customer
or our serviceable area. For example, we are providing service or we have service
center in those areas, and these are the street names. I just came up with the name, so don't laugh on this
name like Macbook Street, Water Street, or N Street. Alright, let's come
back to the point. Now here we can also add the N call function or
transfer to human if our customer want to talk to a customer service
rep or a real human. So we can say something like if the user wanted to talk to
a human or customer web, call function, and here we can
add the function or tools. So click on add it is similar to what we have been using
in the functions. So if you click on
call transfer yeah. Make sure the name is the
one that we are using here. You can use cold transfer
and BOM transfer. Feel free to add your customer service rep
or your number here. Awesome. That's pretty much it. Congratulations,
you have created the first assistant
in multi state agent. Alright, we have sought out
with the starting stage. Now what we want to
do is we want to kind of branch out from
our starting stage. We want to check
that if our customer is in the postal code or not. If he or she is, we want
to book an appointment. If he or she is
not, then we want to schedule a call back.
So we will do that. So the first thing is
we want to check for the postal code if the lies
in our serviceable area. This area or not. All
that makes sense. So let us add edge from here. So if you click on it,
this is kind of edge. So click on, first of all, new state is Reni met
zip code checker. Again, we have to add some context or background
information, and we can connect both
of these stage by edges. So this line is known as edges. Edges basically means what
information you want to pass from the initial stage
to the next transition stage. For example, we want to pass information which is
the postal code that the user has given and
we want to pass it to our Zip code checker
stage or assistant. All right, so we will add edges. But wait for it, let us write the prom for our
Zip code checker. Objective or the goal
here is determine if the customer's location
is serviceable or not. Now, how should our
EI voice region should precede the
conversation flow? For example, we can say, first of all, validate the Zip code. Validate the ZIP code
if this exists or not. Repeat the Zip code using nato phonetics and wait for
confirmation from the user. And we can also add, for example, wait
for user's response. Otherwise, it will just scramble along with the
second key action. Wait for user's response. And our second action is
check for the exert match. Upon confirmation, check for the exert match in
the serviceable list. Here, it will repeat
the zip code that user has set and after checking
for confirmation, it will check with
this Google Sheet. So we need to create a mig.com scenario in order to attach our Google Sheet with our
AI Voice. Let us go to MC. Again, I'm starting
from scratch because I just want to show you
everything how you can build, and I'm not just going
over the mag.com scenario. So first of all, obviously, we need a custom
webbook Let's add one, let's say, zip code checker. Click on Stop and copy
address to Clipbod. Now we need to create custom
function or custom tool. All right, so let
us name this as, first of all, you can
paste your URL here. Let's name this as Zip code
checker or Zip code simply. And we can describe as
check the zip code provided by the user is serviceable
or exist or not. And here we have to
add our parameters. So for example, how our customer is
speaking that zip code, which is three words because right now we
have three words, right? So we need to make sure
that our parameters is only fetching these three words and not other extra information. That's why we have
to add parameters. I will show you how we can
create those parameters. For example, click
on example one, two, three, copy this and give to
Cloud or JBT and say, Hey, my customer want to check out if this zip code
is serviceable or not and write me a GSN schema according to the Abo
JSN schema format. And it will come up
with a GSN schema. For instance, I have used
Cloud to write this JS schema. I haven't written it on my
own, so you can do it too. This will be the GSN schema
that we will be using, which is ZIP code prefix, type string, and the pattern is word number word. All right. And the description is the
first three character of the zip code provided by
the user or customer. That's pretty much it.
The required field here is the Zip code, obviously. Now, click on format JS. Awesome. Even you can enable this option of speak
during execution. We can say, Let me check if your zip code is
serviceable or not. Awesome, guys, you did it. Now, we need to call this function or tool
inside our prompt. We can say run Zip code tool
to check for the Eetmtch. Now, there can be two scenario. The zip code will exist
or Zip code will not. So we need to make sure that we separate those things
out in the prom. If EETmtch politely inform
the customer we do service the area and ask if they want to visit the customer service
and book an appointment. If yes, transition
to booking state. So we'll create another agent for booking an
appointment, and if not, politely inform
the customer that they don't currently
service the area, but we can offer a callback for further assistance with
our customer service. If callback is confirmed, transition to callback stage. So we will create
two state one for appointment booking and
another for callback. Let us connect yeah. Let us rename it
appointment booking. Make sure the name is the
same that you have been using to this transition to next stage so that it will
know what to do next. And this is call back.
For appointment booking, we will need two tools, right? The first is check calendar avability and book on calendar. So add your API keys here
as well as your event ID. In prompt, we are saying, first of all, ask for
the user name and email, wait for the response, and then ask for availability for
that tool. All right. And these are basic prompt that we have been using so far and the current time
is current time so that it knows the
current date and time. Awesome. Now let us write
the prompt for callback. We can say our
callback is available only let's say nine to
six or Monday to Friday. So we'll add the background
of business hours. And the task is ask user
when it is a good time to schedule a callback from our
customer service team. Yeah. And after the call
back is scheduled, use the end call
function to hang up. So we need to add that tool
as well, which is NCall. Make sure the naming is the same that we have been
using in the prompt. Similar goes for our
Upon booking as well. Awesome guys, so click
on save as of now, and let us go to
mindt com scenario to connect our Google Sheet. Or, first of all, let
us trigger this Webo. So let us click on test, and then click on this
restructured data sto Hello, I'm Dorothy from
LGM solar panel. How can I help you today? Hi, I want to check an
appointment because, first of all, I need to
check my postal code. I'll be happy to
help you check if solar panels are
available in your area. Could you please share the first three digits of
your postal code? It's L V three. Let me confirm that postal code. That's Lima Victor
three, LV three. Let me check if we
service that area. Let me check if
that postal code is in our service area. Great news. We do service your area. Would you like to schedule an appointment to
discuss solar Pat? I don't know how does she know, because we haven't set up
our Google sheet right now. Alright. So we have tiger our webbook Now let us
connect our Google Sheet. So what we'll do is
we will search for that particular row
of our zipcode. So click on search, os,
select your account. The ID is code. Yes, table does contain headers. And what we are
checking here is if the zip code that
has been provided by the user exist in
our database or not. So we are checking in the
column Zip code equals to the argument that we have got from Zip code
prefix. So click on it. Then click on Okay. Yeah,
that's pretty much it. But if this one things
pop up, it is not SEO. Again click on Google Sheet
and then click on Okay again. Yeah, it's good. Click
on SV let us rename this. Zip code shaker. Awesome. Now we need to segment
into two different parts. One is if this zip code exists and the second is if
the zip code doesn't exist. So we will use router for it. Router is basically a divider. We can divide into three, four parts, whatever parts you want. But in our example, we are going to divide
into two parts. Search for Router. For example, if you want to add
another router, you can add as many as you like. Awesome. So we need to send the response back
to our retail EI. So we'll click on custom
Bebook and WebookRsponse. We can say something like
open the curly bracket, enter click on space, Ext match for this scenario, let us say if it is able
to find out the zip code. Exact Match is true, and the message we want to send out or send back to
retail EI could be. The postal code is serviceable. Our street name is this one. Would you like to come and
visit at our call center? Let me know and I will book
an appointment for you. Awesome. Now for this, we will say Exact
match is false, and lead Genman does not currently service
within your area. Now what we need to do is we
need to set up the filter. Otherwise, it will go
into either node, right. So I will show you why
filter are so important. So as of now, click on Save, and we need to close this
Coli bracket as well. Yeah, I think we
are pretty good. Icons. Again, let us
run this model once. I just want to show
why setting up the filter are so
much important. So it is listening
to our retail EA, so let us click test. Hello, I'm Dorothy
from LGM solar panel. How can I help you today? Hi, Dorothy. How are you? I just want to check that if your company is serviceable
in my area or not. I'm doing great.
Thank you for asking. I'd be happy to check
if we can help you save on your energy
bills with solar panels. Could you please share
the first three digits of your postal code so I can
check if we service your area. Yeah, it's Ci B. Thank you. Let me confirm that postal code,
Charlie five Bravo. I'll check if we
service your area. Let me check if your area
is serviceable. Great news. We do service your area. Would you like me
to help you book an appointment to a
similar panel lot. It is using the NATO like Charlie Phi Bow
Charlie stand for C, Phi and Bowen for B. But it is going with
both of the nodes. Like you can see, we are getting wizult in both of the nodes. We don't want that because
only one thing is true. Either zip code exists
in our database or not. That's why we have to
set up the filter. Alright. Bye bye, Dorothy.
Have a nice day. Yeah. So let us open the output. Lead Genmen does not
currently service your area. The postal code is serviceable. You can see both of the
conditions were true, but it doesn't make sense. So let us set up
the filter for it. Click on set up a filter. Let's name this is
service is or ZcdeEist. Here, we will check the
Z code that the user has mentioned to our
Google Sheet Z code. So click on it and you will
be able to see the Zip code that we have sat just
right now, which is c5b. And we want to check that
if it is equal to or exist in our Google Sheet
or in your database. We will select the
Z code column. Alright, let us click on. Okay. Need to set up the filter. For ZIP code does
not exist as well. And we can set up as fallback because this
zip code is serviceable. For instance, if
something wrong happen, it will come out
to this fallback, which is zipcode does not exist. So the condition is not equal to N our Zip code
from Google Sheet. Alright, I hope
this makes sense. It is so simple, nothing crazy. Now, if we check
for it, or sorry, if we run our scenario,
let us test it again. Hello, I'm Dorothy from LGM solar panel. How
can I help you today? Hi, Dorothy. I just
want to check that you guys provide service
in my area or not. My zip code is b4b. I'll help you check if we
can service your area. Let me confirm your postal code. That's bravo four bravo. Is that correct?
Let me check if we service your area
with postal code b4b. No, I apologize, it
looks like we don't. Yeah, it's b4b. Alright? Alright, but
thank you very much. So you can see V 40 does
not exist in our database. That's why it has only go to this route and not through
this successful route. And you can even
see in the filter, there is zero outcome,
and there is one outcome. That's why it is so important
to set up the filters. And it has said Lead Gen CAT does not crectly
support your service. Now let us test another route, which is if the zip code
exists in our database. So let us schedule this
on for immediately, and let us test our agent. Hello, I'm Dorothy
from LGM solar panel. How can I help you today? Hi, Dorothy. I just want
to check that you guys provide solar panel
services in my area or not. My area code is LO V. Let me help you check
if we can provide solar panel services in your
area with postal code l1b. No, no, no. Confirm that. No, no, it's L V. Let me confirm your postal code. That's l1v, Lima one
Victor. Is that correct? Yeah, Let me check
if we great news. We do service your area. Would you like me to help
you book an appointment to visit our service
center on Mango Street? I can assist you
with that right now. Thank you very much appoint Did you say she mentioned, like, Mengo Street, as well as our automation ray.
Congratulations, guys. That's how you set
up multistate agents and feel free to do
appointment booking, but I think it will waste your time because it is very simple. We have been doing this all day long in our entire course. So I hope you found this
course valuable and feel free to customize
multistate agents. For example, if you want
to take to another level, you can add another two
state, I will show you. Thanks, Dorothy. You can add, for example, here and here, and feel free to
edit the promptree as per your liking or how you want to flow
your conversation. I think we forgot to
talk about edges. Edges basically means
the trigger that will happen in the transition
from one stage to another. For this example, we can say Sur code is provided
by the user or we can say transition to
the next stage when the three digit zip
code is provided, and to store that
information from the first stage to
the next stage, or we want to transfer
that information that we have been received in the first stage to
the next stage, we can enter A JCN schema. So our JCN schema will be
what we want to transfer. We want to transfer the
zip code that our user has mentioned in this
firming greeting to our ZIP code checker. So we will write JS schema
for our SS Schema is very simple because only
we need to transfer the three digit ZIP
code to the next stage. So we'll set pattern, and
this is our ZIP code, which is word number,
and word again. And the required
field is ZIP code. Again, you can click
on Format JSN in order if there is any inconsistency
in the JSN schema. Alright that's pretty much it. Feel f to w around with
multiste agents and let me know what type of agents you guys are building in the
command section, as well as in the
community section. We are always to
get new feedbacks, new ideas from you guys. Bye bye TK and I will
see you in the next.
19. Mastering the Fundamentals of Conversation Flow Agents: Hi guys, it's month in
year in today's lecture, we are going to literally
breakdown every nodes, every section of conversation flow agent so that in future, if you are creating for
different use case, you won't face any problem. I don't want to rush
into this lecture or rush into conversation
flow agent because they are very important and vital to create reliable and
robust air voice agent. So we are going to take P step, and I'm going to explain
each and every section in much detail and
in the next lecture, they're going to start
building our conversation flowchen from scratch. Allied leske start. Lecon create an agent
and you will be able to find this new feature of
conversation flow agent. Right now it is in still beta, but it is working
smooth and perfectly. We have a bunch of
templates as well, but it will start from scratch. And there we have it our
blank and empty canvas. It will start with
the begin node. Obviously, it needs to
start the conversation, and then it will move to our
first conversation node, which is the welcome message. So once the phone
has been picked up or once our AI voice
agent has made the call, it will flow to this
conversation node, which is welcome node. And it will greet
the user saying, Hello, this is customer
support department. How can I help you now moving further if
you want to segment or if you want to fragment or transition to other
conversation flow, for example, if you want to check for calendar availability, if you want to write
something on notion, if you want to book appointment, if you want to send email, if you want to transfer
the call or end the call, we are going to add multiple
of transition so that our Air voice agent knows if the user want to
write to notion, it will transition to
that notion conversation flow only and not every
other conversation flow. That's why we are reducing the chance of hallucination
automatically. Alert, so I will add
another transition here. Let's say user needs to jot
down or write down something. Here you can add
your Apple nodes, Google Doc notion file,
whatever you are using. I'm just giving you an example. Al so that's how you can
add transition so that our AI voice agent or this node will transition to
further conversation flow. Before we move on, I just
want to say one thing. This conversation flow
agent is still in beta, right now, I'm shooting the
lecture in beta version. So if it is fully live or if you're watching this
lecture after sometimes, there might be some
changing in UIUX, but apart from that, the fundamental always
remain the same. So just bear with
the new interface of retail A if there is any. Alright let's come
back to our lecture. You can see we have
the global settings. In global settings, this is
the global global settings, it is the same as single
prompt or multi street agent. What we are doing here is in Agent settings, we are
adding the prompt. We are adding which
voice we want to use, which model we want to use. So if we expand on
the agent settings, we can select from
the voices and language our global prompt. So this prompt will
be followed by all the nodes in our entire
conversation flow canvas. For example, all of this node, as you can see here,
even the function, the global nodes will be
following this global prom. That's why we have to
make sure that we are adding relevant
information in our prompt. For example, we have to only use three building blocks that
we have discussed before, which is the first
of all, the rule, second style, and
response guidance. As you can see, we
are not mentioning any task and goals building
block because we are going to add task
in particular node only as well as in
particular function or tool. That's why this
global prompt is like a universal we have been
using in multistate agent. Same goes for the
Webook settings. We can add agent level Webbook
URL, inbound Webook URL. We have security settings,
post call analysis, all other things that we have already discussed in
earlier lectures. Yeah, feel free to add your knowledge
base if you have any. And here we can test
our EA Voice agent. If we clic test can test it
via audio as well as by LLM. Let's come back to discuss the most interesting feature of conversation flow
agent, which are nodes. We have five different type
of nodes inside this canvas. First, we have
conversation node, then we have function
or tool node, call transfer node,
press digit node, and lastly, the ending node. I think these last three
are pretty generic, which is called transfer, press digit or IVR or interactive voice
response and the ending one. The main two nodes that we
are going to use bunch of time is conversation
and function node. Let us add this in the canvas. Let us add all the nodes. So let's add a function. And if you click Oplus, it will have already two
inbuilt function, which is firstly check calendar
availability and second, book on calendar
because we have call transfer and call as well
as press digit here. It has only two inbuilt
feature or function here, but we can always
add custom function. Don't worry about it. So let us add check for calendar avability let
us add call transfer, press digit node,
and lastly end node. All right, so we have
these fine nodes here. Let's deep dive into each one of those because
to be honest, there are so many things in
conversation flow agent. For example, if you open
this conversation node, we have prompt, then we
have static sentence. The difference between
prompt and setting sentence as you might
know, in prompt, we are just giving the
direction or we are just giving the guidance to our
AI or to our LLM, but if you only want to use one specific introduction line only for the call conversation, that's where you can
use static sentence. But if you want to keep the conversation unique
every single time, we can use this from section
that we use AI or LLM to come up with a new
introduction line in each of these conversations. Let me give an example.
In static sentence, let's say you want to say, Hey, I am from Led German. How can I help you?
And let's test it. Before we test our agent, we first need to make sure that these branches are
connected with each other. So simply drag the
branch from one node to another node that you want
to connect simple as that. And let's click on test. As you can see, these blue
dots will be moving so that we can know that which particular node our conversation
is right now. That's the beauty of using
conversation flow agent. It is to be honest,
it is way much better in order to
debug our Avoice agent. For example, if
our Avoye agent is messing up at some
particular node only, we can use conversation
flow agent or this visual represitation, so that we can understand it and debug in much faster way. Yeah, so let us test it again. Hi. Hello. Hey, I am from Lee
Gedman. How can I help you? Did you see it has only speak this particular language without coming up with anything new. That's why we are going
to use or if you want to use Static sentence for
this type of conversation, feel free to use
Static sentence. But let's say you
want to come up with new conversation flow or with new sentence every single time, we can
use the prompt one. We can say introduce or do warm greetings to customer
seeing how you can help them. You are assistant of
le Jen Man Company. All right, so let's test it out. Hi. Hello. Hello there. Welcome to Lead Gen Man Company. How can I assist you today? Whether you need help
with Lead Generation marketing strategies
question. Thank you. So did you see it
come up with whole, another idea, whole,
another kind of scenario. That's why if you want to be very specific with
the conversation flow, you can use the static
sentence as well. And retail EA
provide this option. If you want to use prompt, as well as if you want to use static sentence,
feel free to do it. Any weekly contest, again, it will come up with kind
of similar wording or similar sentence to welcoming the customer that you are speaking to Lead
Gen Man Company. Alright, I hope
this makes sense. It is very simple, by the way, but my recommendation
is use prompt whenever you want to make
your conversation flow unique every single time and use
static sentence if you want to achieve specific thing from the end user or
from your customer. For example, if you need the email address in that
character by character, you can say, can you tell me your email address separated
by character by character? My perspective, you can always use prompt if you
want to come up with new and unique
conversation flow and for static sentence, if you want to get something out of your
end user or customer, you can use the static
sentence as well. Then we have the transition. As I mentioned,
transition is basically breaking down our entire call conversation
into different parts. For example, if you
want to separate your conversation flow into
three different parts, you can add three
different transition, and then you can connect them
to another conversation. All I re add three
conversation flow, sorry, three conversation
node, and you can connect each of the conversation
node to each other. Feel free to rename
the conversation node. Let's say they want to
book an appointment. Appointment booking is my go
to use case because a lot of my clients and even if you are providing this Avoice
agent as a service, you will also see all the clients like most of the clients want the Avoice agent to handle
the appointment booking. Then another node could be. So you can even describe
the transition when our Avoice agent or when this node should transition
to the next stage. For example, or the next node. For example, we can say when the user is asking to
book an appointment. Will automatically
transition to this node. Then another example
could be if they want to have a callback after
sometimes, we can say, if the user does not or does not want to talk right now and want to schedule a callback, it will flow into this next
node which is callback. Same goes for last node, which is if the user want to get the current
credit card status, it will fall back to this. It will follow this conversation
node where we can add all our Google Sheet or a table data by calling
in custom functions. And, we have done
this so many times, you might be pro at this. Let's first of all, rename it
credit card status checker. Feel free to add your
prompt and then let's say get the credit card
number from the user. All right, it will get the
credit card number from the user and after getting
the credit card number, we want to transit our function. That way we can trigger
our main outcome scenario, co high level scenario
or any tent scenario, if we have store our data of credit card information in
Google Sheet or a table, hotspot, whatever you're using. So we are going to
use this transition. So we can describe this
transition condition. Defining your transition
in very clear, simple, and straightforward
way is very important. Otherwise, our Avoice
agent will get confused whether you do
the transition or not. So we can say. Once the user has given the
credit card number, The transition to
this function load. So we're going to add a function
is at a custom function. We can say credit card info, get the credit card info or credit card status from the credit card
number given by user. And we are going to add
our URL, for example, if you're using meg.com, or if you're using any
ten go high level, please add your URL as
you can also define the parameters of that
particular object that you want LLM to return. All right, so let us
save this as of now. I'm just giving a
demo or example. Then it will invoke this function of credit
card information. That will be able to get
the credit card status or credit card balance from
this credit card number. I'm just showing you
the prompt as well as the transition nature
language query or NLP. Again, keep it very
simple, concise, and straightforward, and
you won't face any trouble. That's why prompt
engineering is so important. That's how you can
define the transition to invoke your function, or if you want to, let's say, add another conversation
node here, for example, if the appointment is
booked successfully, it will follow this
conversation node. If the appointment or any
slot are not available, it will follow this
conversation node. So we are going to
use two transition. Let's say when the appointment
is booked successfully, transition is this node. For example, we want to fetch another information,
like what is your name? What is your last name or what context do you need
to talk in the meeting? For example, lead collection
or lead qualification, if you want to transition
to this next step. But if the slots are book, it will follow this
conversation node where we can have some sort of error handling or
we can transfer it to real human in order
to resolve this issue, as well as, for example, if you want to add another node, transfer to human agent if the
user want to talk to them, and then we can add this
call transfer node. Yeah, I hope you now got the gist of
conversation flow agent. You can make as complex
conversation flow as well as as complex and robust voice agent by using conversation
flow agent. If you click on transfer call, we have transfer
to this particular number type of coal transfer, worm transfer, as well as
a display phone number. You can also choose different
LLM for each of these node. For example, if you want to use, let's say, chat
GPD for this node, if you want to use
Cloud for this node, you can enable this
option and choose different LL well as different models for
each of these LLMs. For instance, if you want to use GPT four mini for this
lead qualification node, in order to concept less credits or less pricing per minute, you can enable this if you want to use let's say Cloud for this to get the
best response from your Avoice agent,
you can use Cloud. Yeah. This type of flexibility
in your Avoice agent will make your Avoice agent
totally hallucination proof, as well as you can
block interruption. Does this mean is if the
user is in between when our air voice agent is running or talking or invoking
any function, it won't listen to the user because if it is going
to listen to the user, it will interrupt
its conversation flow and it will get confused. That's why we can enable
this blog interruption. And as the name suggests, it will block the
interruption from the user, and we can enable any particular
node to a global node. For example, I
will show you one. So let us make this
as global node. Let's name this as global let's
make this as global node. Let's say this node is
connected to only one node, another, which is
lead qualification and not to any of
these other nodes. But, for instance, if
there is some kind of a fallback or some kind of
error, all of these nodes, I will show you, all
of this node will be automatically transferred
to this global node, even though the edges
are not connected. Even though, for
example, this callback is not connected to
this global one, it will still able to fall
back to this global node, since we have make
this node as global. All right, I hope
this makes sense, and even you can describe the condition to
jump to this node. For example, the user is
asking different questions, invoke transition to
this global node, as well as we can
skip the response. For instance, we have booked the appointment with our
user and we don't want their response and we
want to move in to the next stage or the next
node in our conversation flow. We can enable this option. Let us unable the skip
response for this, which means that it will jump to the next node without waiting
for the user response. And we have already
booked the appointment, we don't want to wait for our
user to talk with anyhow. We don't necessarily need any
information from the user. That's why we can always make transition to the next
state or the next node, which is lead qualification. Once it will book the
appointment with it, it will automatic transfer with lead qualification without
waiting for user response. I hope this makes sense. This
is as simple as I can put. Lastly, we have
fine tune examples. This is where we can add
specific scenario conversation to our Avoice agent. For example, if
this prompt is not getting all the information
from the user, instance, if this lead qualification
prompt is not retrieving all the relevant
information we need, even though we have added
everything in the prompt. So we are going to use fine tune examples where we can say, do this, do this, do this, first ask for the user name and ask for the business queries
or business purpose, then the business revenue or
whatever you want to add. In that particular example, let us click we are going to use Fine
Tune al conversation. Even in Fine Tune,
we have two types. The first is conversation, and the second is transition. Let's talk about the
conversation first. For example, if the
user is saying, my name is Manan. Then the agent will say, can I get your full name
or last name also? This type of fine tuning is very vital because
if you're storing this data in your lead if you want to store both first
name and last name, and if the user is
speaking only first name, in general or in single
state or multi state agent, it will store the
first name only. But by adding this
fine tune example, we already have the first name. In the first
conversation, my name is Manthan what our
agent will speak. Can I get your full
name or last name also? That way we are getting both first name and the last name. I'm just giving an
example how you can find in your
conversation in order to retrieve in order to manage the user's queries and
concerns in specific way that you you want to have this
specific conversation and if you want to give specific answer and specific sentence, you can always use
Fine Tune example. Now let's click on Add, we can add the user speech, agent speech and
function execution. So lets use the user
and the agent one. We can give another example. I'm not able to
remember my password. For instance, if
the user is saying, I'm not able to
remember my password, this type of conversation
is really important. We want to say specific
things only to our user, and we don't want to make
anything new or come up with new ideas because that's what EA agent or LLM does
most of the time. That's why this type of fine tuning example is so important. We can say or whatever
specific things that you want to add here, no worries, can you share
your birth date and I will close check it with your
credit card information. Now if you're not using this
type of fine tune examples, your EA agent won't
know what to do. That's why, again, it
is very important. Another type of is fine
tune with transition. Now if you're not using this
type of fine tune examples, your EA Voice agent
won't know what to do, or it will come up with new conversation flow or new ideas. That's why in order to
decrease hallucination, retail EI mix is very easy for us by adding this
fine tune example, coming up to fine
tune the transition. You will be able to
see select node. None stay at the current. Fine tuning the transition to another node is
the best feature, I think of conversation
flow isn't by retail EI. For instance, if the user
is not able to remember the password and if we want to transition
to the next node, which is credit card information or credit card check on node, we can always use this type of conversation flow or
transition example, and it will transition
to another node. If the user is speaking, I'm not able to
remember my password, then it will transition
to the next state, which is current or
credit card information. You can select the next
node in sequence to that. All right. So again, this
feature is really important, which is the fine
tune the transition as well as fine
tune conversation. Alright, guys, I
think we have covered every minute part of
conversation flow agent. So why let us move on to
the next lecture where we build our conversation
flow agent from scratch. Bye bye, take care, and
I will see you there.
20. Building Conversation Flow Agent from Scratch : Notion + Gmail: This as a global node. I will allow other nodes
to jump to this node, which is a welcome node without
any edges or connection. Whenever the user is having trouble looking
or finding for anything, transition to this global node because we are adding
all the transition here, right, and we can use different LLM if we want
to use Let us use snit. Awesome. Now it's time
to add the transition. So make sure you are using perfect and clear simple
English language so that our LLM nodes went to
transition to different nodes. Let us define the first
transition for checking any event in my calendar from specific point
A to point B. Let's say I'm saying my
A voice agent to get me any event or get me any meeting from 10:00
A.M. To 5:00 P.M. Tomorrow, and it will
give the list of all the meetings
or all the events that are in in my
Google calendar. So we can say something like the user want to
check their calendar, and then we are going
to create a new conversation node for that, which is checking events. Then let's connect
it with Edges. Now for prompt, we can say something like investigate
what date and time the user need to
check on the calendar from specific point
A to point B. Awesome. And once we
have that information, we want to transition to a function that will
invoke our calendar tool. So click on function node. Let's add a function node, and we can use check
calendar availability by using cal.com. Add your API keys here. We have done it so many
times. Let's add it. I'm not using or I'm not adding the EPIKeys because I don't want to make this
lecture very lengthy, but I hope you got my point. Connect this edge
to this function. Now when should it transition to this check calendar
availability tool or function? We have to define the
transition very properly. We can say the user
has already told us from what date to what date they want to review
their calendar. Awesome. When we have
got this information, it will transition to
this next function node. Now in function node, if you want to configure
further on, click on this function,
it will populate with this thing and click
on this pencil icon. Here you can add your API keys
as well as your event ID. If you want to speak
during execution, feel free to do it, and it will populate with prompt
and static sentence. Let us use static
sentence for this. Whenever it is running
this function, it will say getting your list of events from your calendar. Now, once we have finished
checking our users calendar and retrieve all the list of
events from their calendar, we want to transition
to another node. So let us use or define
the transition here. Let's say we finish checking
the user's calendar, then what we will do is, we will add another
conversation node, we will connect it to here. In prompt, we can see
something like ask the user if they want to keep continue chatting if they want to
get back for another time, if they want to write
anything else in notion, they want to create
an event in calendar, or they want to
send another email or if they want to
end the interaction. All right so we will add
all the transition here. But as of now, let us add another conversation
node as well. For example, for notion for sending email from
booking appointment, one thing I left out is if you want to wait
for result enable this function and
then and then it will only transition
to the next node. Obviously, we need
to enable this. I don't know why there
is an option like this. Yeah. And you can choose different LLM as well as prog
interruption from the user. Awesome. So we have done with our checking events
on our calendar. Now it's time to
use the notion one. I love this really because I'm a huge notion fan and I always
jot down my information, always jot down something that
I come up with new ideas, come up with new
motion into my notion. That can be very handy if
you're using this type of Avoice agent for a personal
assistant use case. When it should transition
to the notion node, we have to define in transition. The user want to
write something in notion now let us create another conversation
node for notion. Let's connect it here and let
us write a prompt for it. Ask the user what
they want to write about and if they need
a hand or help with formulating or articulating the entire idea
or entire motion, or if they already know
what to write down. All right, and we are
going to invoke the tool. Let us create a function node. This time we have to
add custom function because we are embedding our notion or we are adding our notion with our
AI voice agent. So become custom function we can name this as
write in notion. For description, we can
see something like create a page in notion of the
content the user want to add. In this URL, we are going
to set up in our ANATen. Let us go to ANI ten, and I have renamed this as
conversation flow agent. First, we are going to connect our retail E voice agent
with ANI ten workflow. That's why we have
to use Webbook. Click on a first step, search for Webbooks and the method is post,
copy this URL. West here. In parameters, we are going to add
the data points that we want our LLM to return or to di it into our
notion page. It is optional. If you don't do it,
it will also work. But if you want to be very
specific with the format, or the things that you want
to add or LLM should return, we are always going
to use parameters. I already have this
parameter ready, and don't worry this
parameter will be in the resource section so that you don't have to
create it on your own. And this was created
by Chat GPT. Trust me, it is very easy. So just go to Chat GPT, click on Explore GPT and
search for Mark Tomlt. He has created a bunch
of GPTs to be honest for EI voice agent specially shout out to him or all
the credits to him. So what we are going to
use is JCN call formatter, and it forms retail
EH function for us. Even you can use this voice pioneer prompt builder as well. In the custom GPT, it will
create prompt for you. So let us click on
Start chat and say, I want to read let's say notion title and
the notion content, and it will give your
JCN code to you. But I don't want to
waste time here. So let us come back here. And this is the type, which is the title
first argument, which is the title of the
notion page to be created, and then content, the content
to add to the notion page. This can include tags, links or other details. And the required field
are title and content. And to be honest,
it is very simple. You can write it on your own. You don't have to go
to Chat GPT as well. I have shown you in some of the earlier lectures how to write this JSN code on your own. From scratch. Alright,
you can click on Format JSON and
let us save this. Awesome. Now let's add this
and let us connect the edges. But we are missing something
which is we have to define the transition when
the transition should happen because
we first of all, obviously need the
title and the content. If we have that information, then then only we
are going to invoke this function, which
is write in tool. In transition, we have to
specifically define that. The title and the content of
the node to be written in notion is being given to us and then transition
to this function. Right, I hope this is
making sense to you. All things come down to prompt engineering and your
simple language query. So otherwise, your Avoice agent won't know when to
transition what speak. That's why it is so important to learn prompt engineering, as well as give simple, concise and straightforward
carries to your Avoice agent. So we can also enable this
speak during execution, so it will inform the user that we now writing
to the notion, and we are going to use prompt. Now let us transition
to this node again. If our user has
another question or if they want to send an
email to someone, if they want to book
an appointment, it will transition to this node. So let us add a transition here, and when should it transition to this conversation node is once we have added
all the things, which is the title or we
have created a notion page, then then only it
should transition. And that's why we have
wait for result unable. Once we have got the result, then then only it will
transition to the next node. Alloys let's connect
this and we are going to add five different or four
different transition, and we are going to connect
all of them back here. Don't worry, we are not
going to do it right now, we are going to do it at the
later part of this lecture. So we are done with our notion. First of all, let us test
our notion, I guess. So click on back to
Canvas and let us add notion, CliconPlus
search notion, and what we are doing
is we are creating a database page or we
are creating a page, whatever you want to use. And now connect your
notion account. I have already gone
ahead and done it. Then what we are doing
is we are adding a page. In recesses, I have selected page and the operation is
to create a whole new page. This is the parent page or the parent URL that
we have to add. How you can find
this parent URL, simply create a new notion page, click on share and in share, you will be able
to find copy link. Simply click on it, and
then paste that link here. Yeah. I will
automatically attach this database to
your ten workflow. And the title, it will be obviously in expression
that we will get from our retail EI arguments or from our retail
EI function de. All we need to regard that webbook in order
to get this payload. Add any parameters
or random word here, we are going to
replace it afterwards. Don't worry about it. Yeah,
so let us test this workflow. Click on Listen for test event. And it is listening. Now let us click on test, and the beauty of
test Alam is much, much better here. I
wait, I will show you. So you can select
which node that you want to execute or
have the conversation. For example, if you want to have conversation directly
to this node, you can switch it
right over here, so that you don't
have to waste time in all of this conversation
in previous nodes. Trust me, it is amazing feature, and you can also save
your results as well as you can also add your
dynamic variable from here. As of now, let us test our
entire EI voice agent. Let's say, hi, you can see, since we have said or we
have entered into this node. Now once we said, I want to
jot down something important, it will transition to this conversation
node. I will show you. And it will trigger
a webbook awesome, the argument containing
the title and the content. These are the parameter that we are calling in that function. That's why it is formatting in that particular
format that we like. I hope you now
understand why we are using parameters in functions. You can see tool
invocation writing notion, tool result workflow
has started, awesome. So we are good now. Now let us connect our notion. Let us search for Notion again. Let us create a new page, add your account, and now
we have the payload here. So paste your parent page and
for title inside arguments, we are going to use title as
expression and for blocks. Let's add it in form
of a paragraph, and let's place our
content inside text. Awesome. Yeah, that's pretty
much all you need to do, and we need to send
this information back to our retail EI so that it will know that we have add this successfully
into our notion. Alright, so let us search for Webbook and you can
say respond to Webbook. Now what do you want to
respond is in form for Jason. Let us execute the
previous node, or even we can use
simple text as well and add the response body of
what we have pasted here, which is we finish writing
the node in notion. I will say this particular
sentence to our user work. Awesome. Now let us save this and you are good to now we
are going to do the same. For whatever recipients address you want to send
out the email to, we are going to define
the parameters, which is we want to
add subject line, we want to add the email
copy or the email body, and the recipientis
email address. All right, we will
come back to that. But as of now, I hope
you understand we have done or we have written
in our notions successfully. You can see it has automatically
added this new page. This was a testing
I was testing out. You can see course ideas
and LindnPosting plan. It has automatically
created the title for you. You don't have to
define specific title, it will automatically
restructure it for you. As well as this is
inside our notion page, which is ideas for
creating a course on any ten ZPA descript
and the plan is host ten times a
day on Linn about these topics to engage the audience and
prompt the course. Mind blowing, literally amazing. That way you can talk with your EA Voice agent as a personal assistant
and we'll jot down all the important information in notion as well as whatever
database you want to add it. For example, if you want to add this information to
your Apple nodes, to your Google Docs,
whatever database you want to store it,
you can easily do that. All you need to do is
instead of notion, add Google dog or add
Apple nodes, that's it. Yeah. Now we are done
with the notion. Let us add another
transition that will book event or create an event in
your calendar if you say so. Therefore, the transition
query would be the user want to create an
event in Google calendar. Let's add a conversation node. Let's connect the edges, and in prompt, we can say, ask the user when
they want to create the event with whom
and for what purpose. For what purpose, it will automatically flash
out the description of that event with whom we automatically add that
name in the title, and you should ask them
the following details that they have said
are correct or not. Alight for transition, we
are going to say transit to this next node if we have retrieve all this
information perfectly. Once we have this information, which is the user
already has told us when they want to create the event with whom
and the purpose of it, we will transition
to the next node, which is creating an event or booking and meeting
in the calendar. Let's add it. Feel free to add your API keys of cal.com here. Let's connect the edges. Now, if you want to add
global settings, yeah, we need to add the prompt here, which we will look
into afterwards. But as of now, let us
speak during execution. We can say something like I am creating your event on
your Google calendar. And for transition, we
can say something like, once we have booked the event or successfully created an event
in the Google calendar, transition to this node. I'm not testing this
book appointment and check calendar availability
because it is very self explanatory and
we have been doing this in this entire course
every single lecture. That's why. Let us add the
last transition, for example, if they want to send
message to someone via email or whatever
communication challenge they want to send out. We're going to use this
transition for it. Let's say the user want to
send a message to someone. Awesome. Let us add a
conversation node here. And I'm just giving
you an example here. You can add as many
conversation node, make it as complex as you want, and make it as robust and reliable according to your
use case and situation. In prompt, we can say, ask the user what email
to send the content, basically, the subject line and the email address they want
to send this message to. Awesome, and we will
add a function here. Let us use a custom function. Let's say send email in URL, we are going to create a Webook, click on add step,
search for Webbook. We are going to
select post method, copy this URL, paste it
here, and in parameters. Now let us go to hat GPT and create the parameters so
that you will understand what is a format or how I'm creating this type
of parameters so that I'm retrieving or getting that specific information
that I need from LLM. Let us go to hat GPT, or you can use deepsk as well. Search for JS and
call formatter. Let us first of all,
copy all of this. I will automatically know what parameters it
want to create. We are only looking for
three important things, the recipient email address, the subject line,
and the email copy. I should have this
in our GSNs code. So yeah, two subject
line and message. Amazing. Within just one prompt, it has created this JCNs
code or parameter for us. Paste it here, conform it
JSON and let us save this. Awesome. Let's add this. Let us connect this via gs. Now when it should transition to this function, let
us describe it. The user has finished giving us the email to send
which is the content. Define the subject
line and provide it with recipient email address. Awesome. Here, let
us add a prompt or let us enable this
speak during execution. Be sending out emails might take some time and we don't want to our conversation to be blank or to be
completely silent. That's why we are
using, let's say, inform the user we
are now sending the email and then transition to this state once the email has been sent out
to the recipient. Therefore, in transition, let's define we have finished sending the email that
the user want to send. Now once it has
sent out the email, let us connect this to
this node. Awesome. Even if you want to test
it out, you can test it, click on Deism for test event, click on test, delete this. I want to send
message to my friend. Yeah, via email and it will
transition to this node. Therefore, as you can
see, it is asking, what is the content
of the message, the subject line, and the
friend's email address. So once we send out
this information, it will invoke this tool. I just want to say to my friend that if
you like the course, please drop down
your honest review and share your experiences. Make sure you do it. And the subject line
is course review, and the email address
is nCliconsend. Now it should transition
to this next node. Awesome, as you can
see, tool invocation send email and the tool result, which is workflow has started. So we should have the payload, as well as in the
messages here we are. Awesome, guys. So now
let's add our Gmail to it. Yeah. So that's the
beauty of any ten. We don't have to create
separate scenarios or separate templates like
we do in main.com or ZPA. We can add in just
one single workflow. That way, it is so
much easier to work. Now, lads Glicon add, we are going to
search for Gmail. Make sure you connect
to your Gmail account. It is very simple. And then what we are doing is we
are sending a message. So create send a message, even you can send a draft. So just connect
to Gmail account. You want to send out message
and operation is sent. Now for two, we are going
to add the email address. Obviously, it will
be in expression. The subject line
and the email type, we can say text, we don't want to
use any HTML code, and this is the message. Awesome, guys. And if
we click on testb, it will actually
send out the email to this email address. Awesome, so I'm not
doing it right now. I will do it later,
but we need to send the response back to the
retail EI that we have successfully sent out
the email address or we have successfully sent
the email the user wanted. So click on response to Webook and we can
use text as well. We can simply use this texts. We have finished
ending the email that the user wanted to send. Awesome. Let us save
this. Let us run this Node executed successfully. So let us open our Gmail, and we have got an email. If you like the course, please drop down your honest
review and share your experiences with the email address that
we wanted to send. Yeah, you can see, as well as the copy and the subject line. It is pretty easy, by the way. You don't have to be a
scientist or a coder to do this type of voice agent
with no hallucination. Yeah, that's the beauty of any ten and conversation flow agent. Yeah. I hope you got the gist of how we are creating this
type of a voice agent. Now, what we are doing is once it has executed all
of this function, we want to send out to hold this different conversation node if they want anything extra, if they need any other help, for example, if they
want to create, let's say, or if
they want to get the list of events
from their calendar, we can say transition
to this node. The user want to check another
time on their calendar. So what we are going to do
is we are going to connect this transition back to
our checking events. Same way, if the user want to add another
thing in motion, the user want to write
something else in notion, we are going to connect this
node to our notion node. All right. So it
is not just ending the conversation
right over there after executing one function. It is in a loop. So unless the user want to end the call or
actually end the call, it will be always
in the loop and it will always be
helping out our user. Then the third node could be the user want to create
another event in the calendar. We can see something
like the user want to send another email. Now let us connect this
email transition edge to our email node. Same goes for event,
book and event. Awesome. Now if the user want
to end the conversation, we're going to add
transition for that as well. Let's say the user want
to end the interaction, so we are going to
use this end node. Let's connect this end node
via this edge, awesome. And if they want to continue chatting or continue
having the conversation, let us add another
transition for that as well. The user want to
continue chatting, so we are going to add
this to our global node. I think both of these
nodes are similar or same. It is just navigating
back to different type of transaction that we are
defining in this conversation, which is to check availability
or to check any event, then to add in notion file book and event as well
as send out email. I'm just giving for example, you can add or you can make
it as complex as you like. I think we have built a reliable and very
robust EA voice agent by using conversation flow. Now let us define
our global settings as well as our prompt. If you click anywhere
else in the Canvas, it will populate with
global settings. Click on Asian settings, let us select the voice, Indian accent, feel free to
use any voice that you like, and for model as well, let us use Sont the role we are defining is you are lead gen Man or personal assistant
to the user. Assisting with different
things they need, and I'm defining it British, so it will speak
cheers met in it, and this is the response
guidance pretty basic. We are telling the
user to dictate email character by character when they want to send an email. In this node, we have
to define our email by, for example, Manthan
2024@gmail.com. I will say, can you define it
by character by character, which means MAN THAN 2024
at the red gmail.com. Instead of saying
simply 112024 at dgmail.com to decrease the
chance of sending wrong email. This had some type
of error handling that you can add in your prompt. I think we have built an
amazing A voice boot. Feel free to add
your knowledge base, as well as configure with
all of these settings that we have done so many
times in this entire course, so I'm not going to
repeat it over here. Feel free to add
post call analysis, you can do outbound,
as well as do inbound calls by using
conversation flow agent. Awesome, guys, I will be
adding all of this prompt, but I think you should create this conversation flow agent on your own on your use case. Feel free to add parameters. Again, I'm going to he GPT.
I'm not doing anything. Trust me, I'm simply
copying and pasting, and it is giving
me the parameters. I'm pasting that in my function, as well as here. That's pretty
21. Batch Calling: Hi, guys. This
lecture is important, but it is very
straightforward and easy. We are going to perform
Batch calling in retail EI. For example, if you
have a large elite list and you want to call all
of this prospect and you don't have any
CRN solution like go high level and you don't want to mess with main.com
and everything, you can perform
batch calling inside Retail EI without you
having to do anything. It is to set this
up, so let us login. Here, you will be able to find
Batch call. Click on that. Create a Bach call.
And if we select this, it will use our agent or voice
agent of consultancy call. Now, let us download
the template so that you will understand
what is the format, how we can add the dynamic
variable inside Excel sheet. Click on Download.
Let us open this. All right, what do we have here? We have first a phone number, then as many dynamic
variables as you like. Here, only the phone
number is required. So let us add a phone number. For this example, I'm using only two lead list
in my Excel sheet, but feel free to add
as many prospects as you like to contact
by Batch calling. In place of dynamic variable, I will say, let's name. In dynamic variable, too,
let us go for email. Yeah, feel free to add as many dynamic variables
as you like. But as this is an example, I'm just only using
two. Download this. We have the ID, phone numbers, the name, and the
email addresses. Now we have two options here.
When to send this call. If you want to start
this right away, please feel free to do send now. But if you want to
schedule, for example, if you want to wait for business
hours or if you want to exclude those type of weekends,
you can use schedule. Select your time zone
and select the date. It will start calling. You can even select the time as well. Yeah, it will start from here. The estimated time
to complete calls, we are assuming is 5 minutes. So in retail EA, we have concurrency limit of
20 calls per batch. So for example, you have 100 people in your Excel
sheet, another example. So what it will do is it will perform 2020 calls per batch. Once all of those
calls are completed, it will start the second batch. Which is 21 from
48 phone number. Polite, I hope this makes sense. You can also purchase
more concurrency here. Now, click on Sen and it will start calling
those phone numbers. Once you click on
this Send button, and if you want to
pause or cancel, you won't be able to do it. Make sure that all of this information are
accurate and then then only select this send it will not start making
those calls instantly. It will take around 5 minutes because there might be some
phone numbers in the queue. So let us click on
Sen here we go. Hi, This is Alex
from FluxFortify. Am I speaking with parole? Yes, you are. And by the way, do you know my email address? Yes, of course. I have
your email listed as info at legendman.com.
Does that sound correct? Yeah, you are good.
Alright, so that's it, and that's how you can
create batch calls and start firing your prospect
leads in your leadts. Alright, that's all for it, and I will see you
in the next lecture.
22. Branding Solution for Agencies: Hi, guys, it's month and year, and I'm going to
show you how you can white label your service by using HIDDSh which is
integrated with retail EA. If you are selling as
a service or if you're providing this service
to your clients or to your clients clients, white labeling is a must. You will have your
own brand name, your own brand color theme, as well as everything
your own and not retails. Retail EA has this collaboration with HIDDsh, go to HIDDsh. You will be able to
find supercharge your retail agency with HIDDS. Can easily relabel
your business name or organization name
by using chat dash, it provides amazing visual
graph to understand our data, for example, ukensh data in
a more sort of visual way. For example, buy chat bar graph, like a linear line, everything. So first of all, let us log in or sign up the display name, let's say, Le Genman
Click on Register. We can set ourselves
for domain branding, even chat booard setup, client creation
and final review. To vines, a lot of guys were asking how to white
label their service, and chat Days is
the best platform. My agency name is Flux fortify
and my domain accordingly. So I will choose, let's
say, black and white. Even you can upload your logo. Awesome, a logo is uploaded. Now let us add our
domain to chat Dash. Awesome domain it successfully. We want to integrate Retail EI. So chatbot name basically
means our agent name. So let us go back to Retail. Let's say we want
to use this agent. So let us copy
this past it here, then our retail API key. Copy the Webbook one
and our agent ID. This is our agent ID. West it here. If you have any knowledge base,
feel free to do it. So let us click on AdhatboT
Awesome. Now click on next. And this will be your
client's account and assign the chat
booard to your client. So you can say your client name, for example, Elon Mask. You can add their email. You can add password if you
want to secure your website. No one can lst. Then feel
free to use the language. As of now, let us
create a client. Click on next, and this will
be your client dashboard. They will go here and they will be able to see this
sign into your account. We will give out this
login ID as well as the password so that our
client can access it. Awesome, our branding here. All the data can be
easily displayed. Let us take one thing at a time. Let us finish this. Let us
go to our project settings, click on these three dots where we can prompt our
chat board as well. For example, there will
be in built chat booard. You can use this
prompt. Hello, I'm speaking to your client name. Yeah, so this is our prompt that we have used in Vital AI. This is like summary
evolution automatic, as well as it can
pass for example, paragraph, caption,
subtitles, everything. All right, so let us
go to our client view. They will be able to see
total call of minutes, number of calls,
how much it cost, average cost per calls. And we have these
amazing charts as well. We have added the dates here. The number of calls similar
goes to date here and number of calls are some,
it is pretty solid. We can also furthermore, edit, reason edit for
call which is hangup. If you want to edit the
layout, you can easily do it. Let's go back to our client. Click on Preview, click on Edit layout. And
let's change some. So let's say you
don't want like here, you want it like here,
so feel free to do it. Even you can add
the conversations, they will be able to
say everything here. So this is actually transcript. Hello, am I speaking to Manten? And I was saying, Yes, you are. Even you will be able to find reason call, which is I hang up. You can hear the call
recording as well. Yet you are. Download it
from here so that client has full access and they don't know what is going
on your retail EI, your Ghi level or your
main.com scenario. They can easily
see the analytics. They can easily hear,
read the conversation, and they can easily edit the knowledge base. So
that's pretty much it. Feel free to play
around with chat dash because it is to be honest if
you're scaling your agency, you want to white label
or you want to make sure that your website or your
domain is like a legalized. It's not like you
are exporting all of this data to Google Sheet and displaying your
result to Google Sheet. If you have
professional dashboard, your client will
think that yeah, they are professional and
they have done the work. Can easily access and they can easily see
all of this thing. Here, for example,
in Google Sheet, they have to go one by one
and hear the call encodings, and to be honest, it is ugly. That's why we are
going to use chat desk in order to white
label or in order to temportize our entire
agency to our clients.
23. Creating Your Own AI Voice: Easy AI Voice Cloning: It's time to add your own
personal voice and feel that own personalization
to your customer by adding your custom
voice. It is very easy. All you need to do is have
a sample file or audio file ready so that you can use
for your own EA voice agent. I will show you how
you can do that. So go to any assistant
that you like, and then click on the voice. In 11 labs, you will
be able to find. You can add your
own custom voice, let's say you want to
test out different A voices in particular accent, for example, neither line accent nor Spanish Portugal accent, you can easily do it
by using 11 labs. As you can see, it has
around 25 A voices. But if you want to add
that personalization of your accent or
of your language, you can easily do that
by using 11 labs. All you need to do is click on custom voice and in
community voices, you can explore the
community voices here. Click on here and it will
open up 11 labs speech. Here we have punch and bunch of unlimited number of
pies in 11 laps. So all you need to do is add the name here, and
you are pretty good. So let's test out some. Hey, everyone. Welcome
back to the channel. Today, we're talking about all the latest news trends
and celebrity gossip. Yeah, I really like it. For example, No Neva Schneider. If you are Chinese,
you can use this. Sorry, if you are German,
you can use this. Yeah. So I hope
you got my point. Feel free to test out this voice because they are really awesome compared to what given in
this list of 25 A voices. If you surrender to the wind, if you surrender to the
wind, you can write it. Yeah, that's pretty much it. Now I want to show you how you can use your own custom voice. Basically means you are
cloning your voice so that your AA voice agent will lose that by getting inbound
and outbound calls. So let's name our
voice first of all. I already have a sample ready,
so I will upload it here. Click on Confirm
and let's save it. And let's see how our A voice
agent is cloning our voice. Amazing our voice should be added so you can
easily search as well. But mine was from, right. So this is our A voice. Let's hear it for
the first time. You are Manten. Yeah,
let's test it out. Hello. Am I speaking name ho? Yeah, hi. How are you? Hi, Mam. I'm doing well. Thank you for asking. I hope
you're doing great, too. Oh, my. Oh, my God. Oh, my God. It's like talking to my own digital atar
or my digital clone. Yeah, you really sound
like me, to be honest. We have the same noise. Sorry,
we have the same sound. Oh, that's quite a coincidence. I guess we're on the
same wavelength today. But let's focus on you. Are you currently looking to
buy or sell a property? Alright, I hope
this makes sense, and this is how you can
add that extra level of personalization for
a EA voice agent. It will handle all
the inbound calls and outbound calls with
your EA voice so that your customer will feel
that they are talking to you and not this
EA voice agent. That's pretty much it, and I will see you in another lecture. Please do share
your reviews like, how are you using
this Evoice agent? Are you learning it? Are
you implementing it? Are you having your own client or are you using for
your own business? I'm all ears and my
door is always open. That's pretty much it. Bye bye. Take care, and I will
see you in another one.
24. Simplify Your Team's Workspace: If you have a big staff and you work in teams, retail
has got your back. Learn how to collaborate and manage team members
in your workspace. Once you create a new account, you will automatically
assigned this environment where you can manage and
collaborate with team members. Now, for example, want to have different workspace from
testing error handling, you can do that
inside Retail Air. So click on your profile
and click on Workspace. Let's name this workspace
as testing one. And then we can
invite the members. Click on Invite and member, and then add the email address. Click on send, they will
receive an email invitation. You have been invited to
join Manthan's account. Let's accept it. Let them sign
in or create new account. Welcome to the
workspace. You can see. The team member don't have
to add any credit cards or bank account in their
details or in their profile. The admin will
automatically pay for it. Let us go to our main account, click on Workspace members. Awesome. So that's how you can collaborate inside Retail AI.
25. Class Project: Hi, everyone. This
lecture is going to be your class project or
about your class homework. So the class homework
for you will be to create any assistant, as well as integrating
that assistant inmig.com, and you can share the
screenshot in PNG or GPG format in the
project section to earn your certificate. Let me show you some of the
solution that you can create. First of all, you can create
an inbound call assistant. Well, if you have barber shop, if you have a dentist, if you have a restaurant,
something like that, you can make that solution
for your use case, as well as you can
do outbound calls for qualifying leads, food delivery, transportation
logistics, et cetera. These are the two
categories that you can create your
homework and share a screenshot or attach
the screenshot in the project section to
earn your certificate. Well, that's all for
this homework lecture. Again, if you have any question, feel free to ask me and
I will help you out.
26. You Made It! Closing Moment: Congratulations,
guys, you did it. You should be super proud of yourself because you
made it till the end. And you should
clap for yourself. And if you don't, I will. Now let's come together
and thank you very much on this exciting journey
of retail EI together. We have built some AI agent, we have break some AA agent. We have looked at all
the main.com scenarios, time integration,
calendar integration, co high level integration, even NAD integration,
and how to set up your own A automation agency by using a bunch of softwares, using cold outreach,
to be honest, we have covered
literally everything. Now it's your time
to take action and get started on this journey. Use the automation tempors
that we have built together, prompts that we have
used in order to create our retail AI agents
high integration at integration so that you
don't have to start from scratch and you can get a head start to start your
automation journey. But the thing about
automation is it will not come together
in just one time, keep experimenting and keep
learning from the mistakes. A one final piece
of advice would be don't try to implement
everything together. Pick one thing at a time, master it, and make sure
that it is working well. Then move on to another, and my DMs and my
ems is always open. You don't have any
questions or doubt, please feel free to reach out to me and I'm always
here to help you, as well as to hear
your success stories that you will get
from this course. Alright, once again, thank you
very much in this journey, and I hope to see you in
some of my other courses. Bye bye and happy
autumn meeting.