How to Build & Sell AI Agents: Ultimate Beginner’s Guide

355.95k views48746 WordsCopy TextShare
Liam Ottley
🚀 Access the AI Agents Full Guide for FREE on my Skool Community: https://b.link/2d8xkb9k NOTE: Th...
Video Transcript:
Two years ago, I taught myself how to build AI agents without any prior experience in AI. Since then, I've started multiple AI businesses that have generated over $5 million in revenue. I've grown from 0 to 450,000 subscribers here on YouTube, and I've built AI agents for some of the biggest companies in the world. It's pretty safe to say that learning how to build AI agents has completely changed my life. So, in this full course, I'm going to teach you everything—and I mean everything—that I have learned over the past two years about building and, more
importantly, making money with AI agents, even if you don't know how to code. My hope is that you, too, can learn and use this incredibly powerful skill in order to build the life of your dreams before these AI agents start taking our jobs. As you can see by the length of this video, I'm not going to be holding anything back. To make it a bit easier to consume, we're going to split it into three different chapters. First, we'll build your foundational understanding of AI agents, covering what they are, how they work under the hood, and
the key concepts that you need to know before you actually start building them—all without any technical background required. Secondly, we will dive into four different end-to-end AI agent tutorials, taking you over my shoulder every step of the way as we build some of the most popular AI agent use cases on the market today. I have carefully planned these builds to give you a taste of multiple different no-code platforms and different AI agent types, and you'll learn how to build each of these step by step while watching over my shoulder. Finally, I will give you my
proven blueprint for monetizing your AI agent building skills over the coming years while this technology continues to explode in adoption and popularity. I'll be sharing the exact strategies that I've used to generate millions of dollars with this skill set over the past two years. So, let's get into it. Now, if you're new to the channel, let me quickly share why I'm qualified to teach you about AI agents. If you are new to the channel and don't know who I am, my name is Liam Mley, and two years ago, I started learning about AI with no
prior experience in the field. I taught myself how to build AI agents and chatbots all through my own self-study, which I documented right here on this YouTube channel from day one. You can go back and watch all my previous videos on how I got from there to here. This led me to starting Morningside AI, which is my AI automation agency where we build AI systems and agents for businesses—from basic customer support systems to full AI SaaS platforms. We've even built my own AI agent SaaS platform, Agent, which now has over 45,000 users. At Morningside, we've
worked with publicly traded companies and, even recently, an NBA team. I also run the world's largest AI business community with over 120,000 members on School as of this recording. Through my community and this YouTube channel, I've taught hundreds of thousands of people from all backgrounds how to build and make money from AI agents. Everything that I'm about to teach you today is exactly what helped me achieve all of this. So, let's dive in. Now, if you look at how long this video is, you'll realize that there is a lot to cover here. I don't want
you to give up halfway through the video, so let's quickly take a moment just to get clear on why AI agents are quite literally the next big thing. I know that sounds cliché, and you hear it all the time, but seriously, they are. Learning to build them is by far one of the most valuable skills anyone can have over the coming decades. If my experience over the past two years is anything to go by, that should be enough proof for you to believe me. So, stick with me. Here's the hard truth about AI and jobs
right now. According to the latest research, McKinsey predicts that AI and agents could automate up to 50% of current work by 2030. The World Economic Forum reports that 41% of companies plan to reduce their workforce due to AI. A lot of this sounds doom and gloom, and of course, many people are naturally worried about their careers in the future based on seeing this kind of data. But it's not all bad if you know where to look. This video isn't about making you feel sad; it's about uplifting you. If you look on the flip side of
the same data, these same reports reveal an enormous opportunity for those willing to seize it. The World Economic Forum's Future of Jobs report states that 50% of employees plan to reorient their business in response to artificial intelligence. Due to this reorientation, 66% of employees plan to hire talent with specific AI skills, such as prompt engineering. On one hand, we have the expectation of massive layoffs and automation of work over the next five to ten years. On the other, we have the majority of employers searching for people who have these AI skills or really just basic
AI literacy. Why? Because AI-literate employees who can automate parts of their work can have 5 to 10 times the output of someone who doesn't have any AI literacy. I promise you that brushing up on your AI and reaching this point of AI literacy will put you on the winning side of this next wave. 5 to 10 years is actually much easier than you think. I mean, it's as easy as watching this entire video in order to build your AI skills base to make a big step toward AI literacy. And if you don't believe me when
I say that a little bit of self-study like this video goes a long way, here's a great clip that I've seen recently on the All-In podcast from one of the most respected investors and technologists in the world, Naval Ravikant, alongside a whole bunch of other very smart billionaires. Again, I would say the easiest way to see that AI is not taking jobs or creating opportunities is to go brush up on your AI. Learn a little bit, watch a few videos, use the AI, tinker with it, and then go reapply for that job that rejected you
and watch how they pull you in. And so this video is exactly what Naval is talking about. So whether you're an aspiring entrepreneur wanting to learn valuable AI skills and launch an AI business like I have, or you're a business owner wanting to just understand agents so you can use them to grow your business, or maybe you're just wanting to make sure that you are the last person that your boss thinks of firing because he or she is an AI whiz and I can't afford to lose them, then I have made this video for you
guys. Now, what I want you to do is close out all of your other tabs. Go get a notebook and a pen and a beverage of choice, and make sure you make a commitment to yourself right now in order to finish this training and ensure that you are going to be empowered by AI and not replaced by it. Now, if you've done all that, let's get stuck into it. All right, so step one in building AI agents is knowing what the hell an agent actually is. Two years ago, when I first started learning about AI
agents, I had no idea what they actually were. The term "AI agent" gets thrown around a lot in almost everywhere these days. You got AI agents this, AI agents that. But what actually is an AI agent? Well, the clearest definition that I found that helps beginners really wrap their heads around what they are is this: an AI agent is a digital worker that can understand instructions and take actions to complete tasks. So, in a very simple way, just like businesses have employees who handle different tasks, an AI agent is like having a digital employee. But
the cool thing is that you can build them, and you can make them do whatever you want. You're literally building an employee that you can put to work to do things for you. And of course, they cost much less to run than a human, and they don't need sick days. They don't start beef with Mike over in the sales department because of his comment at the coffee machine. So, I'm sure you can see the appeal of this kind of digital work and AI agents to businesses looking to adopt them. In order to really understand why
these AI agents are such a big deal, we need to look at where we are coming from. Most of you have probably encountered those chatbots on websites before. You know those little chat widgets that pop up saying things like, "Hey, how can I help you?" So, these kinds of chatbots are pretty basic, right? A lot of the time, they're useless, and they're kind of like a waiter who can only really recite the menu but can't actually take your order or bring your food. They can't do anything. They just respond with some kind of pre-written answers.
Well, nowadays, it's a simple AI-generated answer. But AI agents are different, right? Here’s an example: if you ask a regular chatbot about booking an appointment, it might say, "Oh, our business hours are 9 to 5. Please call to book." And that's it. They just give you some information back. But with an AI agent, it could actually go and check the calendar, find some available slots, go back and forth with the person that they're chatting with in order to book an appointment, send you a confirmation email, then update the business's scheduling system and CRM automatically in
seconds. This ability to take action is what makes agents so powerful. They're not just fancy chatbots; they're actually digital workers who can search through databases, update spreadsheets, send emails, book appointments, generate hold documents, and much, much more. And so, building and deploying an AI agent is a bit like hiring a new employee because when you bring someone into a business, you need to first explain their roles and responsibilities to them. You need to give them access to your system so they can use it, and you need to trust them to handle those tasks independently. Now,
when we are building agents, as we see later, it's exactly the same, except these agents are going to be working 24/7. They're never going to get tired. They can be duplicated and modified instantly, and they cost a fraction of what a human employee does. This is exactly why understanding how to build and sell AI agents is becoming such a crucial and valuable skill these days. Because whether you're an entrepreneur looking to scale your business or you're an employee wanting to become irreplaceable and make more money at work, knowing how to create and deploy these digital
workers is like the biggest cheat code in the whole world right now. Now that you understand what AI agents actually are, let's look under the hood and see how they actually work. Just like humans need... a brain, memory, and tools. In order to do their job, AI agents need specific components to function correctly. An AI agent needs five key parts to work. Firstly, every AI agent needs a brain. In the AI world, we call this a large language model, or an LLM for short. And you've probably heard of some of these: you've got GPT from
OpenAI, Claude from Anthropic, Gemini from Google, etc. You can think of the LLM as having a super smart intern who can understand your instructions in plain English and then figure out how to get things done from those instructions. So, without this brain, all of the other parts would be useless, right? It's like having a whole desk full of office supplies but having no one sitting there to use them. Secondly, the brain needs instructions on how to behave. This is prompting. Writing a prompt for an agent is how you program much of its behavior rather than
having to code it manually. This is really what makes building AI agents so much more accessible to non-coders, as programming the functionality and how they work is done through clearly written instructions rather than having to actually code it. Thirdly, agents need memory. Imagine trying to have a conversation with someone who forgets everything you said 30 seconds ago, right? So, memory is really important because it allows your agent to remember what you talked about just a few messages ago, keep track of the tasks it's been working on, build on previous conversations, and, even in more advanced
ones, learn from your past interactions. The good news about memory is that most AI agent platforms completely handle this memory component automatically, so you don't need to worry too much about it. But just know that it is an important part of a functioning AI agent. The fourth component of an agent, and this one is optional, is external knowledge. AI models like GPT and Gemini are pre-trained on a huge amount of data, but that data is basically cut off at a certain point (e.g., 2024). It's kind of like having a new employee who only really knows
what they learned in school. But just like you can train an employee like that with your company's specific materials, you can also give an AI agent additional knowledge on top of the information it was trained on by providing things like PDFs of your company documents, spreadsheets with product information, customer service transcripts, or basically any other text-based information. Without this added knowledge, agents will be limited to general information and couldn't handle specific business tasks. But as I said, knowledge is optional, and you will only need it in some builds. Finally, and this is the most important
part, we have tools. Tools are what transform an AI agent from just being able to chat to being able to actually get things done. You can think of tools as giving your digital employee access to different software. Just like you might give a new hire access to your email, calendar, or CRM system, you can give an AI agent access to digital tools that let it take actions when needed. These tools allow your agent to check real-time data, update databases, send messages and notifications, create documents, and all the other tasks we went over just before —
and much, much more. The really powerful part, which we're going to cover later, is when agents use multiple tools together to solve complex problems, just like we humans would use multiple different websites and software when doing our tasks. Now, let me show you how all of these parts work together in a real example. Suppose you want an agent to handle customer support. When the agent is sent a message, the brain immediately understands the prompt that it has been given and also understands what the customer is asking. It checks its recent memory before replying each time
to understand the full context of their conversation. If the brand detects that the customer wants a specific question answered from the knowledge base, it will use its external knowledge to deliver the right information to them. Finally, it may use tools to update a customer's account or process a refund whenever required during the conversation. All of these things happen in seconds as the conversation proceeds, which is why AI agents are such a game changer. They can combine all of these components to create a fully capable digital worker that very closely replicates how humans work. Now that
you know the anatomy of an agent and the five parts of it, a more practical framework for understanding how we actually plan and build AI agents is what I call the three ingredients. Basically, you only have three elements to plan when creating an AI agent, which, when mixed in various ways, can create millions of different types of agents for different use cases. This is because the AI model or brain can be easily swapped in and out and isn't really a major factor in the performance of the agent; any of the top models you pick from
any of the different providers at any given time is pretty good. Also, the recent chat memory is handled by default in almost all cases when you're building on these platforms that you're going to see later. What this leaves us with is what really matters when building and planning AI agents: Firstly, the knowledge — the external data that you want the agent to be able to use when answering. Secondly, the tools — the different actions that you want the agent to be able to take, e.g., saving the contact info to... The CRM, or getting some live
data on stocks, or sending an email. And then finally, prompting, which is the glue that ties everything together and determines how the agent behaves. So, write these down. While the agent has five components—the brain, the prompt, the memory, the knowledge, and tools—your main focus as an AI agent builder is in the three ingredients of prompting, knowledge, and tools. In the next chapter, we'll be looking at how you actually build an agent using the different combinations of these three ingredients. But first, we need to dive deeper into the keystone of understanding how to build your own
valuable digital workers. And it all comes down to tools. Now, we need to dig a lot deeper on tools, as they are by far the most powerful part of AI agents. But in order to understand deeply and be able to build powerful agents with them, we need to take a few steps back and actually cover the basics of how software, the web, and the internet as a whole works. Now, this is as techy as it's going to get in this video, but I promise once you understand this, it's so important, and it's literally like having
a superpower. So, please stick with me through this. So, remember how we said that tools are what allow agents to take action, to actually do things rather than just chat? Well, the way agents use tools and do work online is just how we do it as well, but with one key difference. Instead of clicking buttons and typing into forms, agents use what we call APIs. And every time you use the internet, you're actually making dozens of requests to APIs as well and getting responses back, but you just don't realize it. So, let me show you
what I mean. When you click on this video, here's what actually happened. Firstly, your browser sent a request to YouTube servers saying, "Hey, I want to watch this video." Then, YouTube servers sent back all of the data needed. Thirdly, your browser unpacked that data and started playing the video on your screen. So, this request and response pattern happens with almost everything that you do online. When you open up Instagram, you are requesting your feed from Instagram's service. When you send a tweet, you are sending your data through Twitter's service. And when you check your email,
you are requesting from Google the latest messages in your inbox, and they're sending it back, and your browser is loading it. Thankfully, we get pretty websites and apps that make it very easy for us to do this and use software via APIs through a nice application. But under the hood, it is still two computers talking back and forth, requesting, sending, and displaying new information for us on our screen. These requests and responses happen through what we call APIs, which are application programming interfaces. So, you can think of APIs like waiters in a restaurant. Basically, they're
going to take your order, or your request, to the kitchen, which are the servers of the business, and then they bring back your food, which is the response. So, you have request and response, and you have you as the client, and them as the server. There are two main types of requests that you can make. Firstly, either a GET request. This is basically just like asking for information, like checking the weather, looking up the price, or loading this video. You're requesting to get the information to do something. Secondly, we have POST requests, which is when
you're sending some kind of information, like posting a tweet, sending an email, or uploading a photo. So, go back and write both those down because we're going to be using them extensively in the building section of this video. Now, here's where it gets interesting. So, AI agents use these same APIs as their buttons to do things. So, each tool an agent has access to use is essentially an API that it is able to call. These kinds of tools come in two different flavors. We have pre-made integrations, like Google Calendar or Gmail, where it kind of
comes out of the box, ready for you to use and just plug straight into your agent. Then, we have custom-made tools that we can build ourselves. So, you can think of pre-made integrations like buying a ready-made meal where they've done a lot of the hard work versus custom tools where we are like cooking from scratch. Both work, but custom tools give you a lot more control. And this is a skill that I'm going to be teaching you in the second chapter of this video. Okay, so now you’ve got the basics. Let's get clear on how
a tool is actually made and what the key parts are, as you're going to be using them a lot. So, let's break this down using a simple example of a text capitalization tool. It takes in some text and outputs the capitalized version of it. So, first, to create a tool, we need a function. We need something that does work. In this case, it's super simple, right? It needs to take in text and make it uppercase. This can either be done through a basic Python function or you can use an LLM to do this as well.
Basically, we need to build some way to capitalize the text that we give to this function and actually do the work. Next, in order for the AI agent to use this function, we need to wrap it in an API. So, we have the function, and then the API wraps around it. This is essentially making that functionality we created accessible over the internet via APIs. Without it, the function cannot be used by our Agent: And in order to use the API that we've just created and use this function inside it, the API is going to expect
the same sort of inputs that the function needs. So, the input is the text that we want to capitalize, and it's going to output the capitalized version. So, this is very important to remember. The function takes in the input of the uncapped text, does the work, and outputs the capitalized version. We're basically then just building an API around it so that we can put it on the internet, and then we can have an agent that knows how to call that API, send information into the input, go through the function, and then get spit out. Our
agent catches it at the end. But the magic step—and what has really caused the AI revolution to kick off—is that we can explain to our agent how to use this API just by explaining how the API works in natural language. And this is where schemas come in. A schema is like a one-page instruction manual on how to use an API and, therefore, how to access the functionality inside that API. When an AI agent is given one of these schemas, it too can read that instruction manual and determine things like what the tool does, what information
it needs as an input, like we talked about before, and what information to expect as an output. Now, they may look scary, but they're actually really, really easy to understand, and we're going to cover them in the next chapter with this video. The good part about it is that these days, schemas are automatically created by many of these no-code platforms that you build agents on. I'm teaching you this because it still helps to know what they are doing and what's really happening under the hood on these platforms. There are still going to be times where
you may need to roll up your sleeves and do it yourself. The incredible part about these schemas is that modern AI, like ChatGPT, can read these instructions and perfectly understand not just how to use it—like, "Okay, I need an input and then I expect an output"—but also when to use it. For example, let's say we had an agent and we gave it that capitalization tool that we just talked about, and then we said, "Can you please capitalize this text? Mary had a little lamb." The agent would then read over the schemas that we provided it
and see that there's a tool with a description saying, "This tool capitalizes text," right in the instructions for the capitalization tool. We would have said this thing is for capitalizing text, and it takes in some text and gives you the capitalized version. The agent will read that and see, "Okay, this looks like, based off the instructions they just gave, this is the tool that they want to use." Then it will check the requirements and see that the tool takes in one input in string format, which is just text, which we have described as "the text
to be capitalized." So, it reads all this. It says, "Okay, it needs one input. It's in string format, so I know I need to give it some text. And okay, what does this text do? It's the text that they want to capitalize." Great! Now it knows it needs the input, and it knows that this is where it's going to send the text to be capitalized. Now that it knows what it wants, it goes back to our message and intelligently extracts "Mary had a little lamb," not, "Hey, can you please capitalize 'Mary had a little lamb?'"
It's smart enough to know that we want that taken out. So, it will take that part, "Mary had a little lamb," out of our input, and then it sends that to the API where our capitalization function does its thing. Then the API sends back the capitalized version plus a bunch of other response data as well. The agent looks at your original question, looks at this messy response it got back from the API, and then, using its brain (the LLM), it writes a natural language response answering your question. It would say, "Here's your capitalized text: 'MARY
HAD A LITTLE LAMB' in all caps." That may sound complicated. It may have gone over your head. Please go back and just listen to it again. You really, really need to understand this process: the message comes in, looks at the schema, realizes, "Okay, it wants to use this tool." "What do I need to do in order to use this tool?" "Okay, well, then I'm going to grab it out of the input. I'm going to put it in here." And it can actually go back and forth. Say our capitalization tool needed some other input—for example, say
you needed to provide the number of letters you wanted to be capitalized. It may see that this tool needs two inputs and that I've only been given one. So then it will go back and ask me, "Hey, could you please tell me how many letters you want to be capitalized?" You will see this magic in the agents that we're going to build. When the agent can ask you questions in order to help fulfill the needs of the tool, you have this very intelligent system that will really blow you away when you see it in action.
One thing many people miss about this process is that the agent actually gets back raw computer data from the API, or what we call JSON. But using the LLM, it can transform that into natural conversation and answer your question in a very... very, uh, clear and concise way. So, it's basically like having an employee who can read all this technical information and then explain it to you in plain English, which is another part of why AI agents are so powerful. And so, when you understand this pattern that we've just gone through, I promise you, you
will never see the internet the same way again. Every action online is just requests and responses. And therefore, we can build our own tools and AI agents to automate all of it. So, instead of you manually searching the web, copying information, pasting it into spreadsheets, and sending emails, an AI agent can do it all automatically using tools if you build it correctly. It's like having a digital employee who can press all of these API buttons for you thousands of times faster than any human could. And don't worry if this feels a little bit technical. In
the next chapter, uh, I'm going to show you how to create your own tools like this from scratch using platforms like Relevance AI, uh, where you can build out powerful tools without writing any code. It will really start to click into place once you see the stuff in action in the building section. But before we get into that, let me reveal the power of AI agents, which is unleashed when they are given multiple tools to work with. Now, obviously, having an AI agent that just capitalizes text isn't very useful. I get that. The real magic
happens when you give agents multiple tools and the ability to use them together in order to achieve complex goals. So, do you remember our definition? AI agents are workers that can understand instructions and take actions to complete tasks. When you give an AI agent a task, it's going to try its best to execute on it, but if it doesn't have the right tools on hand to do the job, it's going to be useless. And so, the more tools that you can give an agent, the more flexibility it has to solve problems just like a human
would. So, let me give you a real example from my own business, right? Say I build an agent and give it the task to find AI startups that have recently raised money, put them in a spreadsheet, add a summary of each of the businesses in the spreadsheet, and then email me the link to the spreadsheet. When you give an AI agent a task like this and provide it with multiple tools to use, it can break down this problem just like a human would. For example, it might think, "First, I need to search for AI startups
using my web searching tool. Okay, let's do that first. Then I'll need to create a new spreadsheet with my Google Sheets tool. And then for each company that I find, I'll need to add a row to the spreadsheet. And then I'll need to write a summary of each business and put it in a new column. And then finally, I'll use my email tools in order to send the link to Liam." And that's all great, but then when you add on top of that powerful reasoning models like OpenAI's 01 and 03 and even things like DeepSea
as the brain of the agent that can plan, take actions, then reflect, and then plan again, and so on, you have essentially created a truly intelligent AI that solves problems and approaches them just like a human would. So, say for example, the original plan was to use the web search tool to search for AI startups raising money. Probably a terrible search term, but what if that doesn't return any good results to the agent? Well, a human would go, "Damn, I need to change my search term," or "Maybe I need to try finding a different method
of finding these companies, like on LinkedIn or something." The latest in AI technology, like these reasoning models, allows these agents to do this exact same kind of reflection and replanning in order to achieve their objective. And this is when you can really see why we call them digital workers because they can do things like planning multiple steps. They will use different tools in a sequence and even adjust their approach based on the results from those tools. Now, I should mention that this technology isn't perfect yet, right? So, these multi-step tasks are often unreliable, and agents
typically need human supervision for more complex workflows. But things are moving incredibly, incredibly fast. In fact, we're already seeing the next evolution, which is multiple agents working together. Instead of just one agent trying to do everything, you can have one main agent to which you give orders, and then it can use all of the other agents underneath it as tools where it can send specific instructions. Like, underneath the main agent, there might be a research agent, which is best at finding companies and has its own tools. Then you have a writing agent that's really good
at writing summaries. Then you have an emailing agent, which has all the emailing tools. And so, each of these agents can be specialized in their specific tasks with multiple tools, and then they all work together to achieve a common goal. This is exactly what major companies like HubSpot, Microsoft, and Google are building towards: these entire workforces of AI agents that can handle complex business processes automatically. In the next chapter, I'll show you how to build AI agents like this for yourself using no-code tools. But first, we need to understand the different ways that these agents
can actually be used in the real world. So, we understand how AI agents and tools work under the hood. Now, great! If you don't, please go back and take some notes, right? You should by now have a whole... a bunch of notes, um, from the stuff that we've covered already. And this stuff that you're learning took me two years in order to learn and be able to apply effectively. So you best believe that it's going to take you two to three watches before it all sinks in. So if you're feeling a bit lost and overwhelmed,
don't worry. That's how it feels with learning anything new, or how it should feel if you're learning something that's actually pushing your boundaries and adding something to your capabilities. Next, we need to look at the different ways that AI agents can be used in the real world. There are two main categories of AI agents: conversational agents and automated agents. Conversational agents are the ones that humans interact with directly through chat on things like websites. You've got maybe you're chatting to it on WhatsApp; you've got interacting with it over the phone via phone call; you've got
chatting to it via Instagram DMs or custom apps and websites. For example, OpenAI's GPT platforms allow you to create agents that you can chat with directly on your computer or on your phone. Using platforms like my own Agent, you can connect these agents that you build onto a WhatsApp number or onto Instagram. And I'll show you how to do this in the tutorial chapter of this video. So, in all these cases, you or someone else is there sending messages or instructions to the agent and explaining what you want to do and kind of chatting back
and forth with it, whether it's on a website, WhatsApp, Instagram, or whatever. And within these conversational agents, it's not just text-based. It's like I said, there are AI voice agents as well, which are an extremely exciting sector of the AI space right now. These systems use multimodal models that can take in audio as input and then produce audio as an output. So these agents can be chatted to over the phone or via audio rather than via text. This AI voice stuff is super cool, and in the tutorial section, I'm going to show you how to
take the exact same AI agent that we can chat to on a website and then connect it to a phone number to talk to it on the phone. But then we get to what I call automated agents. These are slightly different from the conversational ones. The truth is that AI agents don't always need humans to talk to them and use them directly. All they need is some kind of input or instructions to trigger them, which tells them what to do. This means that we can build these automated agents that, instead of waiting for some kind
of human input, are actually part of larger systems and processes, triggered automatically by events like a new email received or a form submission, or they work on schedules like once a day. They essentially work in the background without necessarily having human oversight or input. For example, later in the video, we are going to be building an automated agent that is triggered by a new form submission. When the form is submitted, some of that form data is taken and sent to the agent, which then causes it to use the tools we've equipped it with and follow
the instructions in the prompt that we gave it in order to make decisions and take appropriate actions on our behalf in a fully automated way. We are still sending the message to the agent, but it's not a human needing to type it manually or speak it over the phone. There's no human step; the input is being automated in some way. This, of course, opens up a huge number of use cases for AI agents in businesses, especially. And of course, I'll be showing you how to build both types of these conversational and automated agents in the
tutorial section of this video. But the last step of building your foundation of knowledge before we move into that is to look at some real-world examples of how businesses are using these AI agents right now. Firstly, we have the personal assistant category. This is what most people think of when they hear the word "agent"—something that you can chat with that's going to update your calendar, send emails, and even make phone calls for you. Now, these are all nice-to-have features, but honestly, this space is likely going to be dominated by the big tech giants. You've got
OpenAI through ChatGPT trying to do this with Tasks, Google through their suite of apps and connecting them to Gemini, and Apple through Siri. These guys are going to eat up this entire market of personal assistance and your own personal AI agent that helps you with personal tasks. The real opportunity lies in business applications and how people like you and I can build and sell AI agents to businesses, which we're going to cover in depth in the final chapter of this video. So, we've got the next chapter, which is going to be on building the four
tutorials, and the final chapter is all about how to sell and monetize your AI agent skills that you've just learned. One of the core use cases for businesses right now is what's called co-pilots. These are AI agents made for specific roles in a business. We're going to build one of these later in the video. These specialized AI agents are essentially helping someone in a specific role in a business to do their job more effectively. Take a customer support co-pilot, for example. It would have a knowledge base that allows reps to get answers to customer queries
instantly and deliver them over the phone. They've got the little co-pilot up on the side there. They're on the phone. They get a question; they can search for an answer in the knowledge base, and it gives them back what they need, which they can then communicate over the phone. This same agent could also have a tool that allows them to look up the customer information very quickly. Um, I could have another tool that makes it very easy to send a summary of the call into the database so that the next rep who picks up the
phone and talks with them knows exactly what was discussed previously. It's like giving every support rep some kind of AI assistant that makes them dramatically more effective. It also makes their customer support a lot more consistent as to what the company wants people to be saying, which is a big problem with managing large customer support systems. Then we have lead generation and appointment-setting agents. These are probably the most valuable type right now, and businesses are using these on their websites, through WhatsApp, on Instagram, and even over the phone to engage and have conversations with interested
people who are approaching the business 24/7. They can offer instant answers about products and services, and they're even smart enough to be able to capture emails and phone numbers mid-conversation for later follow-up by the sales team. Some can even book appointments on the spot and mid-conversation by using a tool to check the calendar availability and then using another tool to create a new booking once they've agreed on a time with the prospect. Another real-world agent use case, and one of my favorites, is a research agent. These can help businesses by automatically researching leads that come
in through their website or elsewhere. When someone fills out a form, the agent can spring into action and start searching the web for information on the company, finding the LinkedIn profile of the person they're going to get on a call with, and gathering any other valuable data that it can find. Then it can take all of this information and generate a summary of who this person is and what this company is, as well as determine whether they're a good fit for working with the company. If so, then they can send the sales team some kind
of detailed brief or suggested strategy on how to close this particular person on a call based on the research. So it's basically like having an automated team of researchers who, as soon as leads show interest in your business, are out there figuring out everything about them and determining, one: whether they're a good fit for you and your products and services, which is called qualification; and, secondly, if they are qualified, giving the sales rep something that will bring them up to speed on who this person is and what this company is like, along with how they
can try to close them. So, we have covered a lot so far. Before we dive into each of these agent builds that I'm going to walk you through over my shoulder, please make sure that you've got your notes out and that you understand the core concepts of this video properly. You should be clear on things like: what is the definition of an AI agent? What are the five parts of an agent? How is building an AI agent like being a chef? How many ingredients do you have to play with? What are the two main parts
of a tool? And what do schemers do? So, pause the video now and try to answer these questions. If you aren't 100% confident, you need to go back and watch it again. So, don't rush this, or you're going to feel way out of depth when we get into the tutorials that we're going to be covering next. But if you are, congratulations. You are one step closer to AI literacy and becoming a much more valuable participant in this global economy. Before we get into the second chapter, there are just three very quick things from me. Firstly,
if you are a business owner who wants to fast track becoming an AI leader within your industry, at my agency, Morningside AI, we offer everything from AI education and upskilling programs for executives and staff to AI strategy and roadmap consulting, and of course, AI development services as well. We would love to help you get ahead, so feel free to get in touch via our website in the description below. Secondly, at Morningside, we are hiring for all sorts of roles right now. Whether you want to build AI systems for some of the world's biggest companies that
we have as clients, help produce videos like these that are seen by millions of people, or create educational material for thousands of businesses, we have roles for all sorts of things right now. You can apply using the link in the description. Even if you're just vaguely interested, I really recommend you check out the link and see what roles we're hiring for. You never know what's going to be on there, and it may be a very good way for you to use your skills to fast track into the AI space by working under myself and my
team. Finally, if you have gotten any value so far in this video, please head down below and leave a like on the video. It helps me reach more people. I put a lot of work into these videos, and it also lets me know that you enjoy this kind of content and that I should make more of it. Of course, if you like this kind of content and want to see more of it, you can subscribe. So that YouTube will put my videos up for you whenever a new one is released. So, there's also a little
share button if you want to click that. That'll let YouTube know this is good content and that you're sharing it with other people. Not only will that help me, but you can share it with your friends and family who may also want to brush up on these skills or help them find a way to get on the front foot with AI. And that's what I really make these videos for. So, thank you for sitting through that little bit of housekeeping and self-promotion. Now, let's get stuck into the building. I have carefully assembled this chapter on
building to give you the most bang for your buck possible in order to kick off your AI agent learning journey. We are going to be covering four different use cases across four different AI agent-building platforms. These are all no-code, so don't worry about that. The chances of you falling in love with at least one of these platforms is pretty much 100%, as you're going to rapidly start to connect the dots about how you can begin to use these kinds of agents and these platforms in your own life, work, or for your friends and family and
those around you. So, here's a quick rundown of the builds we're going to be getting into. The first build is going to be a sales co-pilot built with Relevance AI. Here, we're going to be building three custom research tools from scratch, including an advanced web scraping tool, which is a great skill that I want to teach you. With these, we are going to create a conversational agent to help the sales reps at Big Boy Recruits, a hypothetical fantasy recruitment firm, in order for them to be better prepared for sales calls. So, that's the purpose of
the sales co-pilot. The second build is going to be an automated lead qualification agent. This will be built on a platform called N8N. This time, we will be helping Big Boy Recruits, our fantasy recruitment firm, to automatically research and qualify new leads and then send an email notification to the correct sales rep. This is going to show you the automated style of agent, where it's built into a process rather than having a human input, necessarily. In build number three, we will build a website and phone-based lead generation customer support agent. This will be built on
Voiceflow, and it's going to be able to do three things. Firstly, it will answer questions from a knowledge base, generate instant quotes using a custom tool we build, and also do lead capture on interested prospects. We're then going to slap this agent onto a website widget so that you can chat with it via a website and through chat and text. Then, we're going to take that exact same agent and connect it to a phone line, so that we can call our agent over the phone and access all of the same functionality we just talked about.
Finally, for build number four, we'll be using my own AI agent platform, Agent, to rapidly build a lead generation agent and connect it to a WhatsApp number that we can chat with. The leads we collect are going to be automatically sent into an Airtable database for later review. Please don't skip around these builds, as they're all kind of connected in some way, where we're reusing parts from build one, build two, etc. But without further ado, let's get into building some agents. All right, people. Enough of the theory. Now we get into the fun bit of
actually building these agents out. I've done a lot of work, and my team has done a lot of work, so thank you to my team members who have helped me put this together—putting together four different AI agent builds for you. This is really going to walk you through an A to Z of all the different platforms that you really need to care about, all the different core use cases and functionalities. There's a lot more, of course, but this is going to really give you the foundation that you need to succeed in the space. Hopefully, it'll
be the thing that sparks your interest because I want you guys to have fun with it. These big tutorials are a lot of work for me. Honestly, when I put in a lot of effort, I build up a sort of mental resistance to it because I know how much work is going into it, and I have to make this big whole session where I'm all uptight about it. But I’m just going to try and relax and enjoy this, and I really want you all to do the same. So, set a bit of time aside. You
can either pause this video or put it on your watch list, but I really want you to take your time with this. I'm going to be doing this more. When you do tutorials like this, there are a few different ways you can do it. I can either do all the building and then give you the templates and kind of just spoon-feed it to you, and that's more so what you do for someone if you're trying to fast-track them and they don't want to learn all the skills. But I know what I'm trying to build here
for you guys, and I'm going to give you a sort of stream of consciousness. You just get to see me kind of jamming out and building these things, and I'll be explaining my thought process and the... Concepts, etc., along the way to reinforce what we've learned before. So, I'm just going to dive into it with our first agent. And so, what I've done is put together a big Figma board here, which is going to break down all these different builds. So, under here, there are some goodies you see. Oh, there are some goodies under each
of these that I've put together. Um, we're going to go through them one by one, starting off with agent one over here. I mean, there's a lot of stuff here, um, that you guys are going to get. So, you'll get the whole Figma, and it includes all the templates. If you want to just kind of watch through this, pick it up. You can either do it and follow it step by step with me and see how I build it and really build those flexible skills that you're going to need to succeed in the space, or
you can just watch it and be like, "Okay, I kind of get what he's doing," and then take all the templates from me at the end. That's, I mean, completely up to you. Depends if you want to be a really, really nerdy builder about it and get into the weeds like I like to do, um, or you just want to be like, "Hey, I want to do this in my business. I want to roughly understand how these things work and what platforms." So, use this resource as you will. But we're going to jump into agent
build number one here, which is our sales co-pilot built with Relevance AI. So, running through this quickly, we have the purpose of this. This is basically going to look a bit like this. It's going to be a co-pilot, and co-pilots work in that you have a, uh, it's basically a specific AI agent that you build for a specific staff member or role. So, say in this case, it's going to be a sales co-pilot. It'll be the thing that the sales rep uses in their day-to-day as they're working on their jobs. You can add tools, like
in this case, you see we're going to have three different tools here for our agent. One's going to be a company researcher tool. So, this is when the sales rep would be like, "Hey, I have a call coming up soon. Um, let's put in this. I need to research this company because this is who I'm going to be on a call with." So, they'll put in the company URL. This tool that we're going to create is going to go and research that company. It's going to bring back and give a summary. And then it's like,
"Okay, well this is the LinkedIn URL of the person that we're going to be on a call with shortly." It's going to pass in the LinkedIn URL. It's going to take that URL, pull all the information, and write a summary about the person. So, now we have the company summary and we have the person summary. And the final step here is going to be what I'm calling a pre-call report generator. That's going to take both that company and prospect research that we've done. It's going to combine them together and be for this specific company. As
you're going to see, this hypothetical company we're building this sales co-pilot for is going to generate, basically, a pre-call report or a strategy prep for the sales rep so that they go onto those calls much more prepared and also sort of a personalized guide on how to try to close this person. So, um, all of these templates are going to be here. Each of these are templates for the tools, and this is for the agent as well. Um, but here's some more information. You guys can pick through this as you wish. But, um, this is
the kind of end result and we're going to be able to chat about it. This would be something you could build for a client, you could build it for your own business, or you could just tinker around. You could build co-pilots like this on Relevance for yourself. So, that's why I want to start with Relevance because it also is a platform that we can build these tools on. So, it's a really, really good one to start with, and let's get into it. The first step, of course, is to go to Relevance AI. So, I'll put
a little link up here. You guys will be able to get this Figma. It'll be on the school. Um, all the information and all the resources for this are going to be like this Figma is going to be linked to the school, my free school community. If you haven't already joined, it's the biggest AI community on the school, the biggest AI business community probably in the whole world. Um, so we can jump across that first link in the description. You'll be able to find this in the YouTube resources section. Um, pretty straightforward. Of course, when
you click on this, it's going to ask you to log into Relevance. So, if you haven't already, you can make an account. Um, it's fairly low cost. They have a free plan, then a team's plan, I believe. Um, so it's not too much, but it is a really, really valuable tool as you're going to see. So, you can sign in here. I'm going to jump in with my Google account. There may be a bit of setup for your account, but I'm sure you guys are smart enough to figure out how to set up an account.
I'm sure Relevance also makes it easy enough. So, then we get taken to this dashboard, but we see on this left-hand side, We have tools. So, these are the tools that I've talked about, um, where it's some kind of functionality that we can create, and we can build it all on Relevance no code. There's even sort of extensibility, where you can add more functionality into Relevance by adding some low-code components or even custom code. So, Relevance is a really great base for building not only tools but also the agents that you can connect into it,
and we're going to use the same Relevance tools that we make now in multiple different agents that I'm going to create for the rest of this video. So, first things first, if we go back to the Figma here, we see we need to make three different tools. Tool one is Company Researcher. It's going to take in a company URL, it's going to search the web, and it's going to return a summary. So, that's the functionality we need. Let’s go and create a new tool. I'm going to call this, um, Research Company. We can give it
a cool little—I'm going to zoom this up for you guys. Hopefully, that's the right size. Um, uh, search. Have fun with this stuff, guys. Like, if it's putting stupid emojis on things to enjoy it, then that's what you need to do. Like, uh, if you make it a chore, it's going to feel like a chore, right? Um, now we get to descriptions. Um, this is something we're going to see recurring, but basically, as you know and as we learned in the concept section, we need to have natural language descriptions of our tools and of our
APIs so that the agents can read those descriptions and understand, uh, what the agent or what the tool does and what those different parts do. So, you'll see this recurring throughout this. But first things first, what does this Research Company tool do? Um, it takes—oh, I got caps lock on—takes, um, and there's also some tutorials here if you want to go deeper. Relevance has some great documentation as well. Um, but it takes in a company URL and scrapes the website, then returns an AI-generated summary. So then, to build a tool, we need to have some
kind of input. You don't always need an input; it can actually just be triggering, but generally, you're going to have some kind of input that the agent needs to pass into the tool. In this case, to Research Company, it's going to need to take in some text, which is going to be a URL. Um, we're going to say “company URL.” And then, again, here we have another description. You see, describe how to fill this input. This is again going to help our agent within Relevance AI and elsewhere, as you'll see in Tutorial number four. Why
this is so important to add in the descriptions, right? So, this is a URL for a company to be researched; it must be in the format "https://..." So, we need to have the "https" for this to work. So that's going to be our input. Now, if this seems a bit confusing, just stick with me. It will make sense in a second. This stuff—if there's anything that I've learned from picking up so many different tools, like when I first got into Facebook ads, when I got into building these kinds of agents, it’s that you feel completely
overwhelmed, but that’s all just part of the process. And what feels difficult now is not going to feel difficult forever. So, just please stick with me. Um, and it's a really, really great feeling once you go and realize, "This was hard a few weeks ago, and now it's really easy." So, we've got our first input. That's what the Research Company tool is going to do. And then we need to define our steps. So, the next step, we can go add. I'm going to hide this so we get a bit more space. Add step. Now, the
cool thing about Relevance is that it comes with a lot of great functionality out of the box. Here’s one: extract website content. We have LLMs, we have Google searching, we have all sorts of AI generations, and replicate um, knowledge bases as well. There's so much cool stuff on here, and this is why I really rate Relevance as one of the best platforms. If you were to go all in and want to upskill, you can build so much on this. Um, so I'm a big fan. I love the Relevance team and what they're doing. So, the
initial plan for this build was to use "Extract Website Content," which is fairly straightforward. We can say—oh, one other thing—um, the company URL we are going to be using throughout our tool here. So we can change this text to say something more descriptive: “Company URL.” You guys are going to think and write like coders now because you need to, uh, use some kind of syntax and follow some kind of variable naming convention. This is a standard one, or you can do things like “Company URL” in camel case, but I prefer this format, as I'm mainly
a Python kind of guy myself. Now that we have that named, we can use it in these kinds of fields. So, here you can see it pops up: Use inputs. So basically, when this tool is run, it’s going to take the inputs or the information we put in the inputs, and it's going to pass it to different steps and use them as we describe within the builder here. So let's run this quickly. Let’s put in my company: https://morningings.ai. Um, and then we can click, uh, run here. So, that's going to go to my website and
scrape the information off of it. There we go. So, it's got all of this, but you see it's just pulling back the first page. Um, and this is why I actually shuffled this around. I want to show you guys how to do something a bit more advanced. I know this is supposed to be a beginner tutorial, but this is not really that useful, and it's a very easy thing for me to just bump this up to a little bit more valuable. Um, while the relevance tool here is great, we can do better. So, we're actually
going to delete this. Um, you can use that step for all sorts of other things, but I really like what's called Firecrawl web scraper. This is a cool app. Um, firecrawl.dev. Shout out to the guys at Firecrawl. Basically, if we then go HTTP, oh, I should just see if they can do it. Morningside dot in, and now do a free scrape for us here. So, this is just going to do the single URL just like we got in relevance. But the difference here is, if we then go to crawl, if you hover over this, it's
going to crawl a URL and all of its accessible subpages, outputting the content from each page. So, instead of just taking that front page, it's actually going to crawl through multiple things. So, this is really the first cool thing, or first skill that I want to put in your tool belt: you have things like Firecrawl that you can use. Their relevance tool has things like a map, which is just going to output all the URLs that it finds. Then there are other things here where you can use AI to extract data. I'm not going to
go into that. But what we want is this crawling functionality from Firecrawl. So, I'll put a link in on the school post that comes with this video. Again, first link in the description to go to the school, and if you go to the YouTube resources section, um, there will be a, uh, whole post on this, and all the resources will be in there. It'll also be in my free course on school as well, so you can find it in the classroom section. So, you want to sign up to Firecrawl so you can get an API
key. It's very easy. We can just go through with Google. Again, this is not sponsored, and there is zero sponsoring going on through any of these tools. I guess I'm kind of sponsoring my own tool because I'm putting it at the end, but I'm not getting paid a dime for any of this. I'm really just trying to put you guys on to what I like to use, what's made me money, and what's made me a more valuable AI automation expert or developer for my companies and for the companies you work with. Continue, and then you
get to the dashboard here. It might look a bit scary, but what you can do is go to the API keys. So, you can click on create an API key here. YouTube, I'm having issues with mine. It should be fine for you. I've already got an API key, but once you get the API key, what you can do is take it and come back here to relevance. You can go into the side panel here. Where is it? Settings. And then we have our API keys. So, we're going to need to add more into this later.
So, keep an eye on this. This is something you need to be familiar with. Um, and you can scroll down to Firecrawl, and you just pop it into this Firecrawl API key section here, and you're good to go. And you can come back. Oh no, we don't want to duplicate that. Now we've got our Firecrawl set up. We need to make a couple of tweaks here. We have, of course, the—if you want to get those variables up, you can go bracket bracket, um, or curly bracket curly bracket, which is shift, um, to get those. I
don't know why it's not popping up. There we go. Company URL. And if we hover over this, we can see it says scrape the provided URL only. Uncheck if we want to crawl instead. So, if we want to get that crawl functionality that we just saw, and that we think we want to get all the data, we can, uh, uncheck it. And then we want to extract the main content. So, you might have to just trust me on that one that we don't want to have all of the other rubbish; we just want the body
of the website. Um, a number of pages. We don't want this to take too long. You can expand this much more, um, but I'm just going to go for, say, five for now, just to keep it, uh, quick. And then now what we can do is run this again. We've still got my URL up here. We can go run step. Give it a second. You will at some point have to pay Firecrawl; of course, it's not a free service, but they do have a free plan, so you should have no issues with getting that. So
here you can see we're getting a lot more data back from this web scrape than we were with just the relevance version, which is great. So, the next step is we have this data; we want to generate some kind of research summary, um, so that we can send that to our sales script once they have requested it. So now it gets into the fun part of... Writing LLM prompts. For this one, sometimes you need to really go and make a big effort, which we are going to do later, as you'll see. But in this case,
we just want a quick summary. I'm going to throw one in here that I made earlier. All of this will be available on the Figma, or it'll be provided somewhere in the resources, right? But, um, if we just need something quick and dirty here, it's not really a massive part of the project, so it's okay to just whack one in there. So, bang, I've got it in there. Can you please take this website content and summarize it into a 300-word natural language summary that clearly outlines where they're based, their values, etc.—anything that would be helpful
to know for a sales rep who will soon be on a call with them? Uh, break it into key areas like overview, products and services, team, etc. And I've got a couple of things here to make sure that it doesn't mess up, which it was doing for me a bit in testing. So, we do want to put in, if we go curly bracket, curly bracket, we want to put in the fire call data here, which is going to be all the website data that came back from our scrape. We want to then insert it into
this prompt here. So I hope you're starting to see the things in your cogs and your brain are starting to click into gear here. And then we get to select the model for this. It's a pretty basic task, so I want something quick and cheap. Um, for many of you, it's going to be easiest to work with the OpenAI APIs because you've probably already played around with your API key before, which I'll show you how to do in a second. But, let's go with GPT-4 Mini. Relevance, of course, does have support for all of the
other models. But my tendency for most tasks now is to actually go for some of the Google models that have come out. Again, you guys might be watching this in a year or whatever; it might be quite different, but at the moment, Google is really leading the way with making the cheapest models possible, and they're actually really good as well. The price decrease on using things like Google Gemini Flash Light and Google Gemini Flash 2.0 and stuff like that is ridiculously cheap, and it's also a really good model. So, it's a bit more difficult to
get APIs on the Google side, so I'm just going to stick with OpenAI for this tutorial. Um, so let's go GPT-4 Mini. And then we need to, of course, set up our API key. Um, if you scroll down, where is the OpenAI? So, to get your OpenAI API key, you need to go to platform.openai.com/playground, sorry. Um, this will again be linked in the resources, or you can just type platform.openai.com. I'm sure you'll find it. If you haven't already, create an account and sign in. Then you need to go to your dashboard. Here, you go on
the left side, go to API keys, and click "Create a new secret key." Then you're going to be able to copy that key and bring it back into Relevance. Paste it in here, and then you're good to go and start using the OpenAI suite of models. It's pretty easy, right? So now we have our information back from the scrape. We have our prompt in here, and then we can go run a step and see what this company research tool is going to output for us. Boom. Morningside AI is a leading artificial intelligence development company dedicated
to empowering businesses through autonomous AI agent development, enterprise consulting, and chatbot development. Uh, they got me out of my own team page. Damn. But, uh, yeah, so there you go. That's the company research tool. That's step one. Um, I hope you guys can kind of see how that works. Now, a cool thing about Relevance is there is this build section, which we've just gone through, but you can also go to "Use," and this can be really helpful when sharing these kinds of tools. So, this is not really only just an AI agent tutorial; I'm also
teaching you how to build tools because you can build very valuable tools in something like Relevance. Then you can go share. You can make it publicly available. Oh, and I can click this, and then I can give it to my employees. I can give it to the companies that I'm working with, the clients that I've sold these kinds of services to. And then they get a nice and handy tool like this. I mean, I use these throughout my organization for description generation and a lot of content repurposing. There are tons and tons of different use
cases for building these kinds of tools. Then you can take this URL and share it around to whoever you want. So, this is a great way to use Relevance. Let's go back to our tool here. But for now, we need to keep moving along so we can get this first agent done. So, that's the first tool. I'm going to run through it a bit quicker now that we know how these kinds of tool buildings work. I'm going to create a new tool here. I'm going to call it—this time, if we go back to our Figma.
And I recommend when you guys are building your agents, you're building systems and planning them out. This kind of layout in Figma, if you're not familiar, this is Figma. It's like a design software, but you can also use it for kind of whiteboarding. A Fig Jam board! It's one of the types of, uh, boards you can do, and I use this all the time with my team as well. It's like, if you can't take what I'm telling you, lay it out on a board so that I can review it and give you notes, and then
we all agree this is the build. Um, there's often a lot of, uh, communication issues with explaining functionality. So this AI agent layout, it's really helpful. If it's maybe a workflow automation, you can do box, box, arrow, arrow, arrow—all of this laying out how it's going to be built. Here, I've done it for you in a very basic format. So, we've done this first one. Maybe I just make this green. Um, the second one is going to be prospect researcher. So, this takes in a LinkedIn URL, searches the web, and returns a summary. And you're
going to see how I tie this all into an agent shortly. So, we're going to go research prospect. Sil takes in a LinkedIn URL, scrapes the profile, and then generates an overview of the prospect input. We're going to need a LinkedIn URL—the LinkedIn URL of the prospect. And we rename this. Now, we're going to add a step, and relevance has got us here—link, um, get a LinkedIn profile or company post. So, this is cool because then we can pop in our LinkedIn URL here. Oh, we don't need two of them. So, we're going to get
the user profile here. Then, if I put in mine—my LinkedIn profile—if you guys want to connect with me on LinkedIn, you're more than welcome to do so. I'll put it in the description below. Um, we can do a little run step here. So, if we go back over to data here, that's great. We've got my about section, so this goes a very long way because it's in, uh, JSON here. It's got my company, it's got my company domain, where I'm from, years, company founded—tons and tons of great information that you guys can use and we
are going to use shortly. So, this is really cool. I would probably add one more step to this if I was taking this, um, and building it for my own team. I would add in another LinkedIn scrape here, um, where we just do the same thing, but we also get the posts because posts can give you a bit more up-to-date information on what they've been doing recently. You guys can add that, and you just go add a step LinkedIn, and you do the same thing as we've done here, but you change this to LinkedIn post—get
user post. So, that may be a cool thing for you guys to add. The, uh, functionality on at the end is a bit of a challenge; you can pause this video and do that. And then we need an LLM step to take this again. I'm going to grab a pre-written prompt that I did just to save some time—going to drop this in here. It says fairly similar stuff, um, LinkedIn data; I'm going to put all the data in there. And then we're going to use GPT-4 mini again. And we can give that a run because
we've already got this data queued up here. And there we go! We've got a nice summary. Um, if I change this to nice and formatted—there's a little button down there between raw or formatted. And you can copy the stuff out of here, of course. So, Liam Mley, my followers! Damn, I got a lot more than I thought. So, there we have the summary: my name, where I'm based, uh, information, my career experience—super handy stuff. And this is going to be super helpful in the next step when we generate that pre-call report. So, very quickly, we've
created one more tool. I'm going to save this. So now we've got, if we go back to our Figma, we have two of these done. Now the final one is going to take in the company and prospect research and generate a pre-call report. So, this one's going to be a little bit different. If I go create a new tool, pre-call report tool. Okay, pre-call takes in company and prospect summary and generates a pre-call report for sales. Direct. And now for the inputs for this, we need long text, not just normal text, because we're going to
be taking in that big company and, uh, prospect research. So we have prospect summary—summary of the prospect based on length and profile. And a prospect, in this case, is someone who's a potential customer. Just to clarify that, if you're new to business and don't really get these terms. Company summary, uh, summary, right? We have our prospect summary and company summary in there. I hope you're following along. The next step is just an LLM step, and we want to combine these two together. Again, I've got a little handy prompt for this to save us time. Now,
in this case, you will see that the prompt is a bit bigger, right? So, this is, um, for more important parts when you are creating tools, whether it's for agents or just generally when you're using prompt engineering and LLMs to create value. In this case, we are creating value because we are taking in this prospect summary and this company summary. We're also giving it the context of this fantasy or hypothetical business that we are selling this agent to as like a co-pilot system. We've got Big Boy Recruits, which is a Dallas-based recruitment firm specializing in
software industry talent acquisition for SMBs. You're going to see this kind of recur. Across the different projects we do, but basically we're helping these big-boy recruits automate their business with AI. So, this takes in some context on that business and it's going to generate a report that's going to help the sales rep say, "Okay, this is the company. This is what we sell. This is what we specialize in. This is the company that we're trying to sell to. This is who we're going to be talking to. How can I personalize this call, or what strategy
can I go into this with? What are some angles that I can attack this call from?" And so, to do this, I have a prompt writing tool that I use quite regularly, and my team uses it as well—perfect prompt. So, this tool does a lot of legwork for myself and my team all the time. I'm going to give it to you guys to use for free. You'll be able to clone it into your Relevance account. Basically, what I'll usually do is I'll put on the dictation thing. You've got it on one of these keyboards; you've
got this little thing—basically, whatever on your computer allows you to speak into the computer and it takes in your voice and transcribes it into text on the screen. I'll press that and then I'll explain, as you can see here, what this prompt is doing and why. I'll go, "This prompt needs to do this, this, this; it's going to take in this information; it's going to do this. The reason we're doing this is this, this," and I'll do like a big body of text in there. Then, if I have them, I'll give some good examples of
input and output pairs of how I want it to take in data and how I want it to spit it out. If you give it both of these and you hit run, it's going to print you out using the research-backed prompting techniques that we use at Morningside. It's all crammed in here. There's a video that I recommend all of you watch. It's going to be in the free course anyway on school. So, when you get in there and watch my prompt engineering guide, this is basically the entire information of that prompt engineering guide smashed into
this LLM step here. So, when you pass this information in, it applies all of that and it gives you a prompt that is fully research-backed and performs very, very well right out of the box. So, that's a little bit of extra value I wanted to throw in there for you guys. This is going to be available on the school with the rest of the resources as well. So, basically, I put in the information here about what this particular task was. I said it's going to take in the prospect information, it's going to take in the
prospect summary and the company information, and it spat out this basically first go, and I just had to insert these variables. So, this prompt and everything else will be on the score resources as well. So, in this case, because we are doing a bit of strategy and sort of high-level thinking rather than just summarizing, we may want to change the model here to something a bit smarter. We could go to 03 Mini, which is one of the later ones. Again, when you're watching this, it might be 06 or 10 or whatever the hell they come
up with next, but there's probably going to be some much better models. So, just use a smart one because it's really strategizing on how big-boy recruits can position themselves for this call. So, enough of me yapping about that. Let me grab some inputs for this, and we can test [Music] it. Shout out to muscle. All right. So, I've got this information here about myself, my LinkedIn profile, and my company. And so again, remember that this is for Big Boy Recruits, a Dallas recruitment firm specialized in software industry talent. So, it's going to look at my
company, Morningside AI. It's going to look at me and my background and my profile on LinkedIn. Then it's going to spin, as we see here, review this, analyze this, map Big Boy’s unique value proposition, and it's going to try and create a report that's going to allow the sales rep to sell me or close me better or find some angles to sell to at least. So, if we go run the tool, and now you see that I'm using a lot of just basic web scraping and LLM steps. I just want to show you guys the
basics. The thing is tools can get very, very advanced when you have a CRM you want to integrate into, but relevance allows you to do all of that. It's just within the scope of the tutorial; it can be pretty difficult to pull information from all over the place because I have to set up a database and show you guys how to do it too. So, this keeps it quite confined, but it still gives you a good taste of it. So, if we look at this view, all key business challenges and opportunities, Morningside AI, this Liam's
profile gives me a bit of a rundown of this mapping Big Boy Recruits' unique value proposition. Maybe it's going to be better if I change this to the format. There we go. It talks about mapping big boys' recruits’ strategic talking points. I've been following your journey of digital marketing, AI, etc., diving into opportunity. I work at Big Boys. This assists, and it's even gone and done a section on anticipated objections. So, the idea is that the sales rep is ... Going to have a skimmer of this before the call, which ties into the value that
I've listed here. I'm going to do this for all of these builds, by the way, which ultimately comes down to a better-prepared sales rep who should close more deals, right? If they know more about the prospect and the company, and you have an angle to sell through or at least suggestions, it should increase the conversion rate of the sales team. So, we've built this tool. We can change this to green now. The final step is going to be heading over to our agent builder within Relevance. I'm going to save this. If you pop over to
the left panel here, you can go into our agents. What we want to do is create a new agent. We're going to call it our Sales Co-Pilot. Um, big boy, big boy Sales Co-Pilot. Sorry, I got—like I said, I got to have fun with this stuff where I go kind of insane. Um, this agent is our Sales Co-Pilot that helps reps be better prepared for sales [Music] calls. Triggers? We don't need to do any of that. We go to core instructions. I'm going to again paste in some of the stuff that I've prepped earlier. So,
if I paste this in here, you'll see that it's structured fairly similarly to the prompt that we just did before for the pre-core report generator. This is again using another tool that I've created for AI agent prompting. Um, so, it's fairly similar stuff that I include in that other prompting tool, but the agent's slightly different from just regular LLM steps within different tools and workflow automations. I will include this as well; it's my AI agent perfect prompt generator, and it's fairly straightforward to use. I'll include that in there as well. But basically, you put in
all the information about what the agent is, why it's doing it, the different tools that you're connecting to it, and then it prints out this for you. So, I'll just run through it. We've got a role here telling it who it is and kind of hyping it up and saying how good it is. It explains the task, talking about how it's helping to conduct detailed research on companies and prospects. Some specifics? You don't need to worry about those too much, just reiterating the task. Now here we can enter in the references to tools. So, if
we go slash tool and see, in order to get the agent to function as well as possible, we need to tell it what tools it has available. This is really key across all the agents you build, especially if they're more conversational. You need to explain to them what tools they have and how and when they should use them. So, if I go, you have three powerful tools: Research Company. Um, yep, that's right. Purpose: input company URL, use when needing to gather company information. This one, of course, is the prospect. And then this last one is
our [Music] pre. There we go. So that's all whacked in there. You don't need to worry about that too much. But again, this will be included, this prompt and everything, if you want to follow along. Also, if you just want to clone the whole agent and use it in your own business or sell it or whatever you want to do. We also get to select the model here. Um, I'm just going to keep it as GPT-4 mini. I like some pretty fast responses here because, as someone is using it, it can feel really irritating if
it's not responding quickly. So, we've got all that built out—that's the core instructions in the prompt of the agent. We can go down to the tools section. It's got all the tools connected in here because we mentioned them in the prompt. We can just go through and do some quick settings on here. Um, I don't want to have to do an approval for it. Some tools you can say, look, they've got to give it a thumbs up before it can actually trigger it. Um, prompt for how to use? Just some quick descriptions we can pop
in here. I'm not sure why Relevance doesn't carry that over from the tool. I guess they're asking us to do it again for some reason. Um, when you need to research a prospect, linked and URL, we're going to say this is auto-run as well. Um, and then pre—I'll change this to auto-run as well. Use this when you need to generate a pre-call report from the company and prospect research. All righty. Um, and there's all sorts of other cool stuff. Relevance, as you can see, is like abilities, sub-agents, metadata—extra stuff that you can build onto. Um,
but I just want to get you guys started with the core of this. Um, all right. So, we can confirm that. And boom, we have our agent here ready to go. This is where you can test your agents and use them if you want to. But in this case, I'm just going to give it a quick rundown and say, see if the functionality is working as we planned. Um, hi, I am getting on a call with Liam Otley from Morningside AI. Here, uh, I have details or we can just go [Music] "Lenol report, please," to
prep for the call. Sending your task to Big Boy Sales Co-Pilot. And then we get to see all the debug and how it's actually walking through these different steps. Oh, let's see what he does. Yep. Okay, that's great. It's using the Research Company as we wanted it to. Should Add in one more step there to research the prospect as well. There we go. Using the second tool, it is pretty satisfying when this stuff works. And this is just a really basic one, guys. I don't want you to think this is like, "Oh, well, that's pretty
underwhelming, Liam." I'm trying to teach you the basics so that you can actually build on top of this. So, if you get the bug, if you get the travel bug, if you get the agent bug, and you see the stuff and you're really interested... Oh, look, there it is. Now it's filling out the prospect summary as the inputs. Surely we don't have to watch it do that; it's going to take a while. [Music] Um, I really write that out word for word like that. But when you start to see this magic, and you add in
other cool tools and functionality, you test it on yourself. You can build things like maybe you want to do content and make yourself a little content co-pilot, etc. There we go. To use all the tools, it should be spitting back, and bam, there we go. So, I hope that was worth the wait. Let's go through it now. Here's your comprehensive pre-core report for your upcoming conversation with Liam Mley from Morningside AI. Pre-core report: Talent acquisition under pressure. Morningside AI operates in a highly competitive AI and tech market as they scale. Finding specialized talent, engineers, data
scientists, and AI professionals with a proven record can be challenging. That's scarily accurate because that is literally one of the biggest constraints that we have had to scaling Morningside long-term. It's just really, really hard—even with my channel—to find the right people and get them to commit as developers as well. So, if you want to build a very big general AI development firm or an AI automation agency, you need the best talent, and you need to get a lot of it in, um, so that you can scale up. So, that's bloody spot on. Obviously, this thing
knows that's a good angle to sell through. Um, but yeah, prospect analysis: Liam's a dynamic entrepreneur and thought leader with a robust background in e-commerce, digital marketing, and AI. His journey reflects a passion for innovation and a commitment to continuous learning. Again, that's pretty bloody spot on. Um, hands-on experience. So, there you go. That is the big boy sales co-pilot for big boy recruits. The cool thing you can do now, once you have built this, um, is you can go share. Um, there's a chat UI, which I'm going to turn on now. There are chat
widgets, so you can put them on websites and stuff like that. What I want to do is just pull this up, because this is what you'd be giving to your client, likely, or if you guys are going to start selling these to businesses, which again, we're touching on selling in the last section of this video. So, how do you turn these into a business and start making money from it, selling these as a service, and building these businesses, which is really where the money is made? So, there you go. This URL you can obviously send
to your client. If you're building it for your own team, you can send this to your team and say, "Hey, pin this because you're going to be able to use it. Add more functionality into it," etc. That is how you build a co-pilot on Relevance AI. All righty, that is build number one out of the way, and we are jumping into AI agent build number two, which, if you're listening closely at the start of the section, we are talking about an NAT-based inbound lead qualification agent that's going to be doing some pretty cool stuff for
us, which is a really important function within a business, um, around lead qualification. Um, so this is a really cool one. Again, in this case, this is what we call an automated agent, not a conversational one. What we just built is a conversational agent. Humans are directly talking to it and chatting back and forth and using it, and we are operating it ourselves. In this case, as you can see on this little flow diagram here, this is a screenshot from the final product. We are actually baking this into a workflow that's going to be triggered
on a form submission. We're going to do some research, and then we're going to use the handy AI agent and tools agent within NA10 to trigger another workflow and then send some emails off. So, this capability of using AI agents in workflow automation really expands the possibilities of what you can build. And the software NA10 that I'm going to teach you how to use is really at the cutting edge and leading the charge when it comes to these automated AI agent workflows. And just quickly, it's good that we walk through the purpose and the value
behind this automation so that we know why we're doing it, right? So, this inbound lead qualification use case is based on the fact that companies that market themselves well soon have far too many people reaching out to them, many of whom are not a good fit or what you'd call qualified for what they sell. E.g., they're too small, or they're not in the right industry. Like, you have a business and they say, "We only help XYZ kinds of businesses." And if leads come to that business who are not qualified, then they obviously don't want to
be taking calls or doing anything further with them. So, this process of researching a new lead and deciding whether or not to take a call is known as qualification, which... Is what this agent aims to automate. So the value here is that, instead of having to pay someone to manually qualify and go through all of these leads or using arbitrary rules, which is what some businesses have to resort to, it's like, "Look, oh look, we've got so many leads. Let's just say if they don't want to, if they say that they're not on this, then
we'll just cut them out." And that's potentially leaving money on the table by cutting out leads who would have actually been a good deal, but the rules kind of didn't see enough detail to be able to determine if they're a good fit or not. So, this automation is essentially immediately qualifying and triggering the next steps to the sales team and allowing them to do that human-style research on these leads at scale. So, enough talking. Here's a little bit more information. Again, with all of these, it's going to be on the figure on the school. Then,
I've also broken down how this agent would actually operate in the real world and sort of real time. A lead is going to be submitting the form, which is going to be this here: the Relevance Company AI Researcher. So, something that we've just built in Relevance, we're going to reuse it here, which is handy, as you can start to move these components around and see how they can fit into different automation platforms. Then, the AI agent is going to look at this information from the research. Then, it's going to determine, based on a qualification criteria
we give them inside the prompt of this agent, whether they are qualified or not. If they are qualified, it's going to use this tool here and call this second workflow, where we're going to essentially analyze that further and do a notification to either our agency team or our SaaS team. If they are not qualified, we will use this tool here, which will just send an email straight back to the person who submitted the form, saying, "Hey, sorry, we're not open to working with businesses like yours at the moment. Let us know if we can help
you in any other way." So, that's a rough rundown of the build. Let's jump into it. To kick things off, of course, you need a platform on natn.io. All links and resources will, of course, be on the school post for this video. Once you're on this page, you can go to "Get Started," and you can create an account for free and just go through the setup process that they do. I'm sure you can figure that out. They do have a 14-day free trial as of this filming, so that's very good if you're just jumping in,
not having to pay anything. And they give you quite a lot of usage up here. As you can see, 1,000 executions. So, what we're going to do, of course, is click on "Create Workflow" up here. I will be giving you the template, so if you want to just import it, you can. That will be on the Figma there. But just like the last tutorial, I'm actually going to be showing you the process of building these up from scratch so you can see how I go through the process of building these automations and the testing and
back and forth you need to do in order to get to the end result. That's probably actually a lot more important. If I’m trying to teach you to fish, not just give you a fish, it's to see how I deal with problems when building these. So, let's get started by starting off our trigger. We're going to go with "Form" and select a "New Form" event. Here we get to create an N8N form. So we can call it "Work with Us." Now we get to pick the field names. So we want to have the first one,
which is "What is your name?" Let's make that a required field. We add another one: "What is your company website?" We'll set that to require HTTPS. Right, so we've just built out a basic form here with "First Name" and "Company Website," which we're going to need for the next step. I've put a placeholder in here so they know that it needs to have HTTPS at the front of it, and I'm asking for them to provide some information about their inquiry, like, "What can we help you with?" That’s going to be a text area so they
have a bit more room. We can go through a test step here to make sure that it's all looking nice. This is what the form is going to look like: "What's your name?" "Obby." There we go. We've submitted that form. If you go back, there we go, we have the data in. This shows you the output. N8N works by having kind of this middle island here, which is what you set up, and then the left side is the input and the right side is the output. So, we've tested it, and these are the outputs that
our form is giving, which is what we are looking for. The next step in this lead qualification process is to do some research on the lead. So, we have the company URL, and this is when we're going to go and make an HTTP request. This is basically calling any API over the internet. To set this up, we actually need to go back to Relevance and find the Company Researcher tool that we made. Now you're going to start to see how this all fits together. Building tools in Relevance can... Also, it will be very useful and
an extremely useful skill in all areas of AI automation because now I can come on to research a company, and not only can I use it here. This, I mean, this is why I think relevance is such a great platform. You have the use here, so I can send this across to a client; I can share it with it, as I showed before. I can use it just here myself; I can run it in bulk on a spreadsheet. More importantly, in this case, I can go to the API, and now I can call this. It
might look scary; just don't worry. I can call this functionality, basically send in a company URL, and get back the research. I can access this over the internet through an API, and they give me it here and tell me exactly how to call it. So, now, this is actually a post request. We can copy this. Remember how we talked about GET and POST requests? This is a POST request because we're posting some data to relevant AI. So we change this method to POST, we put the URL in here, and we do not need authentication in
this case, but you can turn it on, so you can make it private here and then have an authenticated. It might sound a bit complicated, but for now, don't worry about it; we don't need to have an authentication step on this. Then, if we look at the request body here, it tells us how we can send data to relevant AI. If we go back and copy here, we're going to send a body; it's going to be in JSON, and we can change this to using JSON and then paste in basically what we have been given
from relevant AI. Now, this looks a bit messy. Let's pop this open a bit more. We actually need to change it to an expression here. So, "fixed" means that we're not accepting any dynamic data in. When the form is submitted, we actually need to take in some data from that form, which we have over here. We need to inject it into this HTTP request to relevant AI to get this company research done. So, we can't have it as a fixed JSON body here. We need to change it to expression, and then we can pop this
out here, and it gets a bit easier. So, we have params, and we have the company URL. We need to pop in here, oh, the company URL. Pop that in there, and here on the right side, we get to see what that would look like given the test data that we've just put through. So, you can see I’ve got the company URL, "https://morningside.ai," in quotations here, which is what we want. So, we can go back now, and now we can give it a test to see if it's going to be able to communicate with relevant
AI and get us the data we want. There we go. We have our result back from relevant AI, which is the summary. As you can see when we go back to build, this is exactly what we'd expect. You know, you put in the URL, does this scrape a fire call, write the summary, spit out the summary, and this summary is what we're getting back out over here, which is what we want. So, that's great; another step done. For those of you who are a bit confused about what this is, this is just the body of
the request. So, because we are sending a POST request, remember how we have GET and POST requests? GET requests are typically just with a URL and a bunch of stuff tacked on. A POST request, we need to send a JSON body like this. It does look quite confusing, but if I take this and go JSON form, paste this in, and beautify it. You can see how we have basically the project, which is the relevant project that we are calling. This tells the API this is the project that we want to interact with, and the project
expects the params, the inputs, which is the company URL, and we're injecting that company URL from our information here in NA10 that we've dragged across. It might seem tricky a few times, but trust me, this stuff becomes like riding a bike once you get up and running. So, a few more of these and you'll be completely fine. All right, and so now that we have our company information, the next step is going to be setting up the agent, which is really the coolest part in my opinion about Make right now. We come in here, and
we can click on "agent," and we can set it as a tools agent, which means we connect our own tools. If we just back out of this, we can do cool things like set up the model. Right here, this is so cool because we get to see exactly what we were just talking about earlier in this video, but we have the different parts of an agent, the different ingredients, right? So here's the chat model. This is the brain; this is the LLM that's going to be powering the whole agent. Using the soup example, this is
the one meat that we get to choose, right? This is a specific model. In this case, we're going to be using OpenAI again because you already have your API key, and I can't really be bothered going and showing you a whole another provider, but it's the same process for all of them. You can, if you want, use Anthropic. Can then pick all the anthropic models. Uh, but in this case, just to keep it simple, let's just go back to an OpenAI model. And if we go back again, you can see that we now have, uh,
the memory and the tools that we can connect. So, of course, we have the tools, which we've talked about a lot in this video already. We can connect multiple different tools here, as we're going to do in a second. And then we also have memory set up here, which is a little bit outside of the scope of this video. As I said, in most platforms, it comes built-in, but NAT is a bit more of a developer-centric platform. So, if you wanted to play around with memory, um, different forms of managing memory, you can do that
here. In our case, we're not going to be touching it. And in order to connect a knowledge base, if we wanted to set up a knowledge base for our agent, we would connect it as a tool. So, you can see here we've got in-memory vector store, Pinecone vector stores, etc. These are vector databases that we can connect just like in the other tutorials we're going to do in this video. When you upload some documents to make a knowledge base, they're essentially being put in a vector store like these, but the platforms manage it for you
and make it a lot easier to do. So, in this case, we're just going to be doing two different tools. Firstly, we're going to be calling an NATM workflow. So I'm just going to finish off the basic setup of this. Um, and then we're going to add another tool on. It's going to be the Gmail tool, and then before you know it, we have our AI agent structure built out. So, we're using the OpenAI models. We're going to pick the model shortly. We're going to be using the tool to call the second NATM workflow, which
is going to be, uh, triggering the email notifications for our sales reps and the classification of the, uh, lead. That's going to make a bit more sense when we actually do it. So, just stick with me on this. And then this Gmail is going to be sending back a "Hey, sorry, you didn't qualify for what we do. Um, sorry, we can't help you. Let us know if we can do anything else." So, to start setting things up, we can start from left to right here with the chat model, um, the OpenAI model that we want
to use. You need to set up your OpenAI account, so you can click "Create New Credential," and you need to go and add in your API key here. I'd suggest you go and make a new one on platform.openai.com, and you can add a new one in here, and you can name the key "NAT," so you start to know which keys are used for which different platforms. Um, and once you put that in there, you can just click "Save," and then it will run a little test, and then you're ready to go. You should have this
set up here. Then we get to select the model that we want to use for our agent here. And in this case, I want to go for something quite smart. So, I'm going to go for 03. We have 03 mini here. This one appears to be a little bit more recent. So, they'll sometimes put the dates on the end of it, and if you just look at the current date, you can kind of see how close it is to the current date. Um, but I'd say this one's a bit more recent, so it's going to
be hopefully a bit better. Next, we're going to skip this because we need to set up a whole different workflow to connect it to. Um, we're going to jump straight into this Gmail one. You need to set up, again, another connection. As you go through all of these different automation platforms, you do need to do these connections between, uh, your own account, say your Gmail or your calendar or all these different apps. You need to go and create a new credential. Um, and you can just do the sign in with Google here. Super easy to
do. I'm sure you don't need my help with that. Once you've set up that connection, you can close this, and you will see the connection that you set up here. Basically, that's what we're going to be sending emails through. And then we can get into setting this up. So, because this Gmail tool is going to be used to send a reply back to the person who submitted the form and say, "Hey, sorry, you're not a good fit for us." You want to send it back to the person who submitted the form. Now, if you scroll
down here, uh, yep, you see that I've forgotten to add the email form in. So, this is a good example of needing to go back a little bit. We can go back to the form submission here. Um, scroll down, say, "What is your email?" and we can set it as an email. So, it's going to automatically force them to provide a valid email for us. And I want to maybe shimmy this up a bit. Um, so it's name, email, then company, website. Um, we can do another test here just to give it some proper data.
Oh, it's not going to let us do that because this isn't set up properly. So, we can just delete that for now. And we're actually going to delete that. Otherwise, it's going to be a bit of a pain. So, we want to... Here's your text with the proper punctuation: Test it again. So, we can submit another form here and go back to NA10. And there we go. We have the information. We have the email now. That's great. And so, now we can come and set up our tools again. We've got the workflow there, and we've
got the Gmail. Um, and now we have our connection set up. Yep. Oh, and we haven't got the data here because we need to run this again and get the research. So, now the research is done in there for us to set up the Gmail tool here. We can go to two, and we'll be able to pull in the email. So, again, they submit this form. We realize that they're not a qualified person for our offer, and then we're going to send an email back and say, "Hey, sorry, you're not a good fit." So, we
can say the subject here is, um, "Thanks for your interest." I'm going to change the email type to text here, and I'm going to write a basic message in. I'm just going to snag it from the one that I've done previously. So, we need to change this from “fix” to an expression because we want to be pulling in their name here. So, I'm going to paste in what I have here. Again, this would be included, um, in the resources. It's just going to save us time if I don't have to type this all out manually.
Um, but you can see here, I’ll just delete this so you guys know what we're doing. If I go, "Hi," or "Hi," and then we can add in, "What is your first name?" Hi, name. In this case, it's going to be filling in my name here as an example. So, "Hi, Mly. Thank you for your interest in Big Boy Recruitment Services. As you specialize in recruitment for software and development agencies, we're not a good fit based on your company's industry. Please let us know if you'd like to connect us with one of your partners who
specializes in dealing with your needs. Cheers. Huge Jackman here to sales, Big Boy Recruits, BBR, uh, Dallas, Texas." So, if you guys remember Huge Jackman, comment down below, um, for the OG fans. And then that is our Gmail all set up. And just quickly, so that you’ve got a bit more knowledge around how this Gmail, uh, tool works, we have all these different steps that we can use. We're using the "Send" one, so it's sending an email. You can use "Reply," you can use "Get," "Delete," all these other functions, but the easiest one and the
most common one you're going to use is going to be that "Send" one, of course. Now, we need to set up this NATM workflow, which the agent is going to call as a tool, um, when they are a qualified prospect. So, I'm going to delete this one and just save this for now. Then, we're going to go back to home. We're going to create a new workflow. And this is a really cool skill that I want to teach you: the fact that you can build all these workflows and then connect them to agents, and it
can just be taking data in and kind of shooting it off in all directions and triggering all these complex multi-step processes because it's a super valuable way of using agents. Um, so I really want to teach you that. And obviously this one's going to be starting off a bit different from the other one. We actually want this to be set up as when executed by another workflow. So that's going to be what the trigger is here. And we are going to be able to define using fields below. Let's just add in one here that is
a lead name. Um, for now, we can just leave that there. But that’s all that we need to set up. We need to go back over to the other one. Just needed to set this part up. Let’s rename this "Qualified Lead Classifier and Notifier." So, we can save that there. And we have a bit more work to do on this other one. If we go back to this, we can rename this here. So, let’s call this our "Lead Qualification Agent." And so now we have our other workflow set up. We can come here, we can
call another workflow with the tool, and we can call it "Lead is Qualified." And so now is when we get to tie back into what we learned in the foundation section because we are now writing descriptions for our tools. Remember how we had schemas? Schemas are basically written instructions or instruction manuals on how to use tools and how to use the APIs that wrap around them. Um, this description is going to be basically those descriptions that you put in the schema, but NAT is going to be basically constructing it for us in the back end.
And we just get to put in here, okay, what's the name of this tool? It's going to be called "Lead is Qualified." It's giving us a nice example of how we can write a description for the tool. So, call this tool to get a random color. The input should be a string with a comma-separated names of colors to execute. So in our case, we can say, call this tool when the lead is qualified according to our criteria. The inputs should be lead name, lead email, company, company summary, and request for info. We're basically telling that
AI model, or the brain, what this tool can do. So, when we send it some kind of input, it then looks over our tools. It looks at the Gmail description and it looks at this workflow tool description and goes, "Oh, well, I..." I have a tool that does this and a tool that does this. What have they just sent me? Okay, now I think I know what I need to do from here. So this is the rough gist of what we want to do as a description for this tool. I'm actually going to beef it
up with a bit of a bigger one here. If the lead is qualified to work with Big Boy Recruits, e.g., they are a software-based business like SaaS or development agencies, then trigger this tool and send the lead data in the following format. It's just dummy data: - Name: [Name] - Email: [Email] - Message: [I want new] - Div qualified: true - Company information: [Company information, which is a summary of the relevance tool to do the company research that we have.] So, it might seem a bit crazy at the moment, but stick with me because it
will make sense in a second. We're basically just told when it's going to trigger this tool and the format to send the data in. And then for the workflow, we get to choose here the one that we just set up, which is our qualified lead classifier and notifier, at least in my case. Then we see the workflow inputs that we've just set up. If we go back over to our other automation, when we open this up and define our inputs here, you can see over here we are getting just one of them that we've put
in as an example so far. Now we need to set up all these inputs correctly. We have the name that we want. So we've got the name, and we want the email. We can add another email. What else do we need? We need the message. Honestly, I don't think we need this qualified one here. Then we have the company information. If we just test this, head back over here, and refresh this list. Oh, back out. Save it. This pops up and says that these inputs are outdated. So there we go. We have lead name, email,
message, etc. We can actually automatically fill out a lot of these inputs. Maybe I will put this back in here just to show you guys how these work. So if we go qualified, then we just call it true here. I just put it as a string. We go back here and add in one more, which is qualified, which is also a string. So we have this qualified field here as well. If we go back, I'll just test this. Save it again, come back over, and update this. I think we can actually make it even cooler.
It changes from a string to a boolean, so that's either true or false. If we test this, save it again, and we change this to take away these little things—sorry, it pisses me off if I don't have this set up right—and then we update this, you'll see this turns into a switch. So that's a true or false, right? In order to trigger this tool, it should be qualified by default. So it's a little bit redundant, but it's still cool to show you how we can get AI to fill out these fields. In a lot of
cases, we don't, but for this qualified run, we can. We can set this as an AI-generated field. We can say if the lead is qualified based on our criteria, set this to true. Then for the rest of them, we can just fill this out quickly. Give this a second, open this back up, and we can fill out some of these fields. So we can go lead name that we want to pass through to the other automation is going to be that. We can fill a lot of these in: email, message, and the company information. We
can get this technically, but maybe we could do a cool AI-generated one here, which is a short summary of the company and the industry that they are in. Company's details. This is basically telling the AI model of our agent how to fill this field out, which is one of the reasons that AI agents are so powerful. So, that's all set up. Now, we've got all of our tools set up. The last step is just to set up a prompt for our agent. I am going to cheat a little bit here and just throw one in
that I've done before to save us a bit of time. So, we want to set the prompt here. We can paste in this information here. This is basically just telling the agent who it is and what it's supposed to do: "You're a lead qualification agent. Your job is to analyze the form submission and company research provided and then decide whether they are qualified to work with Big Boy Recruits. We specialize in XYZ. We are specialists in capturing talent for RA. We only work with software-based businesses, e.g., SaaS companies or development agencies. These companies are willing
to pay much more for developers than your average marketing company or local business. Therefore, we only work with them. Your job is to determine if the lead you are provided with is a good fit for Big Boy Recruits. If so, call the lead qualified tool and send the lead information to it. If the lead is not qualified, then you must trigger the Gmail send email tool for us to respond to them, letting them know we are unable to work with them." And then we have a response format here. which we can probably just delete. And
then we can add in here the lead information for you to analyze. Let's pop this out to make it a bit easier. We can add in, um, just the name, um, company URL, in, go message request. And of course, we go a company, and we take it. So that's from the relevant step for the research that we did to scrape using our Firecrawl tool. Then we provided all the information to this agent, and it's going to be injected with all of these values on each form submission. After that, it's going to make a call on
what tool it needs to use. So we’re pretty much there. We can even give it a run here and try to test the step and see which tool it's going to try to choose. If we go back, we can see, "Okay, look, it’s used the chat model as the brain, and it’s triggered the N10 workflow as expected." You can see here that it's sent off information to our other workflow. It sent the lead name, the email, the message, and the company information, and it set it as qualified as well. So, all of these fields have
been filled out. We've got a nice AI-generated summary here from the model and brain, and we have the qualified set to true. So, the final step now for us is to head back over to our other automation and just finish it off. Oh, we need to save that. I will just run that again for you so you can see it in slow motion. It's using the LLM as the brain and the tools agent, and it's deciding whether it's qualified or not. If it is qualified, then it will send it to this workflow. Bam, we've sent
it. And there you go. If we head back over to, um, let's save this. Head back over to our qualified lead classifier notifier. Now, we can add on a quick few steps here. I’m just sort of going to rip through this. Um, it’s not super important, um, but it just shows you a little bit more functionality of what you can build in on N10. So, we’re going to add in a messenger model step here, and we’re going to choose, uh, 40 mini. What I want this to do is to take in that information that we
sent to the workflow about the company research, etc. So, we know this is a qualified lead now, but we just want to split it between either our SaaS team or our development agency sales team, since they’re specialized in dealing with different cases. So, I’m going to cheat and just throw in a prompt here, which you guys will be able to get access to, um, which is basically saying we have a new inbound lead. Um, change this to an expression—sorry. Um, we have a new inbound lead that we need you to classify into either SaaS or
development agency. Here’s the lead information. Um, we need to go back a step and test this. There we go. We should have some information. Um, and now we can put these in. So, you see how there was nothing here before? I went back and tested the trigger so that it gives us some null values here that we can fill out. Here’s the lead information—um, lead name, uh, message, um, name request, company information. If the company is a SaaS, output SaaS. If the lead has a development agency, output agency. So, we’re looking for just agency or
SaaS as the outputs here. Um, simplify the output. Yep, that’s all good. So, there’s no point in us testing that step there because all the values are null. Um, but the next step is a basic router flow. This is a basic conditional routing. So we have the conditions we can go expression here. So we can go, um, the content here. This is the output from the OpenAI step. If the content, which is the response from the LLM step, the classifier, it’s either going to be agency or it’s going to be SaaS. So, if it—let's just
make it a bit more flexible. If we go string—if it contains agency, great. So, if it contains agency on the true side, we want to go Gmail, and we want to send a message. Um, and then if it is false, we want to do basically the same thing. Now, I’ve got a preset email just to help us out here. Um, okay. So, here, we’re not getting much data on the input side, and we can’t seem to simulate it because it’s, of course, triggered by another workflow. What we can do is just save it here, go
into executions. If we go back to our other workflow, the agent, we can go to the form submissions one. If we go to executions, and we just run one of these that we just did before, copy it to the editor, and we just run this again. This is basically just going to trigger this again so that we get a fresh execution and we can sort of pull that data back into the workflow. Oh, we're having issues now. It's because I need to delete this. So if we stop that and we just run it again—boom! Triggered
it. And that's all done. Now, if we go back to this, and we go to executions, go to the most recent one that succeeded, it's going to load in. Oh, hang on. This one's probably it. Oh no, that's not it. Okay, so this one here—if we click this—yep, we've got all the data in here. So, what we can do is copy this into the editor, and then we've got the… Data that we need that's already loaded in, so that we have some values to put into our Gmail steps. So, that's a handy little trick to
know how to do. And now we have all of this information. So, that's what I was trying to get. Um, the same setup, and we're going to send this to… I'm just going to use an example here and call this, um, it's the same email. You wouldn't pull this in necessarily; I'm just using this as something that I can show you. Let's say "New Agency Lead." Let's do a text. We say, um, "New Agency Lead, man. Go get him." Um, turn this into an expression. And then we say we can just throw this company data
in there. It's going to be messy; you can play around with this more when it comes to formatting, but just to show you the functionality. If we go, uh, test a step here, that's going to send an email to this. This is like my agency sales rep's email. Of course, um, let's rename this. Can duplicate this. Right-click, duplicate, bring it here. Oh, connect this up. And we change this. You change this to your, like, SAS guy. You change it to a different email, of course. And then you can say "New SAS Lead." Right? So now
we have done all of that, basically all built out. The data is going to come in from the agent. It's going to send in the company summary. This is going to classify it into being an, uh, agency lead or a SAS lead because those are the only two types of businesses that we work with. So all of them will be qualified when they come through here. And then it just sends an email to our, uh, agency sales rep, or our, uh, SAS… Oh, rename this to our SAS sales rep, "New SAS Lead," for them to
continue and do the next steps and follow up with. Right? So to test this, we can turn this on to active, and you can see that you can now make calls from your production form URL. Um, we can go, okay. If we double-click on this, we can open this up. We can click on production URL, copy this, and open this up in a new tab. And now we can give it a spin. So, of course, my agency, Morning Side AI, does development services. So, this should be qualified, and it should also route it to the
agency email. So if I now go submit, we go back into NADN, we go into executions; we can see this one is running. If we go to Gmail and I pull up my spare inbox, there we go. We see it has succeeded. And then, if we go to our lead qualifier and notifier and we go to executions, we will also see that we have a new one that has succeeded here, which was just a few seconds ago, and that's gone through. It has, um, outputted it as agency, which is the classification that we wanted. It
has gone through and has sent a new email. And if we go to here, we have "New Agency Lead" there. There we go. All the information. So that's working, number one. Now we can go back to our form, and we can try it again, but this time with, let’s say, an unqualified business. Let's go, "What is your name?" Ray Croc, raymcdonald.com. Um, "McTum, I need more guys, more people flipping damn burgers." So, essentially, Ray here has come to our recruitment agency, and they're asking, "Hey, I need people to flip patties for me in my fast
food restaurant." Um, and because Big Boy Recruits in Dallas, which is a hypothetical company, of course, um, doesn’t do that, it's going to qualify them—or it's going to disqualify them—and then send an email to our good buddy. Oh no, some poor dude at McDonald's is going to get an email now. Um, because send an email. Um, but it's going to be running, and of course, it's going to be sending. If they're unqualified, it will send an email to them and say, "Hey, sorry you're not a good fit for us. Let us know if we can
help or we can connect you to our partners." And while that is running, I would just put together the final one here to test the functionality, which is if we go liam@admin.com, and we set up my SAS https, my SAS agent. If you haven't already used it, we're going to show you how to use it in the last tutorial of this video, so you guys will get to see that. Um, which is my own no-code AI agent building platform. And what can we help you with, agents? Um, so this should be a SAS one, and
it's going to qualify as SAS. Um, we have the McDonald's one that has succeeded here. And you see, yep, as expected, we were not qualified. The McDonald's person was not qualified for our offer. So, it looked at the qualification criteria we provided in here, and said, "Hey, no, that's not a good fit." So, I'm going to use this tool. And you can see that it sent the email, and it said, "Hey, thanks for your interest, um, but we're not a good fit for you." So, someone at McDonald's just got an email. Apologies for that, but
we didn't trigger the other workflow, which is a key part. And we're not going to send emails to our sales team saying, "Hey, look, new leads." Now, I have sent another one through here, which just finished executing. And we can see this. It's gone through. It's researched, um, agentive. You'll see, um, Agent is a leading service delivery platform for AI agents, AI automation, agency owners, um, etc. It's called the tool because we were qualified; we're a SaaS business, right? And again, if we go back to here and look at the most recent one, which is
this—oh, we have another one here—then you'll see a new SaaS lead has been triggered because we are a SaaS, of course. Um, the LLM step here has outputted just "SaaS." So that means that it should send an email to the SaaS team, which, if we go to my inbox, tada, new SaaS lead, right? So I know that may have taken a while, but, uh, we got there eventually. You can see that we've built out all of this functionality. We have our AI agent calling our tools if they are qualified and triggering this other workflow. Again,
you can build so much cool stuff by connecting an agent to multiple different workflows. We have a little relevance AI researcher tool that we're reusing here, and we have people getting denied, um, with an instant email sending them back. So, hope this has been a cool one to show you how NATM works. I really, really like this agent functionality that they have. I think you guys are going to be able to build some awesome stuff if you keep going down this rabbit hole. So, that has been agent build number two. Stick with me as we
jump into agent build number three, which is a pretty damn cool one, focusing on both chat and voice-based agents all in the same build. So, let's get the ball rolling. All right, so that is two builds out of the way. Well done if you made it this far. We have another big one here. Um, this is going to be breaking down how to use Voiceflow. Let's take this off here. Um, to build an agent that is going to be both accessible through a website chat, so you can chat to it on a website as a
chat widget, which you're probably familiar with, but we're going to connect the exact same agent and exact same functionality that you get through that chat widget, also to a phone number on the website that will be able to call and have the same experience. So, this is going to show you how on voice you can build both chat and voice experiences. Um, and this is a new feature for them as of the time of filming. This agent is what we can classify as an AI customer support and lead generation agent for both website and phone.
We're going to build it on Voiceflow, of course. The purpose of this agent is that it's designed to be able to answer common questions from potential customers via a website chatbot and also via a phone number that can be called. Not only can it answer questions to help sort of move them towards a purchase, but it can also generate instant quotes for interested parties. This is intended to increase the number of leads that they get because people who see a contact form may be like, "Hey, I want to get an instant response. I want to
know instantly how much this is, 'cause I'm shopping around." Um, rather than just filling in a contact form and waiting, having this instant quotation can give people confirmation on the price, um, so they're ready to take a step forward and end up getting the sale ultimately. That instant quotation feature is a cool one—um, very easy to do with the custom tool on Relevance that we're going to build. And finally, this agent is going to be able to actually capture lead information from those who have been given a quote. So after they've been given a quote,
then we'll move to say, "Hey, give us your details and we will follow up. Our team will follow you up and set an appointment for the service." The value here of the system is that customers are going to often want instant answers so that they can make a purchase. By offering easy ways for them to get this information, we can increase the chance that they're going to purchase from the business. Um, companies typically have to spend money on some kind of customer support or sales team in order to get these kinds of answers given to
customers when they need them. But this agent can essentially be a one-and-done solution, um, to both help increase the sales of the business by increasing that likelihood of purchasing, because they now have more information, um, while also saving the business money that they would typically spend on some kind of support staff. Um, say if this chatbot can handle dozens and dozens of responses a week that would typically have to have gone through a support person, then we're saving the company money and also helping them increase their chance of generating more revenue. So, um, here's a
rough layout of the design here. We are going to have a website. I'll give you a template for this. It's very easy to set up, and we're just going to throw in a number, um, that's going to be connected to the voice agent that we build, and we're going to be setting up Voiceflow's web chat widget as well. This agent is going to have access to a knowledge base to answer questions um that prospects may have about the business and their services, etc. Um, it's going to have a tool that allows them to generate an
instant quotation. So it's going to take in some information. This is going to be for a cleaning business, or a hypothetical cleaning business. And then we're... going to be able to generate an instant quote for them based on the property type and the size of the property they need cleaned. And we're going to be able to capture the lead information afterwards and log it into a CRM. In this case, we'll just use Google Sheets, but it's fairly easy to swap that out to whatever CRM you want. So, it's going to look a bit like this.
I've actually added a little bit more, and we are using another relevance tool in here. This is from a different project from my accelerator, but I'm going to be pinching that and putting it in here for you all. This is the tool number two here, the generate instant quote. So, we're going to be slotting that in there, taking in some information, answering questions, etc. The process of building on VoiceFlow is one of my kind of favorite experiences in the automation space. I really like the way they've built out their flow builder, so I'm sure you
guys will enjoy building this step by step with me. The general usage pattern of the system is that the person's going to arrive on the website. They'll either click to chat with the chatbot and engage with this functionality, or they'll enter the phone number into their phone. The agent will jump in and respond either through text or through voice and determine what they're needing help with, which is this section here. It's going to be routing using this router section here to the correct tool, whether they want a question answered or they want to get a
quote. Each of these branches will execute on that functionality depending on their intent. So, it's going to look a bit like this: we'll have a phone number and we'll have a chatbot like this. This is actually an agenda chatbot from my own software, but we'll be swapping this out to a VoiceFlow one in this build. So, without further ado, let's jump into VoiceFlow. When you click that link on the Figma, it's going to take you to the signup page. You can sign up there, and then once you're in, you're going to get a page that
looks a bit like this. The first thing that we want to do, of course, is to create a new agent up here on the top right. Let's call this "Bonor's Cleaning Website and Phone Agent." Let's just start with a basic template here. For import knowledge, we can actually just skip that for now. Then we get into the flow builder on VoiceFlow. Just a quick orientation if you are new to the VoiceFlow platform: this is where we can add in our knowledge, which we will do shortly. The workflows are where we access the flow builder. In
most simple builds like this, you're just going to have one workflow, so you don't need to worry too much about that. Now we have integrations like the widget, which we're going to be using to deploy this on a website. We also have the phone number integration, which we'll be doing later. Then we have API keys, etc., which you don't need to worry too much about right now. We have some publishing features here that we'll double-check later. We have access to transcripts, so once we deploy this, you can access all of the transcripts either by voice
or through chat and sort of dig through the answers to see how the people are interacting with the agent that you've built—something that a lot of people neglect after they've put one of these into production. We also have things like analytics, etc., but obviously, we need some data before we see anything useful there. The settings page is not too much you need to worry about right now, just sort of on a need-to-know basis. The more important stuff, of course, is up in this first tab here, which is content. We have messages, we have prompts, and
we have components. We're going to be working a lot with prompts shortly, so that's the main one we need to be worried about. For now, we can go into workflows, open up this first workflow, and edit it. Here we have the template that VoiceFlow gives us. I'm actually just going to erase this, and we'll start fresh. If you see on the Figma, we have a design here that we're roughly working towards. I'm going to be showing you the sort of step-by-step process. We need a welcome step, so we're going to start off by going here
and dropping. I’ll try to zoom in a bit for you guys here. A talk message is how you send a message via the chat. The start is when you click on the widget and it pops up. This message that we're about to put in is the first message the bot is going to send. We say up here, “Hey, welcome to Connor's cleaning.” I'm going to zoom this up for a bit for you guys. Right away, we have a little tip and trick that I want to give to you because we are building this as a
chat and voice assistant. We want to, over voice, not overuse punctuation because it leaves these big long pauses when the voice agent is going, “Hey, welcome to Connor's cleaning.” So, we want to just say, “Hey, welcome to Connor's cleaning,” a bit more naturally. There are times when you'll see me on the side of sloppier punctuation, but. That's just to ensure that when we get to testing it on voice, it sounds as natural as possible. So, hey, welcome to Connor's Cleaning! And then, of course, we're going to wait for them to reply and say something back
to us. We go to listen and then capture, and this is going to capture the information. We want to change this from capturing entities, which is like, say, I'm looking for a price or an address. Um, we're just going to go the entire user reply, and the reply is going to be saved into this variable here. So we actually want to change this to, um, first user reply because we're going to need it a little bit later. Um, the user's first reply. I like to name these as we go, so we can call this welcome.
Drag this out here, get a new one, and we're going to be doing a, uh, a set step here. So, we're going to be setting some variables. I'm going to add a new variable to set, and we're going to do it based off a prompt here, which is a cool feature in voice they've added recently. We're going to be able to select a prompt that's going to take this information from this first reply and then generate some kind of output from it and set a variable. The variable we're going to set here is called last
response. So, this is typically what you're going to put as the last response from the AI or from the agent. Um, last response here, and last utterance is typically the most recent, uh, message from the user. So, utterance is coming from the user, the most recent last utterance, and the last response is what the AI or the agent or the system has last responded to. So, we want to set the last response to something that is generated through this prompt here. We can create a new prompt here, and this is basically going to take in
the data from the chat and the conversation so far, and we'll be able to generate things off of it. So, say we add in here the conversation history. That's a good thing to have in most cases. I’m going to be dumping in some of the prompts here just to save us a bit of time. But basically, we're saying summarize the customer's question below and ask them to confirm that that's what they meant. So, we're not actually going to be generating the last utterance here. We're going to be adding in the last, the first user reply
that we got. I mean, it's going to be included here in the conversation history, but there's no harm really in hard coding it or at least putting the variable in here to make sure that it's in there. Um, we're just saying summarize the customer's question and basically say a confirmation statement. So, just to confirm, this is what you're looking to do. So, you imagine this over the phone: "Hey, um, um, yeah, I'm not really sure what I'm supposed to be doing here, but I was thinking if you guys were possibly..." So, all of that information
is taken in. We can flick back to them and say, "Just to confirm, this sounds like you're looking for this—yes or no?" Um, so, ensure your tone is empathetic. Speak directly to the end customer. Keep your answer brief and two sentences max. So, if we go back here and actually we can name that prompt, so it's, um, summarize problem, and then we need to send the response. This prompt is going to take in the information we provided here. It's going to use this prompt to take in, um, the conversation history so far and this information
from the user in the first question. It's going to generate a question to ask back, and it's going to save it to this variable that we have here. So, apply output to variable last response. There is actually an easier way to do AI responses like this, but in our case, we need to be saving this variable. So, it'll make sense in a second. But, we can go into here, and we can go last response, and then it's going to send that information back to them. So, let's just do a quick test here. Click start. Hey,
welcome to Connor's Cleaning! Oh, actually, we need to ask a question. Hey, welcome to Connor's Cleaning! Um, how can I help? We'll say, "I need cleaning services for my house." Sounds like you're looking for cleaning services for your greenhouse. Is that correct? Want to make sure I understand your specific needs before we proceed. So, I obviously spelled house with G house. So, we thought it was a greenhouse, but that's what we want—some kind of confirmation message just saying, like, "Hey, look, is this what you're actually looking to do?" before we then go and trigger the
different tools that we are equipping our agent with. By the way, there is a way of changing between trackpad and mouse. So, I am panning around with my mouse here; you can also do a trackpad method, which is a lot easier to use if you're having trouble using it. Okay. So, after that, they're obviously going to say yes or no—whether, like, have I got the question or have I summarized what you're looking for correctly, and we can go to a choice step here and set up some triggers. We can set the intent to yes, and
then we can add another trigger and set it as no. So, this is basically using AI to analyze what they've said and grouping it around these certain things, which are called intents. So, what is the... Intent of them, of this — uh — of the response? And in this case, they have some pre-built ones, but we are going to be building our own custom intents later. But for now, just know that if you're looking to sort of split traffic or split people coming through the system, these choice blocks with the default — uh — intents
from Voiceflow, "yes" and "no," are ready to use out of the box. And if they don't say "yes" or "no" clearly, or we can't pick it up, we can add a no match here. We can say, "Sorry, I didn't get that. Can you say 'yes' again?" A "yes" or a "no" is enough. And then we can say to follow a path after these reprompts, which we'll call "no match." And then we have this — uh — no match path which we'll set up in a second here. I'll just put it as a filler for now.
Basically, if they don't say "yes" or "no," this is setting up error handling. Um, and basically, if people, particularly over the phone, there's so many different ways that the conversation can go and end up. And you'll want to, while I don't focus on it too much in this build, as you're building production-grade assistants, you'll need to build a lot more of these fallbacks and these reprompts and these no match things to handle edge cases where people use it in a weird way that you don't expect. So, I want to give you a little taste of
that in this tutorial, but it is nowhere near representative of what it takes to actually get something into production that you can trust on a customer's website. Okay, so we've got this choice block set up to determine if we have got their summarization of the problem correct. And we can take this up to here, and we can set another — uh — variable. And so this is really the core part of the application, which is determining what their intent is, what are they looking to do, and which tool are we going to route them to?
So this is a very handy skill to have, which I'm going to teach you, which is how to set up some kind of intent classification system. Um, which is really, really essential to building agents on Voiceflow and any kind of agent where the platform itself isn't automatically handling that for you. So if we go set a new variable, and we're going to do it through a prompt. We're going to set a new variable here called "desired action." So basically, people coming through and asking questions can be saying, "Hey, look, I just have a quick question
about where you guys are based," and then we're going to route them to the knowledge base. And then someone may be saying, "Hey, how much does it cost for this?" And then we're going to route them to the pricing — uh — the instant quotation — um — system that we're setting up. So it needs to be able to determine what they're looking for, and we're going to route them depending on that. And that's what this router is going to do. The action that the prospect wants to take, the most likely action that the prospect
wants to take. Then we need to make a new prompt here. We're going to call this "intent classifier." It classifies the intent of the — uh — prospect into asking the knowledge base or generating an instant quote. Add in the conversation history. It's always good to have that in there. And I'm going to put in the prompt that I've written previously. And this is a pretty basic one as well, which is just saying, "What does the customer want to do? Ask a question, get a real-time quote, or something else entirely?" You must output a label
for this only. Your options are "ask a question," "get a quote," or "other." And you guys can just pause it and see what I've got in there. But basically, anything asking a question is going to be about the business and the services. And if there's anything about pricing or directly related to getting a quote and like they're ready to move on this, then we're going to route them to get a quote. And anything else is going to go to "other." And because in the next step, we are going to be looking out for either this
is the output or this or this — a really clear statement saying this is all you need to output, just this, and not, "Hey, I took a look at the conversation history and it seems like the user wants to do get a quote." We just want "just get a quote," and we can explicitly state that with this big caps lock block here. And as with the other builds, all of these prompts are going to be available in the resources for you to follow along with. Okay, so now we get to the cool bit, which is
routing this. So if we go condition, add this in here, and we go add path condition builder, and we say if "desired action" is "ask a question." Oh, that's all we need there. So as you can see, that's added one in here. And if we want to add another one in, we go if "desired action" is — um — what do we have the label as "output"? What did we — what's the exact label that we had in here? So this prompt is going to be outputting these labels. So we need to make sure they
match up. So "ask a question," "get a quote." Yep, "get a quote," and "other" one is "other," and it's already got an else path in there for any error handling as well. So what this now allows us to do... Is to build out our different tools so we can go up to here to ask a question. Just throw this in for now so we can get an idea of what it's going to look like. Um, this is going to be sort of error handling, and if it's else, that means that the LLM step here hasn't
outputted any of the labels that we told it to, and it's likely thrown in a bunch of rubbish. Um, so this is sort of an error handling step. Um, it should say, "Sorry, something went wrong, at least during this prototyping phase." So now, what I'd like to do is make this look a little bit prettier. Um, we can go through and add things in here, like this is the, uh, Confirm Problem intent classifier router. And then we can go here, add a note, and say tool number one answer from knowledge base. Two, you guys don't
have this, so it'll be easy for you to see and understand. I know this might look pretty confusing, and then this other one we don't need to worry about too much. So, to keep things quick, I'm not going to test this just yet. I'm going to test it once we've got that functionality set up on either side at least for this top one first. So now, we need to go and set up our knowledge base. And to do this, we can click on the back button here. Go to our knowledge, and here we have a
data source that we can upload. I'm going to upload a file, but you can put in URLs to different websites, etc. I'm going to be uploading a file here, and I'm going to upload Connor's Cleaning FAQ kind of document, which you guys are going to have access to in the resources. Basically, it's just about us, location, our services, some frequently asked questions, etc. So, I've just AI-generated this. Um, and if you're doing any kind of prototype builds, I recommend you do the same just to throw it in there and see if the knowledge base is
working as expected. Obviously, you'd swap this out with actual customer data or your client's FAQ. I'm just going to throw that in there for now, and you guys can do the same. When you're setting up your knowledge base, you can also set up the settings for it. So, in this case, it's using by default Claude 3.5 Haiku, and you can see how many tokens this is going to cost you for Voice Flow's usage. Um, what is Haiku? Haiku seems to be the cheapest. Oh, you've got GPT-4 mini. Let me just chuck on GPT-4 mini here.
We want this thing to be pretty deterministic, so I'd say 0.1 is fine for max tokens. Um, we can increase that just in case it needs to give a longer answer, and a chunk limit of three should be enough. So, that's just so this stuff is a little bit more advanced. That's that vector database as I was talking about. Basically, the knowledge base is going to be sending the message that we ask it, querying it, and getting back chunks of information. Because our knowledge base is quite small, we don't really need to have too many
chunks. If you put this up, you'll just be getting the whole document back. Anyway, so max tokens, the number of tokens that it's going to include in the response, we want to increase that to 480 so that it can give a longer response if needed. Maybe just tone that down a bit. These are, of course, kind of controls that you have on how much you want to allow the app to spend. And those settings are obviously the main ways that you can control how much your knowledge base is using and how much you or your
client are ultimately spending on the AI features for the knowledge base. So once we've got that set up, we can go back to workflows here, open this up again, and then to plug in our knowledge base, we can go to the dev section here. We can go to KB search, pop this in here. I will, uh, we need to delete that and reconnect this up to the top. And we're going to delete this as well. And so we can go into this knowledge-based step here, and we can enter the query. So what we're going to
say is we basically want to throw the information that we've got from the user already about what they want, which we have here as the first message they gave us, which might be a bit long-winded. Then we have the summary that they have confirmed, and then we can put these into the query that's going to be asking the knowledge base, "Hey, this is what we want information on; can you give us some information back?" So we can go user first message, put a variable in there, we can go first user reply, and then we can
also go summarized problem. Now you can see why if we put last response here, we have this variable saved instead of just sending it automatically. So, I actually don't like using last response because that's something that you like to update quite a lot. So, I'm actually just going to switch this to, um, changing it to summarized problem just so we don't get any kind of overlaps that cause problems down the line. A summary of the user's problem. Then we put this in here. Get to spit it out. So, when you put a variable in a
message, it's just going to print out and spit out the value that's inside that variable. So, we've set the summarized problem variable, and then we're... Just going to spit it out and send it into the chat or over the phone. So now, we can come back out to our knowledge base, and we can take out the SL response and replace it with a summarized problem. Then, we can save the chunks that come back from the knowledge base. I don't want to get too in-depth on what chunks are specifically; it's a little bit more advanced, but
for now, we can just know that it's going to return some information from that knowledge base. It's going to chop up that document we put in, and when we put in this question, it's going to basically ask that knowledge base, "Can we get three chunks that most closely match the information that is in this query that we sent to it?" So, we can save these chunks, which is going to be three because we set that up in the knowledge base settings, into this chunks variable. The chunk limit is three still. If we click this, we
can add in a chunks not found path, but for this tutorial, we don't need to worry about that necessarily. Then, we're going to use those chunks that came back from the knowledge base to generate an answer based on the original question. So, if we put this here, we go talk, we go prompt. And for this prompt, if we go here, we can create a new prompt. We can add in the conversation history just for good measure here to give it the full context of what's going on. I have a prompt here: "You are an AI
customer support rep from Connor's Cleaning helping a customer with the question. Use the provider details below to answer the customer's question. Ensure you keep your answer brief and speak directly to your end customer. You are speaking to them over the phone." It's the input data provider details, which is the chunks variable. I'll just put that in again—chunks—to make sure it's set up properly to the user's original question. We can put all this information back in. So, first reply: this is what they asked us as soon as they picked up the phone or the first message
they sent when we asked them, "What can we help you with?" And then we also just put in, for good measure, our summary of the problem that they confirmed. We can go to our summarize problem variable and throw that in. That should be good to go. I like to make these look purple or some kind of cool color. We can call this a KB query, and we can change this to "Generate answer from chunks—let's say from Kh." If you want to make this a bit easier for you to understand at a glance, you can add
in your descriptions on these. So if we go to edit again and we go here, this takes in chunks from the KB and their original question and writes a short and sweet answer. We have this in here that you are speaking to them over the phone because we want to make sure that we're building this with the phone in mind, which is trickier than just chat. So, long text outputs don't really work that well over the phone. That's kind of why we're putting that in there as well. We can call this "Generate answer." All right.
So now we can actually give this a spin. We can start it right from the beginning again. Oh, we may need to—if we just click run. Okay, there's no training needed yet. We can run test. "Where are you located?" Sounds like you're asking about a business location. Could you confirm if you'd like to know the specific address or where Connor's Cleaning operates? Okay, it's good this popped up because, as you can see, it's asking for a non-yes or no answer. We're just looking for a confirmation in yes or no. So, this would technically break the
system, and that would be saying, "Oh, I'd like a specific address." This is looking for yes or no, and so it would send it to this no match. What we can do to fix this is to go into the summarize problem prompt, modify the prompt, and then say they should be able to answer only with yes or no. This is a confirmation step, not asking for more information. So now, if we run that again: "Whereabouts are you located?" Sounds like you want to know the specific location of our cleaning business. Is that correct? Yep. Now
it goes to the router here; it's going to determine that I said yes. Bam, bam, bam. There we go. So that all happened pretty quickly, but you can see it's sort of broken down through here. If I click over here, it's going to remove all of this. Okay, so let's break down how this happened step by step. You can see this through here. It's still using 3.5 Haiku for some reason. I'll need to double-check why that's still using the model we didn't select. But basically, it comes through this step here, which is the intent classifier.
You can see that it set it as yes. That is the correct intent and predicted intent: yes. And that routed it to this. Then, using the model again, it analyzed the information that it was given, and it set the desired action variable to ask a question, which is one of the labels that we wanted, and that is correct. Then, it said condition matched, taking path one. So it set the desired action variable to ask a question. We were checking for it here. Then it said, "Okay, great." I'm sending it up here to the knowledge-based query.
It says the query was received. We passed in all the information regarding where you located and then the summary that we gave it. Then we got two chunks back from the KB, and the AI response here finally took in all of this information and gave us the final output, generating this response. We are located at 247 RA, and at the end here, it's asking, "Is there a specific area you're interested in?" For a basic build like this, I'd probably change the prompt to say, "Don't ask another question," because in this case, you then need to
set up a looping mechanism where it can keep answering questions for them and then break out into any of these other intents as needed. But for now, that is a knowledge base, and that's how you can ask questions. So that is tool number one knocked out, which was easy enough. Great! We can move on to tool number two now. For this second quote, I'll be able to give you a relevance tool that we're using for it, but let's just jump into answering this question. So they've said here that they wanted something related to pricing or
quoting. Remember, in here in the router, we have set the intent classifier to say it's going to go to "Get a Quote" if they're asking about pricing or have directly requested a quote. This will take them to a real-time quotation tool that takes the property type and size and then returns an estimate. So those are the people who are going to be getting to this next branch of the agent. So, the desired action is to get a quote. We can say, "Okay, sure." To give you an instant quote, I just need the property's type, size,
and square feet. Then, I'm going to add another chat step or message—sorry. We can ask a question: "Is the property a house or an apartment?" Next, we can do one of these choice steps again, and this time we get to create some custom intents. We can go to triggers here and select an intent. See, it doesn't have a house, so we can create an intent and say "house." The user's property type is a house. We can then add in some examples here. Obviously, "house" is just giving examples to Voiceflow's AI engine to help us better
classify the different intents as they come into this step. We can say "home," and then you can add in some AI-generated ones here, which are usually pretty easy and usually pretty good. Okay, residence, dwelling, property, abode, living place—this gets tricky because some of these could overlap with "apartment." So, "property" is probably too broad. "Living place," "dwelling," "residence" potentially, we could get away with. We could say "manor," "mansion," "family home," "single-family home," and by now we've given enough examples where we can just go to create. Now, we need to do the same for "apartment." So, we'll
go to create an intent, "apartment." The user's property type is an apartment. Then we can put "apartment." Um, let's see what else it's got for us. Um, "townhouse," "penthouse," "duplex," "flat"—probably not right. "Loft," probably not right. "Townhouse," "penthouse"—think that's a good bunch. Then we can add in a no match here as well, and we can add in a reprompt: "Sorry, I didn't get that. Is it a house or an apartment?" If it is a house, we can come up here and set it as logic here and go set. We can go value or expression. Select
the variable to set. We're going to go "property type," save that variable, or create that variable—sorry. Then we can enter this in and set this as "house." So we're setting the property type variable to "house" when it's been triggered by this particular route. Then we need to add another one, so I'll probably just duplicate this by right-clicking on one of these blocks, and then we can connect up "apartment" to it. The property type, instead of being "house," we can make it "apartment." From here, now that we know the property type, we can set the size
of the apartment or house. So we go, "How many square feet is it?" We can connect both of these up here, and then we're going to save the entire user reply on a capture step. So, anything that they respond to after this, we want to capture the entire thing. We want to go set up a set step. Sorry, that's not right. Using a prompt, what we're going to do is use AI to analyze the response and then extract the number of square feet from it. We could have used a step here where we change this
to instead of the entire user reply, we change it to an entity, but it's not as reliable as doing it this way. So, I'd prefer to just get it right the first time. Because an entity of the number of feet may be a bit harder to pick up than a clear word, like an entity of "house" or "apartment" or a name, etc. So just to make sure that it works every time for us, we want to create a new prompt. I'm going to put this in here: "Extract the number of square feet from what the
user said in numerical format only. Each 500, include nothing else in your response." This will... Be saved as a variable and passed to an API to a quote generator function. So, giving it a bit of context about what's been going on. And also put in the memory there just for good measure. Oh, we didn't name the prompt. Call this "extract square." And then we need to set the variable that we want to save this to, which is going to be "property size." So now we're saving that response, the size of the user's property in square
feet. Then we need to do one kind of tricky step, but it's just something that you guys will pick up as you go and as you build more of these. The next step after this is going to be sending that information to a relevance tool. The relevance tool is expecting what's called a string, which is just a number of letters or just text. You can have a number as text, which is confusing, but basically it's just the format in which it's being received. So, because we're sending it over an API, we need to be specific
about the format. Essentially, this is going to be saving that 500, or say if we have a 500-foot property. This will be plucking that out and giving us 500 as a string. In order to get the response we want from relevance, we need to convert it to a number and then send it. So, a little block of custom code here—know this was a no-code tutorial, but I hope you can forgive me for this. All we need to do is put this in here. So, "property size"—this is the variable. We're going to go "property size" and
we're just casting this variable as a number and then reassigning it to the variable it was before. We take whatever came out of this and say, "Okay, can you just make it a number?" and we'll save it, overwriting the existing variable. So now we have the number 500 in that case that we're ready to send to the next step. If that's gone correctly, we can talk to them and say, "One sec while I get..." Then we have this JavaScript fail route here, which you can just sort of throw down there for now. There is a
chance that this prompt outputs not just a number. As you can see, we're asking for just this, and therefore the property size variable, if it is just 500. Sometimes, it can say, "Hey, your size is 500," and then we end up with a variable that's not actually convertible into a number. So, we do need to add a little bit there as a potential fallback. I probably won't be doing it in this video if I'm honest; it's fairly basic. But you would add this in here, some sort of looping back in to make sure that it
is actually in the right format, or just make sure that your prompt is giving a strict instruction to only output just the number so you get fewer errors. The next major step after this is to get our relevant AI research. If we go back to the Figma here, you'll see that we have this relevant AI tool which is going to allow us to generate the instant quote. I've pre-made this and I've actually sniped it from some of my accelerator resources. If you open this link, it's going to allow you to clone this into your relevance
account. So, up here you can click "Clone," and we'll just clone it into Morningside AI. Now this thing is going to be taking in a property type and a size in square feet. We have a basic LLM step here. This is a really simple one. Again, like I said earlier in this video, building really powerful and advanced functionality does take a lot longer, and if I were to do things that weren't just a very basic LLM step like this, then it would take a lot longer with different platforms you would have to sign up for.
The idea is to teach you how these things can connect. Once you know how to connect Voiceflow to relevance through an API call, you can come in here and throw whatever you want in and make it as advanced as you want. But in this case, we literally could have done this in Voiceflow if I'm being fully honest. However, the skill I'm trying to teach you here is accessing an external tool via an API. What this is doing is taking in the property type. We've got two options here and the square footage as a number. See
here, it's a number. I can't just type in here; it has to be a number. That's what the API is going to be expecting. You can see here that it says it's expecting a number. Then we pass this into a basic prompt that says the customer is requesting this, and these are the rough prices for the different square footage and property types. The LLM, in this case, GPT-4 mini, is just going to look over that, take in their inputs, and provide an output. If I just go up here and I set it as an apartment,
I mean, I don't know what size an apartment is in square feet. But we can run that, and it's going to give... Us some kind of output, and then it gives us the estimate. So, it's saying regular maintenance cleaning for $60, deep cleaning for $120, move in and move out, etc. So, that's the output that we're going to be sending back to Voiceflow, and we're going to be turning that into a nice message to send through chat or through the phone. So, in order to set this tool up in Voiceflow and be able to interact
with it, we need to make sure the tool's been saved and that you have it in your account. Then, you can go to "Use" here, and just like we learned in the NA10 tutorial, we can go to "API" here, and then we get an API for us to use. Again, it is a POST request, and it tells us how to use it. So, we have params, basically the inputs it's expecting: the property type and a string. You see how it's got two quotations? That means anything inside it is a string. The square footage here, you
can see, isn't in quotation marks. So, it's not a string; in this case, it's a number. And, of course, we have the project ID here, letting Relevance know which tool we've created that we're actually trying to interact with. All we need to do now to interact with this and set up our quote generator is to copy this link. This is the endpoint URL that we're going to be calling over the internet, and this is what it's expecting in the body of that POST request. If you go back to Voiceflow here and we need to go
to "Dev API," we're going to change this to POST, put in that URL, and in this case, it seems that we've got a little bit of a different page on Relevance for some reason. So, we can actually do the authentication step, which is helpful. You can click "Generate API Key" here. It may have changed by the time you're watching this video, but it should roughly be the same. We can click "Deploy" here. Make sure that the API is up and running for us to interact with. Actually, now that we've deployed it, we don't need the
authentication anymore. That was a bit strange. Actually, I will do the API key just so you guys see how this works. We can make it private here. Now that we have our API key, we need to see how it's expecting to receive that API key via the HTTP request, which we're going to be sending from Voiceflow. So, if we scroll down here, cURL is usually the one I like to go to. There is a little bit I haven't really explained in terms of headers and bodies when it comes to API calls, but for now, just
know that when you have a cURL request like this, maybe it's even easier on the JavaScript. Here, we have what's called headers, and this is basically like the envelope that you put the information in. So, this up here is the information that we're putting in the request; it's going inside the envelope, and the headers, method, and endpoint URL are like the stamp and the information that you put on the outside of the envelope to make sure it gets to where it wants to go. You can say that this endpoint here, that's what we call the
endpoint, same as up here; that's the same as we have just here. The endpoint is like the address where the envelope is being sent to. We have the POST method—maybe this is like super fast mail or like overnight delivery, or maybe like a parcel versus an envelope. Basically, it’s the type of delivery that you're doing or type of request. The headers include important stuff like the type of content that's inside it, so you might say this like this. There's written text or there's a letter in here. So, it might seem a little bit complicated, but
we'll fill this all in. Now, anytime you are making an API call, you'll see these headers around, and you'll see the endpoint, the method, and then the body, which we're going to be setting up. This will all make sense in a moment, but let's just say for now we have "Content-Type," and it's going to be "application/json." That's one of our headers. So, if we go back to Connor's Cleaning, we open up the headers, we can go "Content-Type" here as we saw. So, "Content-Type," we need to set it to "application/json," a very common one that you're
going to be using. We have another one, which is "Authorization." This is basically the majority of the endpoints you're going to be seeing, which is "Authorization" and "Content-Type." A lot of the time, it's going to be an API key and "application/json." So then we can go back to Relevance, get our API key, and now to set up the body of the request, which is this, we can copy this, change this to raw, and paste this in. We have the params or the inputs in this case: the property type and square footage for the tool. What
we want to do is insert the variables that we've got over here into these. So we can go inside these quotations here and we can go "property type" in this case, and then for square footage, we can go "property size." And so, because the property type is expecting a string—as we can see if we go back here—it’s expecting a string, and this is expecting a number. The string... "must be wrapped around in, uh, these quotations, and the square footage is a number, and so we can just put the number because we've already converted it into
a number here. Right? So that's probably the trickiest part of all the stuff I'm going to teach you today. And now that we have this set up, we can actually send a test request, and we can say, uh, house. We can say 500 and test this API call. And there we go. It's complete. We have got back our answer, the estimate, etc., and all of the information is coming back from relevant AI as expected. And now what we need to do is extract the information which we want, which is this answer from this API call
and from the response. So we sent a request, and we got a response. Remember how we were using those terms before? We can click on answer, and we can save it to, and we can call it, uh, raw quote data because it is quite raw, um, raw quote data from. And now we have the information back from relevance AI. All we need to do is make it pretty and use AI to generate a message that summarizes the quote to the customer. So we can go a, uh, prompt step here. We can create a new prompt.
Let's add in the conversation history for context. And I've got this prompt here: 'Write a short and clear explanation of this quote for the customers.’ Uh, we can go property type for the customer's property type, and we can put in the raw quote data here. So that's going to insert this with the customer's apartment or the customer's house, and then we're just going to dump in the raw data that came back from relevance AI. Your response will be read over the phone, so it must be all in one paragraph and no longer than three to
four short sentences. It should read like—and I've given an example here of how I wanted to give the outputs. And so we can change this to quote, quote response. And now we are ready to give this a spin. So if we run this whole thing from the top, um, run: 'How much for a weekly clean?' So I'm going straight to the asking a question about price. You're asking about a pricing for our weekly cleaning service. Is that correct? Yes. Bam. Bam. Okay, sure. To give you an instant quote, I just need the property type and
size and square feet. Is the property a house or an apartment? It's a house. How many square feet is it? 500. I don't know. Is that a big? That sounds very small to me. I don't know if 500—I have no clue about the sizes of houses, if 500 is normal or not. And there we go. Based on your 500-foot house, we have four cleaning packages: regular maintenance cleaning at $90 for standard weekly cleaning, deep cleaning, ra. So, we're giving them a quick summary based on their 500 ft house or x number of square ft x
property type and giving them a quick summary. So, that's pretty cool. We're using the relevance tool, and we're getting this information back. Now, there is one more step that I have added onto this—I get this thing where if I've gone this far with you guys, I may as well add in the rest of it to make it actually a bit more useful, um, which is a quick lead capture using Google Sheets and Make.com. So, I couldn't leave you guys hanging on this. I thought I may as well throw it in there. So, stick with me
because this is really where you're going to be like, 'Oh, this is—this is, uh, opening my eyes to what you can do with these kind of platforms.' So, the reason we're adding this on is because the person has asked about pricing or they're directly interested in some kind of services, and we've given them an instant quote, and now we're trying to immediately follow that up with, 'Hey, look, give us your details, and we'll be in touch, and we'll get that service booked in right away.' So, we can jump into a, uh, message block here. This
is—I'll just paste this in to keep things nice and quick here. Please provide your name and phone number, and I'll get one of the team to call you to find a time that works. Now, one thing I will change is, as you saw on that last run, it had a question at the bottom. It's like, 'Which one are you interested in?' I would probably try to remove that. Um, do not ask a question at the end. Just give them this description. So that's just going to end the message and say, 'Look, this is a quote.'
Bam. And then the next message I get is this: 'Please provide your name and phone number, and I'll get one of the team to call you to find a time that works.' And so we want to save this entire user reply with a capture step. Capture step. There we go. Change this to entire user reply. So we want to capture all of the information that they send, whether over the phone or through chat. So in this response, they're going to say their name and their phone number, right? And we need to extract those out. I'm
going to put this here and do a set step. We're going to use a prompt. So, we're setting this with AI. And we're going to create a new prompt. Um, let's just set the variable first. Let's say this is going to be put into last response. Make a new prompt here. And this is..." The prompt that we're going to be using is as follows: We have just asked the user to provide their name and phone number. We need to attempt to extract the information and then confirm it with them. Here is their last utterance, which
they've just provided and we've captured. If there is a valid name and phone number present, then you must do a confirmation (e.g., "Okay, quickly confirm your name is this and your number is this. Is that correct?"). However, if one or both are missing or appear to be invalid, you must output only "retry" as your response and nothing else. This retry variable will be checked, and if it matches exactly, then it will trigger another attempt to capture. So, either write a short and sweet confirmation message or output "retry" for another attempt at capturing. What we're doing
here is using AI to analyze the response and say, "Look, we're looking to pluck out a name and phone number, and we want to also confirm that, because this is likely going to be over the phone." If the AI doesn't see a clear valid phone number and a valid name, then it's going to output only the word "retry." So, give us a response. If it's good to go, we can move on to the next step. If it says "retry," then we're going to try to retry. Now, of course, this retry doesn't actually do anything unless
we build the functionality to look for that retry keyword, which we'll do in a second. The prompt can be changed to "extract what attempt extract name." Then we can go to conditions here and check if the last response—which is the variable storing the output of that prompt—contains "retry." Unless the person's name is something like "Bill Retry Smith," this should be fine. Actually, just to make this look a bit cleaner, we might change this to check if the last response does not contain "retry." Then we're going to go up here and send the last response, because
as we said, it's going to either generate the confirmation message or output "retry." If it's valid, we’ll input the last response here. It will say their name and phone number. We'll analyze it, and if it doesn't contain the word "retry," we can proceed with: "Hey, just to confirm, this is your name and this is your phone number." For the choices here, we can use our handy dandy yes/no answers. So, we can provide two triggers: "yes" and "no." If they say "no" to the confirmation, indicating that the phone number or name is incorrect, we need to
implement some retry logic. I usually like to make my retries an orange color and my failures red. So we would say, "Okay, let's try that again. Can you please provide a full name and phone number, please?" Then we'll send them all the way back to this step to recapture their information and put them through this process again. This is a loop that can be repeated over and over. We also need to address the else step. If the input contains "retry," indicating that the provided phone number or name isn't valid, we need to manage that as
well. We can add a message here: "Sorry, I didn't quite get that. Can you please give me a full name and phone number so a member of our team can get in touch?" Right click on this message and change its block color to orange. Additionally, we can adjust the lines connecting these blocks to the same color. This makes it more obvious where the responses are coming from. If they come in and say, "Hey, my name's Bill and my phone number is 02111" and that's deemed invalid, it will output "retry." We will pick it up and
say, "Sorry, I didn't quite get that," prompting them to provide their details again. Once we've obtained a valid name and phone number that doesn't output "retry," the flow will continue to confirm: "Hey, just to double-check, is this your phone number and email before we proceed?" The answers "yes" and "no" will handle responses accordingly, with "no" taking them back to the first step again. This forms an effective error handling and looping mechanism essential for many conversational AI agents, particularly in voice flow. The last steps involve some quick variable extractions. We can navigate to logic here to
make the necessary adjustments. We're going to extract the name and the phone number. So, we'll go with the prompt. Holy moly, it is bloody hot here! The variable that we want to save this, we were going to be extracting the name, so we'll add a new variable called "name." The user's name, um, and this is going to be called "extract name." Here's a quick and easy prompt; you can pause it to take a look at that. It's just going to extract their name. We need to add another variable; this is going to be their phone
number. Then, we need another prompt—just paste this one in here. Pretty basic. Again, pause it if you want to take a look. And I haven't named that prompt. It's going to annoy me: "extract phone number." And now we're going to have their name and their phone number extracted out of this response. Oh, and actually, we need to add in the conversation history there so that it actually has this information in it. And then we go, "Great! Let me get that added into our system." This buys us a bit of time as we use our, um,
make webhook, which we're going to set up now. So, the next step is to get a Google Sheet set up and to use make.com to, uh, take this data and shoot it into a Google Sheet. So, to do that, um, I will leave a link on—I mean, you can just search it up. It's make.com. All right, I'll save you the hassle. So, you sign into make.com, create an account, whatever you want to do or need to do. Go to Scenarios, and then we're going to create a new scenario. I'm going to build from scratch here.
I'm going to get all that rubbish out of the way. I don't know why it's acting like I'm some rookie here. Um, and then we need to go to webhooks, custom webhook. We're going to, um, add in a new webhook. This is going to be "Connor's Cleaning Lead Capture." I'm going to save that. It's going to create this webhook here. I'm going to copy this edge to clipboard. We're going to come back to our build, and then we're going to go to the API step. So, what this is doing, if you're a bit new to
webhooks and API calls and stuff, what we can do here on make is set this up to basically listen. It's a URL; you know how we had the endpoint? The endpoint, this thing here that it's given us that I've just copied to our clipboard, that's like the address, remember? So if you put it—write it on the letter, that's where it's going to go. This allows us to basically send data, um, via API call from Voiceflow to Make, and it's going to catch it here. And this little lightning bolt means that anything we build after is
going to be triggered whenever it receives one of those—whenever a new bit of mail arrives. It's going to then trigger this multi-step process. So, we're going to put this into Voiceflow. We're going to trigger it and make sure it knows what data to expect. And then we're going to be able to use that data and put it into Google Sheets. So, stick with me here, but this is another very, very essential skill in AI automation: how to set up a webhook, um, and use it within different apps. So, we have our webhook here. We've copied
the address to clipboard. We're going back, setting up a GET request here. So, it's not a POST request this time; we're just, uh, getting—and we're technically not getting data. A GET request is a much more kind of quick and dirty request. Um, and as you'll see, we kind of just tack on a bunch of information after this. Um, we can do it through what's called parameters. Here, we want to be sending a property. Oh, let's just say "property type." Actually, let's do this properly. Let's go "timestamp." So, in this Google Sheet, you're going to want
to know when the different leads came in. So, we can go, uh, "timestamp" and get the timestamp from Voiceflow. That's a default variable that they are automatically filling out for you. So, one of the things—one of the rows in the spreadsheet is going to be, uh, the timestamp. We're going to add another, and we're going to go, um, "name." We're going to put in the name here. So, now all the cogs in your head should start turning as we put this together. And we're going to go, uh, "phone number," and we go, "bracket phone number."
And if we add another, we can go "property type." Let me go "property size," and go "property size." We can add another one; we can go "quoted prices," so that the sales team knows what we actually told them in case you're playing around with pricing. Um, "raw quote data," and I'll probably throw in one more here, which is their first question: um, "first question," uh, "user first reply." So, that might give context to the sales team like, "What did they actually contact us for in the first place?" Maybe helpful, maybe not. But we can just
send this all over to the Google Sheet. And so now we can see this—uh, as this thing's spinning around, it's basically waiting for us to send some data to it. It's basically sitting there at the mailbox, like waiting for it to come through. Um, and we can go "send" here, and I'm going to put in—uh, gosh. Dug myself a hole here. Um, let's go name Liam. Um, house probably size. Um, um, lots of money. Um, how much for cleaning, Yarning? Um, send. And if we go back, bam, successfully determined. And what we've done and determined
means is that Make has received the request that we sent. And now it knows that we're going to be sending it a timestamp and a property type, and this is a really, really key skill to understand. Because now when I go, "Oh, save," now when I go to here and I go Google Sheets and I go add a row, um, you will need to set up your Google Sheets connection here. So, you just sign in with Google, add your connection in. Um, I am going to have to create a new spreadsheet for this quickly. I'm
going to go timestamp. So, I'll zoom this up: timestamp, name, phone, property type, property size. 1, 2, 3, 4, 5, 6, 7. Yeah, we've got them all right. So then I can go. So call this my Connor Cleaning Support Agent Leads. So now I want to go back to Make, and I want to click here to, um, Connor. There we go, Connor's cleaning. Why do I keep spelling cleaning wrong? Now we have the spreadsheet set up. The sheet name is just going to be Sheet 1. Does the table contain headers? Yes, it does. And now
we get to put in all of our values. So, bam. Timestamp, pop that in there. Name, pop that in there. Phone, pop that in there. Property type. So, you see what such a key skill that I really, really want you guys to learn, um, because this is a lot of like, if you just have a couple of these key things using these APIs and say, VoiceFlow, or in NAD, building tools and relevance, and then using them via API, knowing how to set up webhooks and then send data in between them and to set this data
structure. You send that first initial batch over to Make in a test request, it's going to go, "Okay, this is what they're going to send me in the future," and then that's locked in, and you can send thousands and thousands of requests through it, and it will operate as you expect. And first question, so, uh, it's got all those other rows; we don't need to worry about. Save. All right. And so that should be working. We can switch this to "immediately." Oh, I need to save it. Save. Um, I'm going to set it to run
immediately as data arrives. So, this is going to be waiting all the time. Actually, I’ve got a whole bunch of other stuff running in Make for my various businesses. So, I'm just going to have this set up. If you wanted this to run around the clock, you would turn that on. I'm just going to turn it on to run once, and this is just going to be sitting there waiting for data. So, what we can do is just finish this off quickly. So, I'll just paste this in. Got this all done. Thank you. That's the
end of it. Um, what we want to do is have a failure path. So, in case this fails, we just pop that down there and say, "Darn it, something went wrong." I'm going to put that in red. Um, and then this one is like that. All righty. So, if we look at Make, it's still expecting us to send some data to it. Let's hope that we've done all of this right, and it's going to work first time, but you never really know, dear. So, let's give this a run, and we'll try to go through that
second path and we'll try to get that stuff added into the spreadsheet. I need weekend cleaning, please. So, asking a question is going straight to price. You're looking for weekend cleaning services and want to know the pricing. Is that correct? Yes. So our router is going to pick that up and say he's looking for pricing. Let's send him to the quote tool. Okay. Sure. To give you an instant quote, I just need the property type and size in square feet. It's a property. Let's go apartment. It's detected that correctly. And how many square feet? It's
500, typical apartment size in square feet. Okay, so 500 isn't actually ridiculous. Um, great. And then we get our answer based on your 500-square-foot apartment. Bam, bam, bam. There's all the prices. Please provide your name and phone number and I'll get one of the teams to call you with a time that works. Let's give this a test to see if it's actually picking up on the fail. Sure. My name is Liam and my phone is boom. Sorry, I didn't quite get that. So, it detected that it wasn't right. So, we got the retry output. We
got the retry output from this, which is what we wanted. Sorry, I didn't quite get that. Can you give me that again? Um, Liam Otley, number is um, 021-021. That's what numbers look like here in New Zealand. Okay. Just to confirm quickly, your name is Liam Otley and your phone number is that correct? Yes, sir. Name and phone number. Oh, what has it done there? Oh, darn. I don't know why it's doing that. I just want the phone number. So, we have got a little bit of an error there. I just go back and tweak
the prompt. Make sure it's like only get the phone number. We don't want anything apart from numbers here. Great. Let me get that added to the system. And then if we go back to Make, we see these are all green now. And we see these dots. So, this is... the information that came through, namely, my phone number. And so, here's the little mistake where we had a new line: apartment. Bam, bam, bam. All of that information. And then it's added it into Google Sheets. Here we see updated numbers of rows, all the values that it's
updated, and we can go to. Okay. Holy moly! Right, we're ready to put this thing on our website and to also put it on a phone number. So, let's just finish the job. Guys, I'm getting real hungry, but we can push through. So, I will just turn this on, actually, so that if we are testing it on the web and over the phone, it's ready to receive. If we do want to be pedantic, I would go back and I would change—I have to do it. It's going to piss me off. I'll put their name. Oh,
that's why! I'll put their phone number only. My bad. I'll put their phone number only. And we do have these fail points here. I'm not going to bother filling them out; I think you guys can figure out, based off how I've handled this, how you can handle these as well. So, what you'll find is when you're building these, this kind of fail, like error handling, is kind of an endless thread that you keep pulling. It's like, "Oh, well, now I've got to handle this, this, and this." So, I'm not going to—this is a prototype. I'm
not going to be doing all of the error handling for you here. In the template, there is actually a little bit more of it, some better examples. So, maybe if you import that, you can just steal the work that I've done there. But what we need to do now is we can publish this thing. We'll call it "V1 First Drop." All right. So now it's published. We can add the agent to a website. Let's click on that, and that takes us to this integrations tab. Let's put this down; I don't need to see that. They've
got a new version of it. That's good to know. I said installation is pretty straightforward. So, we can just click "Copy" here. And then I'm going to open up Brackets here just to give you a demo of a website. I use this in all my tutorials; it's really easy to spin up. I will leave a link to this template if you want it, and also some instructions on how you can open up a website. I know this looks like code and it's all scary, but this is just allowing me to spin up a website very
quickly. So, I'll leave the template file. All you need to do is, once you've downloaded the template file, you need to download Brackets, which is the software. You can go to "File," then "Open Folder," and then you want to click on the folder when you've unzipped it, and it's going to open up the whole folder. And then you'll get all of this opened up like this. And you see all of these files. All you need to do is click on the "index.html," and then you'll see something similar to this. Well, I'm going to scroll down
to the bottom of the "index.html." I'm going to delete this old voice agent I was testing on here. Drop this in here, paste that, and then save it. Command + S. Click this little button up here, and it will show us a local version of the website running on our computer here through Brackets. So, here's my man with a magnificent beard, and we have the tester agent bubble down here. And there we go. I want to know where you live, my guy. Yep, woo! Okay. I didn't even program that in there; maybe you just thought
it was inappropriate. But we've got it working on a website. Now, if we pop back over to Voice Flow here, and you go to the integrations, the widget, you see we've got this "Test Your Agent" thing. So, down here, we can play around with the look and feel of it. I'm not really going to get into this here; there's quite a lot to play around with. But basically, all of what you see on here can be changed around: different logos, different text here, different icon, etc., different colors, and you can just make it look and
feel however you want it to. So, I'm sure you guys are big enough and ugly enough to figure that out yourselves. We'd probably want to switch over to this here. One thing you would want to do is turn off "Powered by Voice Flow," so it's not sending traffic to them when it's on your own website. And that's about it. For the sake of time, I'm not going to go through the entire flow again here; just know that the functionality that we built—that I just showed you in the builder—is going to work because we just deployed
it. This is exactly what we're interacting with. So, it's all working here. The only step to do now is to put it on this phone number so we can have a chat with it over the phone, which we're going to do now. To do that, we need to go to the Telefan bit here. It is in beta right now, but for most of you watching, it is not going to be by the time you are watching this. So, we need to set up a phone number from Twilio, import it, and then connect our agent and
its functionality to that. So, we can go "Import Number." You'll see that we have... This information here: So, we can use Twilio or Vonage. Twilio is usually the go-to here. So, if we click on "Learn More," then they're going to help us. Basically, the best way to make sure you’re getting the most up-to-date information is to go to the docs of the platform. Finding, reading, and extracting information from documentation on these kinds of platforms is another key skill that you need to pick up to succeed in the space. So, if we go to the docs
here, we go to "Voice Phone Number: Setting Up Twilio Integration," and they have a video here, "Adding a Phone Number to Your Agent." So, if you ever get stuck, you know you’ve got documentation here, and for all of the other platforms, but they’ll keep updating these videos if things change, which they likely will as this voice AI space really takes off. So, if we go to Twilio, you will need to sign up and create an account on Twilio. All right, so we are logged into Twilio. You’ll need to create an account for most of you,
but Twilio is a phone number provider that you can connect to and interact with over the internet. It's super helpful when you can buy lots of numbers from different locations and stuff. When it comes to phone numbers, there are a lot of rules and regulations around them, and it varies a lot from country to country. For example, if you're in Germany, I believe you need to have a company registered to get a German phone number, and you need to obtain the number through your company registration and provide those details. So, it can be difficult. I'm
just going to show you how to use a US-based number here. We can go over to the phone numbers on the left. There may be some setup that Twilio will walk you through. It can be kind of annoying sometimes—they say you need to do all of these declarations and forms and stuff—but for the most part, it should be fairly straightforward if you follow their setup instructions. When you create your account, then come over and go to your phone numbers, manage, and go to buy a number. Now, unless you have other purposes you want to use
this for, you can just snag any random one if you're following this tutorial. If you're obviously doing this for a client, you could get one that’s matched to their location, their state, or even their city. When you click "Buy," you can see there are all these kinds of registrations and requirements you need to fulfill. Thankfully, voice requires fewer of those. You’ve got global routing, etc. So, you can come down here and buy this. It's going to be a dollar a month. I know the cost of starting up a business is ridiculous these days. How dare
they? But just to walk you through and do it with you, I’m going to buy this number even though I really don’t need it. There we go. I've got my number. I’m just going to copy this so I don’t forget it. 517. And then I go to active numbers. I got my guy. Where is he? 517 down here. Copy this bad boy. Go back to Twilio. Put our number in here. Our Twilio Account SID—you need to pop back to Twilio. You go to your account dashboard. This was a bit confusing when I first did it,
so I’m glad I can help you guys through it because it was a bit of a pain in the bum for me. You think all this information is going to be tucked away in the side panels, but no, it’s just on the dashboard. Who the hell puts your tokens and stuff on a dashboard? I mean, when you know it’s there, it’s helpful, but it was a bit confusing at the time for me. I’m going to paste this in here. We’re going to copy this Auth Token and paste this in here. And we’re going to say,
“This is my YouTube tutorial.” I’m going to import that bad boy. Select environment—I’m just going to put it on development for now. We can assign that. And with that, you can see if I click "Unassign" here, that means I’m going to take it off. So, it’s assigned, and it should be ready to have a chat with. If I click to copy this number here, I go back to my little website code. If I find +1—oh, there we go. So, we have the call. This is in the header. This is just me wanting to put it
on the site for you guys. So, you don’t necessarily need to copy this. I’m going to save that. If I go back to my website here, now I have the actual phone number. If I pull up Skype on my phone, you guys, if you’re in the US or wherever your number is based, you can just call it. Stage +1. All right, let’s give our mate a ring. Welcome to Conor’s Cleaning. How can I help? Hey, I was just wondering where you guys are located. Is that correct? Yeah, that’s correct. We’re located at 247 Beacon Street
in Boston, Massachusetts, 02116. We serve the greater Boston area, including neighborhoods like downtown Boston, Cambridge, Somerville, Brooklyn, and several others. Is there anything else I can help you with today? Sweet. Okay, so that's done. The knowledge-based route is complete. Now, let’s give it another spin. Call him again. Okay. Hey, welcome to Conor’s Cleaning. How can I help? Hi there. I'm just... Getting interested in getting, uh, some cleaning for my place on the weekends. It sounds like you're interested in booking a cleaning service for a licensed weekend. Is that correct? Yep. Okay, sure. To give you
an instant quote, I just need the property type, size, and square feet. Is the property a house or an apartment? It's a house. Sorry, I didn't get that. Is it a house or an apartment? It is a house, a home. And how many square feet is it? It's about a thousand. One sec while I generate your quote. Based on your requirements, we can offer four different packages: Regular maintenance cleaning at $90, which covers standard weekly or bi-weekly cleaning; deep cleaning at $150 for a more thorough top-to-bottom refresh; move-in/move-out cleaning at $170 for preparing or cleaning
after a home transition; and post-renovation cleaning at $200 for handling construction dust and debris. Please provide your name and phone number, and I'll get one of the team to call you to find a time that works. Sure. My name is Liam Otsley, and my phone number is 021, uh, 1111, 9792. Okay, just to quickly confirm, your name is Liam Oxley, and your phone number is 02119792. Is that correct? Yep, that's spot on. Great. Let me get that added into our system. All done. Thank you. Boom. All righty. That is done. That is dunzos. All right.
So, you guys learned a lot in that one: voice integration, website integration, um, connecting web hooks to make, setting up make automations, sending data over, connecting relevance AI tools into voice flow, um, basic integration with a CRM—in this case, it's a sheet—but there's so much in there, guys. I hope you really, really, uh, learned a lot from that. This has been a big one. And we've still got, uh, one more to go. So, I hope you're sticking with us. Um, but going back to our Figma here, um, we have ticked off all of this. So,
we have it as a web chat widget, and we have it as a phone number. Now, as far as I know, you can have both options for the same agent on voice; you can have it on the website and over voice. You don't need to duplicate it and sort of define what modality it's going to be. So, we've ticked off all the boxes for this. All of the resources will be in here, all of the prompts, a template for that whole final build as well. If you just want to snag all my hard work and
go and sell it to someone, again, I don't—I really don't care. Um, that's what these videos are for. And we're getting into agent build number four now. All righty. So, last but not least is an agent built on my own software. So, I didn't want to make this. It's not about me selling you or getting you to use my software. So, I thought I'd put it at the end just so you know that I wasn't really—this is about you guys learning, and my software happens to help you put an agent onto WhatsApp very, very easily.
So, that's why it's included in here. But again, this is nonsponsored, nonpromoted, nonwhatever. I'm just really trying to share with you what I think is a really valuable skill set to have. All right. Now getting into AI agent build number four. This is going to be, ta-da, a WhatsApp-based ARI customer support and lead generation agent built on Agentive, my software. So, this is a no-code, uh, AI agent builder that is built on top of OpenAI's assistance API. So, you're technically using your OpenAI account, getting very, very cheap rates on the, uh, token usage that you're
running through this agent. But Agentive just allows you to build on top of it very easily. But more importantly, to deploy these agents not just onto web chat widgets like we've done with Voiceflow, but easily onto things like WhatsApp and Instagram, etc. So, that's really the key thing that Agentive focuses on doing right now: making it easy for you to get your agents onto these platforms. So, as you can see, it's a fairly similar build to what we just did on Voiceflow in terms of functionality. We're going to be having a, uh, a knowledge base
that we can ask questions over. It's going to be able to generate another instant quote. So, we'll just quickly connect that same relevance tool here. And finally, we're going to do a lead capture, but this time it's going to be done through Airtable. So, I want to mix it up and show you how you can connect your agents to Airtable, which is a very, very common integration that you're going to need to know. And the difference between this agent, you're going to see that it's much, much faster to build. This is not meant to be
a side-by-side comparison of what's better, how much faster. It's just that when you build on a more conversational-based, uh, AI agent platform like Agentive, which is built on top of the Assistance API, it's a very different way of building agents because it's all just based on a prompt and providing the right tools, and all the magic kind of happens itself through the prompt. Whereas Voiceflow gives you a lot more control. So, it's really the difference between structured AI agent building versus more conversational and open-ended chats through a more ChatGPT-like experience that can just go on
and on and on, which is what these agents can do. So, the purposes are, of course, fairly similar, but the value of this is slightly different in that we are using WhatsApp. So, uh, many people browsing for services online are hesitant. To use website contact forms or other chatbots that they think are not going to give them access to a real human, due to the potential delays that come from it. Right? You land on a website, and you're shopping around for a different service or product, and then there's this contact form, or there's a web
chat widget. You're going to go, "Well, I don't really think I'm going to get the help that I really need here at the speed that I want." So you might look for a WhatsApp widget, and you know that if you click that WhatsApp widget, you're going to speak directly to someone. This is kind of playing on the fact that if you have the WhatsApp option on your website, people are much more likely to just click that and go through and try to have a conversation directly to get what they want. By having a WhatsApp option
on a website or other triggers (e.g., you can have a QR code that you could stick on, say, a real estate sign, and you build an agent connected to your WhatsApp number, like we're going to do here), you create a QR code that people can scan and immediately open WhatsApp and start chatting. There are lots of different ways that you can have an access point into a WhatsApp agent like this, but it basically opens up more conversations through a more smartphone-native platform. So they can hop on their phone and sort of have a chat rather
than being on a website on the computer, or a little tiny website chatbot on their phone. In order to essentially engage more prospects or more people interested in the business in conversation, quickly provide value through either the knowledge base and these tools here, and real-time quotes. Ultimately, because you're providing that instant value and instant feedback from them, you can collect their lead information, or better yet, even set appointments through WhatsApp, which you can build on an agenda. That use case is a little bit more advanced and not something I can show within this video, but
it definitely is possible. It's really only a few steps away from the skills that you've learned in this video so far. So keep an eye on that appointment setting use case because if you can do that with an AI agent, it’s a very, very valuable one. I've done other videos on the channel here showing you how to do that. So the usage of this is that they're going to find the company's WhatsApp number on their website or elsewhere—maybe a QR code, like I said—and they're going to start a conversation on WhatsApp. The agent is immediately
going to jump in and start responding, being able to answer from the knowledge base, generate quotes, and then capture their lead information. So, without further ado, let's jump into building this agent. We can click up here to go to my website, Agentive. You can click on "Register Now." You can just register with your Google account. I'm going to log in with mine. It is free to make an account, and we have a free plan, so you can just experiment as much as you need, and then you're only going to be charged based on the amount
of usage you use. It's very, very cheap and affordable, and I wanted to make this platform for you guys to all get on and experiment with building AI agents without coding. That was really the core of why we started this whole thing. So we’ve got the dashboard here, which will load in my data in a second. You can see here what the dashboard will look like when you've got your own agents running. We are running the Agentive customer support chatbot through this account that I'm using right now. You can see the usage costs are very
cheap, sessions, etc. It’s really cool when you go into analytics, and you can use Agentive to see how people are using your agents, but that's obviously something for a little bit later once you put these into production. Now, what we're going to do is, of course, we can go to agents, or we can just create an agent from here, and I’ll call this "Connor's Cleaning WhatsApp Agent." Oh, we need a little description as well: "Answers questions from KB, provides real-time cleaning quotes, and can capture leads to Airtable." You’re going to see the setup is a
lot faster than some of these other platforms. Again, I’m not trying to gas myself up here; it’s just a different way of approaching building agents. It's a lot faster for rapid prototyping and easy to get things up and running. Of course, if you need much more advanced functionality, you do need to go the extra mile and go onto platforms like Voice Flow. But in this case, we have a prompt. It’s very easy. We have knowledge, and we have tools. So, remember when we went back to being a chef and the three ingredients concept? These are
your three ingredients: the prompt that you provide as instructions, the knowledge that you provide as the external knowledge base, and the tools that we can connect to it as well. We can select the model here. I think I want a nice and snappy response time because this is going to be on WhatsApp and customer-facing. So, I’ll go to GPT-4 mini. It's nice and quick. Now, we can just put a test, test, test. In there, or you are a help. Just put that in there for now as the prompt. The knowledge base we can turn this
on. We can create a new knowledge base. Call this. We're going to click here, and we're going to upload that same file that we used on VoiceFlow. The same document that will be available in the resources for this particular guide. Give that a second to process. Once this goes green, we're good to upload it. You can add multiple files in here. We allow five files at a time, but you can add dozens and dozens of files, so you have a massive knowledge base to work with. And just like that, we have connected our knowledge base.
The cool thing about Agent is that, because we're built on the Assistance API, this is actually an independent knowledge base. You can create a knowledge base and connect it to multiple different agents. The knowledge is not restricted to the agent that you build it within. So, I can go and create a new agent and connect this exact same knowledge base. I have all of these other ones here. Then, when we go into the tools section, we are going to have two tools for this. The knowledge base, if we go back to our Figma here, is
technically a form of tool that the agent is using. On platforms like the Assistance API and many other platforms, you'll see knowledge treated as its own thing, but essentially, it is just another tool that the agent is using at the right time when it needs to pull in knowledge to answer questions. OpenAI separates it out into its own thing here, and so do we, because we built on top of it. So, we do have three different tools, but knowledge is its own tool that gets set up through this knowledge-based connection that we just made before.
Then, we have the tools, and here we have our instant quote from Relevance, and we have our capture lead information. We know the process of going on to Relevance, so we can just go create a new tool here, and this is going to show you a schema. Remember back to when we talked about schemas? It explains to the agent how to use the tool. To add a tool to this agent, we need to add a schema to it. Thankfully, our buddies at Relevance AI provide a very, very easy way to create schemas to import into
agents like on Aentive. So here, I can grab that same cost estimate tool for the instant quotation for cleaning services that we've used previously. Again, this will be linked. You can just clone this if you haven't got it already. I will provide a link for you to clone this into your Relevance account; that will be in the resources for this video. It's just like the previous tutorial that we did, where it's got property type, square footage, and an LLM step here to calculate it. It's going to spit that back, and we're going to turn that
into a nice response with our agent on Agent. We can make sure that we've saved this. The cool thing here is that in order to get this connected to Agent and our agent over there, we can just go to custom actions here on the tools page. As you can see here, it's mainly intended for use with OpenAI's custom GPTs, which you can get access to through ChatGPT. I highly recommend you check out OpenAI GPTs because it's a super simple way to spin up your own agents on the ChatGPT site. We can select our tool here,
and we can get a schema for it. But what I've just realized is that I actually do have an Airtable lead capture tool here that I've already created on Relevance. It's actually going to be easier for us to set it up here on Relevance than to have to do it all separately. So, let's just quickly set that up. Now, if we go to Airtable, let's just get a simple one that captures the name and phone. I'll provide the template for this tool so you can clone it in. Basically, it takes an input of the name
of the lead, the email address of the lead, and the phone as well. It's capturing all three of these as lead information, and then it's sending it over to Airtable, which we're going to set up just now. It's using a post request to push that data that we collected here, and we will collect through WhatsApp eventually, and it's pushing it into the Airtable database. So, let's get that set up quickly. If you go to Airtable, I'm just going to use a dummy CRM that I use for all of these tutorials, and you guys are going
to be able to clone this if you want. In the resources for this video, there will be a link like this. If I share this publicly, you guys will get something that looks a bit like this, and this button up here says "Copy Base." That will copy it into your account. All you need to do to copy this Airtable base is create an Airtable account and then click on this "Copy Base," and it will copy it over. You can get this with the column source pre-set up. It is fairly easy to set up these fields
yourself, but I want to make it easier for you guys, so you can just copy this. It'll be included in the resources. Fields that we're looking for. So now all we need to do is send data into this database through our WhatsApp-based agentive agent. When someone provides their details, it gets sent into here. We need to go and see our details for the Airtable web API. Airtable has its own API, which allows us to interact with our databases like this programmatically. All we need to do is go to the right-hand corner here, go to the
Builder Hub, and if we go to the developer docs here and scroll down to the web API, this is a reference for the Airtable web API. This documentation is essentially going to tell us how to interact with our Airtable programmatically through our agents, voice flow, relevance, and agentive as well. Any way you want to interact with it, you can now take this knowledge that you've gained in this video, look through this, and model what we're going to do here in relevance. You can take that same idea and put it into, say, voice flow, and you
can build an Airtable integration within voice flow yourself, where you can send and pull data. These skills all stack on top of each other and really center around understanding how APIs work, which comes down to reading documentation as well. In this case, if you go back to our relevance tool here, we need to get our URL, which is our endpoint, something we've talked about before. This is the address that we are sending the request to, and agentive, where we're building the agent, will be using relevance to call Airtable. It's a bit of a roundabout way
of doing things, but to get all of this information, the easiest way is to go back to this documentation. The easiest way for us to find the information that allows us to interact with our own Airtable base that we're setting up is to come down here and find the base that you've just cloned into your account, which will likely be "Smith Solar CRM." Don't worry about the name. Airtable does a really, really good job of making this super easy. We can just come here to the leads table. If we go back to Airtable here, you'll
see we are on the leads table. We have these different tabs; you can just ignore these—they're just different projects that I've done on YouTube. They're all kind of there in case people are also cloning this into their account. But we're looking at the leads tab here. So, we go to the leads tab, and we want to create records. It gives us all of the information we need here in order to create records. You can see that it's a POST request, and it's got HTTPS and all of this information. So, this is the endpoint. We want
to copy all of this all the way down to leads. Copy this, go back to relevance, and paste this in. Oh, maybe that was already there. Paste that in there. Then we need to add in two headers: authorization and content type. Now, remembering what we learned before, you can see we have "H", and this H tag means that there's a header. The header is authorization, and then the value is going to be "Bearer" followed by our token. This is something that tripped me up when I was first learning to use APIs. You need to add
the word "Bearer," then a space, and then your API key. It's a weird way of doing things; I don't really know why it's like that, but sometimes when you're doing these authorizations, you need to add in "Bearer" space and then your API key. It's there for a reason, is what I'm saying. Then we have the content type being application JSON, which we are already familiar with. So, going back to relevance, we have the headers of authorization and content type here: application JSON. Now we need to add our Airtable API key so that we are authenticated
and have permission to send an API request. They're not going to let anyone use these details and start sending data to our database, right? They need to be authenticated, and that's what API keys do. To get our Airtable API key, of course, we go to Airtable. We can come up to the top right here, go back to our Builder Hub, go to personal access tokens, and create a new token. Call this "YouTube." We can go and add the base; this will be Smith's Solar CRM. We can add a scope of read/write, and sometimes I find
it handy to have the schemas read in there as well. Basically, what we're doing here is saying that I give this API key we are creating permission to interact with this Airtable, allowing it to do things like read what's in the database, write to the database, create new things, and also see the overall structure of the base and the field types. We can add that and create the token. We get this token, head back to relevance. Again, this template that you can clone into your account is going to be on the resources. If you're following
along, you should just clone it into your account and then come down here and make the changes as I do them. So, we can add—make sure we have a... Space after bearer and then paste our key because if we go back to the web API docs, we can see we have authorization bearer space your API key content type, and then application/json. Then we have the data as the payload. Remember, like this is what's inside the envelope. Then we have records, and we have the fields name, phone, and status. And then it's provided us with an
example of how we would send data into that, which we don't need to worry too much about because I've already got this fitted in here. It can be quite fiddly. In fact, for this, I'm actually going to add another field in here. This is one thing about Relevance I'm not a huge fan of. This can feel super fiddly sometimes. So, if we go email, this will already be in the template that I give you, by the way. Email. Why would that delete that? Okay, so we have the URL has been updated. The method is POST.
That's correct. We have the authentication. We have the content type. We have the body all set up. We've added in our fields of name, phone, and email, which we have name, email, and phone. So, we can give it a spin here. If we say Liam, there we go. And we give it a spin. Run the tool. We'll see if it accepts us. Yep. And there we go. If we go back to AirTable, open the base up. There we have it. Liam, phone, email. So, we can take this tool and we can take the instant quote
generator. We can put those into Agent, and before you know it, we're going to have our agent ready to go. So, let's head back to Relevance here. We'll save this tool, and we'll change this to name, email, and phone. Um, and just quickly before we do that integration, this is when the description comes into play here. Remember those natural language descriptions of what the tool does, and what each of the parameters and inputs are. It's really important to get these right in Relevance, and I see a lot of people skipping over this step, but this
is what's going to be put into that schema, right? So, when Relevance generates a schema for us, that one-page manual on how to use this tool and use the API in order to interact with this functionality, when we give it into Agentive, it's going to be reading over everything in there. And it's going to be those little descriptions around what the tool does and what it's supposed to take in. And these parts here in Relevance are where we get to set that up. A proper description is needed before we do this integration. So, this tool
captures lead information, stores it in AirTable CRM, requires the lead's name, phone, and email. Name, phone, and email. The name is the name of the lead. Yep. Email, the email address of the lead, and phone is the phone number of the lead. So, that's all good there and ready to integrate. Might even do a quick check on the Sparkly cost estimate as well. Yep. Type of property, square footage of the property, and we are ready to go. So now we can click on the custom action step here. Scroll down and click on both of these.
Bam. Bam. Scroll down. We're going to change this to custom orth. We're going to generate an API key. There we go. And we're going to generate our OpenAPI, not OpenAI, OpenAPI. It's essentially a type of API and a way of describing how the API works. And it gives us all of this information here. I will actually expand it out so you guys can see at least some of it. It's probably easier over on Agentive actually. And then we head back to Agentive. What we can do is paste in the schema. And now if we scroll
through this quickly, I just want you to see what a schema looks like under the hood because we have some important parts that are going to really connect the dots for you after everything that we've learned in this video. So I'll zoom in a bit here. Um, we have the title of the tool. So we have a few key things in here that we can break down. Basically the paths. We have two paths in here. This is one of them, and this is the other. These represent the two tools that we are integrating. You can
see one here is the operation ID, which is basically the name of the tool, and that is taken from Relevance directly, the AirTable lead capture. The summary here is the actual name or the title of the tool that we had in Relevance. This is just a version where they put in underscores to connect the gaps, and the description here, you can see it's the same as a description that we set up. I don't want to go back on there, but that was a description that we put under the name to describe what the tool does.
As for the inputs, Relevance has made it a little bit more complicated by putting a schema in here. Um, so we'll cover that in a second, but basically, here's the second tool: Sparkly cost estimate. This tool does this: it is about estimating the cost of an apartment. Then down here, we have the schemas for the inputs. So, we have things like the name. This is for the lead capture tool. The name, um, this is one of the fields. It's going to be in type string and it's required. We have the email, which is type string
and required. And we have the email, which is the description here. And of course, you can see all the descriptions. That we put in on relevance showing up here. Then the phone number of the lead, the email of the lead, etc. And here it's specifying how the AI agent should be sending inputs into that. So, that's probably the most difficult technical part of this whole video, but I did want to give you a bit of context on how that kind of fits together. This is quite a complex schema. Relevance puts it together in a little
bit more complex way by using these schemas for the inputs down here. But, long story short, if we then go to the add or button, we need to set up our authentication, which we can do by coming back to Relevance and copying this. We go back to here, paste this in, we go custom auth, and we go authorization with a 'z.' Oh, I need to create the tool. Sorry. So, we can just click create tool. The tool has been created successfully. And there we go. We have both of the tools added in because we did
them both in one bundle on Relevance. And then, if we go edit off, we can then put in API keys for both of these so that we have permission to use them. And we can do the same for this one. There we go. Now we have our knowledge set up, our two tools set up, and you can see that we're pretty darn close to completing this build. We have all of these three done. Might as well make them green for the sake of it. And now the only thing left to do is to write a
prompt that connects this all together. And that's really the glue that holds it together. My go-to method of rapidly creating prompts for AI agents is using a Relevance tool. Perfect that I've created, and I said I'd give this to you guys for free as well. That's going to be included in the resources. But if I go to use here, it's a prompt writer that includes all of the information from how we do prompting at Morningside, which is based on research and includes all the key things like role, task, specifics, context, explaining how to use the
tools that it's been provided as well. So, I'm just going to fill this out quickly here and then get a prompt. You guys can steal my prompt from the resources or you can use this as well to create your own. But, it's a pretty good exercise because you can see here we have the agent name being. What I like to do here is, so this is just a quick rundown of what the agent does, where it is being deployed, and why. So you can pause the video and look at that there. But just a bit
of context on what the agent does, where it is being deployed, and why. Conversions context we can say knowledge context. We can say with a contain. Then we get to the tools available section and we can say, and then we have the other tool which is. And then, for the ideal input and output examples, I'm just going to say none to provide friendly, helpful assistant. And so just like that, in maybe a few minutes, I've typed in all of this information about the agent and what it does. And now I can just click run tool
here. It's going to take all of this information, run it through the prompt that I've written that bakes in the best prompting practices for AI agents from my experience and from the projects that we do at Morningside AI and also all the research that we've used to make those prompting practices. It's going to spit us out an AI agent prompt that we can throw straight into Agent, and it'll just glue everything that we've done together, tell it who it is and what it's trying to do, tell it how it's supposed to use the knowledge base,
and tell it how and when it's supposed to use those tools in order to reach its objective of capturing those leads for us via WhatsApp. And there we go. So, if we scroll down, we can see it's spat out this entire prompt. I'm going to change it to the raw text so we get all this markdown formatting included. We can view all here. I'm going to copy it all, and we're going to take it over to here and paste this in. And there we go. Act as Corner Cleaning WhatsApp support and lead generation agent. Engage
with potential customers on WhatsApp to provide potential information about our cleaning services. Answer FAQs, answer instant quotes when pricing inquiries arise, use the instant quote generator tool. Tools you have: this tool and this tool. Examples, I'm just going to cut that out for now, and then notes. So, that should be all good. We can start to give this a spin here. I am going to zoom out a bit. Alright, so I'm just going to publish this and make sure that everything is baked in the second, and now we can chat to it here. Hey, how's
it going? Actually, slide this across. I want to know where you guys are located. There you go. Connor's Cleaning is located at XYZ. So, it's obviously using the knowledge base correctly. And say, "What services do you provide?" And we're not asking about pricing, so it shouldn't go for the quote, or it might try to do it at the end. Yes. So, see, it's asking if you have any specific requirements, need a quote, just let me know. Yeah, sure. I'd like a quote. Boom. I need the property type and square footage. It's a house, and it's
1,000 square ft. So now the agent is trying to trigger that tool by taking the house and taking the 1,000 and then putting them into the relevance tool based on what the schema has told it about how to use the API. It's going to go grab that from relevance, send it back to us, and there we go. Here are the quotes for you. Ra, if you're interested in any specific further service and need assistance, just let me know. I can also help you with booking. Now here, I would probably change the prompt and make it
a bit more forceful and say, "Send me like, let's go to the next step right now." But for now, it's good enough. Um, we can say, "Sure, I'd like to book a deep clean." Now it should ask me for my lead information. Okay. Hugh Jackman is the name; the phone is Hugh Jackman, and the email is Hugh Jackman. We should be able to see if we go back to our handy-dandy Airtable here. Hugh is popping up here. Oh, bang! And Hugh Jackman is in the CRM here. It does say that it's booked. I would play
around with the prompt a little bit more to be like, "Hey, look, this is just setting up the next step for someone to call them and book in the service." But you can also do appointment setting through Agentive as well. Again, as I said, it's a little bit more advanced than what we want to do here. But as you can see, this is a very different way of approaching building agents because you tell it, you basically provide all of the ingredients, and you use that kind of chef's approach—the knowledge and the tools—and you connect it
all up and make sure the tools have well-described schemas so they know how to use it and when to trigger them. The knowledge base has been included in the prompt, and also the tools have been included in the prompt, telling it how and when to use it. It's really a much faster way of building agents from the high-level prompting, and then people are just asking and having sort of a free-flowing conversation with it. Okay. And just quickly, before we go to the step of putting it onto WhatsApp, which won't take long at all, I do
want to show you how you can debug. When you're working in Agentive, it's helpful to know when tools are being triggered and why. So, for example, if we go into the transcripts here and we look at this big transcript here with 14 messages that we just had—"Hey, how's it going, Ra?"—we can see here it's using the tools, and we can hover over it and we can see it's calling the tool with the URL. It's a POST method, and we can see the data here. I'll just zoom in on that. The property type and the square
footage that was sent away to relevance are here. So if you're having issues with your tools or it's giving weird responses, you can either come in here to the transcripts after the fact. So say maybe this is on WhatsApp, and something's going wrong or customers are getting upset. You can come into the transcripts here and pick through to see what's going wrong with the tools. And just like down here as well, the lead capture, we can see the name, email, and phone were all put into this request and sent away to relevance AI. And then
on to Airtable as a second step. You can also see the output as well. So the output of the tool is all in here. It's basically just giving us a confirmation back from Airtable that, yep, everything went well. And up here, you can see the output as the response with the deep cleaning estimates and stuff like that. You can see it a lot more easily if we say, "Hey, can I get a quote?" Okay, and if you give this a second, once it's finished generating, Agentive will then pop up this show usage, and bang! There
in the editor here, you can then debug. Okay, how many tokens are being used? How much is this costing? What was the model? Etc. And then you can see the tools input here: Apartment 500 ft, etc. And the output as well. So it's really easy to debug those tools while you're in Agent. Let's make sure that we've published this. I'm going to publish it again. In Agent, we do have version history. So if you do publish it and you want to roll back or look at how you had it set up previously, you can now
see that I've got two versions, V1 here, and I just took away this little full stop here, and you can see that that's changed the prompt. So you can update it over time. You can make edits within Agentive here and test, test, test. And then when you're ready to push that to production, and basically if we had this on a WhatsApp agent, and say I published this, connected it to WhatsApp, and it was working, and then I looked through the transcripts and something wasn't quite how I liked it, I could come in here and make
edits and then test, test, and then when I was ready to publish it, I'd click publish, and then it's going to push those live to the agent. So you're not going to mess things up by playing around with things on here. So the final step is, of course, to deploy it to WhatsApp. Go to the deploy tab here. You can then click connect WhatsApp. I'm going to click continue, get... Started. You will, of course, need a Facebook Business Manager to set up this integration fully. That's free with every Facebook account. So, if you haven't got
one already, I'll leave a link in the description so that you can set it up. It takes a few clicks. Then you will see this page here, and you can select the Business Manager you've created. In this case, I'll be using this testing one. Then you'll be able to set up a new WhatsApp Business account, which I can click here. I'll go next to set up a business account name. This is the display name for the business, and we're going to call this a retail business. Now, you need to provide the phone number that you
want to connect your agent to. Unfortunately, you can't have your own personal WhatsApp number and also have a business account running through it. So, you need to either buy another SIM card or borrow a friend's number who doesn't have WhatsApp, etc. In this case, I'll be using a spare number that I have. Then, they're going to send you a verification code to your number, which you have to enter in. After that, you should see the screen once you've successfully passed that verification. When we continue, it's verifying our information for a second, and now our agent
is connected to that phone number, and we're ready to give it a test. If we go finish here, there's one more thing that we need to do on Agentive, which is to click this. Yours may say "not registered." Don't worry; you can just click this checkbox here and click confirm. Give it a second to connect. Now we've successfully connected our agent to that WhatsApp number. Now, the thing here is this interval. If you're not sure what the interval is, you can read this tooltip here. If you're done with the deployment and you want to remove
it from that number, you can always come back and click "deactivate deployment" here. But all that's left to do now is to test our functionality. Right, so I have it connected to my phone here, and I'm just going to show you a little bit on screen of me creating this contact and having a message with it. For the number that I set up, I can create a new contact, and then I can send them a message: "Hey." You can see on screen here it says, "This is the business using a secure service from Meta." This
means this is a business account, as we've connected it through our WhatsApp Business profile that we set up before. There we go; we get a message back: "Hello, thank you for sharing your information. How can I assist you today? If you have any questions about cleaning service or need a quote, feel free to let me know." So, I can say, "Yes, a quote." Let's ask a question to the knowledge base: "Where are you based?" There we go; we are based in the Greater Boston area. It's giving me the correct location there. Now we can go
for the lead capture. If we say, "I'd like a quote," with the property type as "a house that is about 800 square feet," there we go; we're getting the estimations and our quote back. It's asking if we're interested in any of these services. I'd say, "Yes, I'd like the deep cleaning, please." Now, it should ask me for my contact information. There we go; so, "Liam," I mean, "Liam@mail.cool." Then we should see it appear over here on our Smith Solar CRM. And boom, there it is! So, we've got everything done. That is just one run-through of
using this WhatsApp agent. But as you can see, the messages don't come back instantly, so it feels like it could actually be a real human there replying, and it's giving just clear information right through WhatsApp. Imagine you're reaching out to maybe book accommodation or you're reaching out to a cleaning service like this, or you're reaching out to any kind of business, and you want some real information directly from what feels like a person. You also have the functions of getting a real quote. A great use case for this kind of thing is, say, barbers. If
you message a barber on WhatsApp, maybe you're in Europe or South America or Central America and you want to go to a barber, this is a common issue that I've run into when traveling. I want to message this barber, but I might not speak the language that well. If you message them in English, it will be able to handle that in English as well as in Spanish or Portuguese or wherever you are. This kind of functionality built through WhatsApp is a really great use case for you guys to pick up, which is why I wanted
to teach you guys about it. We can also go back to Agentive here, and if we go to our transcripts for this agent, we can see the one for today is here. So, 12 messages. You can go through the entire transcript, and you can see it's calling the quote tool here. We see all the information that went in and out of it, and then we see the Airtable lead capture information as well, input and output. So, that is how you use Agentive, my software for building these WhatsApp-based and other deployments as well. If we go
to the studio and we... Go to deploy; we have Instagram as well. So, via our mini chat template, you can hook into Instagram and do appointment settings and things on Instagram. You can go through Messenger if you want to run some Facebook lead ads to Messenger through voice flow as well. Telegram, Discord— we have integrations with everything you need as well. So, that's the end of this build. I hope you enjoyed it, and this is a super handy use case and deployment for your AI agents. Now that you understand how AI agents work and can
build them for yourself, let's talk about the most important part of this, which is actually making money with these skills. But first, we need to destroy a huge misconception: you don't need to build the next ChatGPT or create some revolutionary AI startup in order to make money in the AI space. The real opportunity is much, much simpler—it's just helping businesses to understand and implement AI. This is how I monetized my AI agent skills, and it has been the most explosive growth I've ever experienced in my career. The good news is, if you've made it this
far in the video, you are so much closer to being able to tap into this starving market for AI services than you think. But don't take my word for it; I'm just some guy on the internet, after all. Maybe you should listen to some of the world's most famous businessmen saying that this is the opportunity to get into right now. If I were 25 years old today in 2024, what would I do? What's a good sector to get involved in? What business would I get involved in? I think everything is looking at AI now in
a different way, and I think AI growth is going to be exponential. So, anything to do with AI—now, what could that be? In the simplest form, it is helping people use the technology. There's going to be a massive amount of people wanting to use it who don't know how to, and they're willing to pay to solve that pain point. So, is that consulting? Not really. It's implementation and execution. You're helping a business make that transition into a world where they're controlling their data and getting information from it. Now, the majority of businesses in America, for
example, are between 5 and 500 employees, so they're small businesses. They create 62% of the jobs. They want to use AI; you should help them solve for that, and they'll pay you. Even another shark, Mark Cuban, is saying the exact same thing: that the biggest opportunity right now is helping these small to medium-sized businesses who don't understand AI yet, but desperately need it to keep up. And they're absolutely right. If we look at the data, it's pretty obvious. According to recent data, there are 1.7 million businesses in the US alone that are making between $500,000
and $10 million per year. These are small businesses, which, as Kevin O'Leary says, make up 62% of the jobs in the USA. They want to use AI; you should help them solve for that, and they'll pay you. These businesses know they need AI to stay competitive, but they don't have the time to learn it themselves. And there's basically no one there to help them. All of the big consulting firms are looking at other big businesses, leaving these smaller businesses completely ignored, but they still make lots of money and have a lot of money to invest
in these kinds of services. Basically, all small businesses are starving for some kind of AI services—either education services to help them understand what AI is in the first place and why they might need it, consulting services where you help them identify where AI can help in their particular business, and, of course, implementation services where you help them build and maintain the AI systems, like the AI agents we've just built. Based on the data collected in my community—we are the largest AI business community on the planet right now—for every person or agency currently offering AI services,
there are over 1,100 businesses in the USA alone that need help. So, that's a 1 to 1,100 ratio, which means this is a completely untapped market. That's where people like you and I come in, helping these hardworking small business owners understand AI and implement it so that they have a chance to keep up. And that's really what drives me and the team at Morningside, because our company vision is a world where the benefits of generative AI are distributed as fairly as possible, helping people like me, you, and small business owners, rather than just all going
to these giants at the top. This whole concept of selling services around an emerging technology is nothing new. We saw the exact same pattern when the internet first came out. Companies that helped businesses adapt to the web and get online made fortunes—think Agency.com, Razorfish, etc. I spotted this opportunity within the AI space in 2023 when it wasn't anywhere near as clear as it is now. No one really knew how to make money out of this stuff. Then I started Morningside AI, and since then, we've generated over $5 million by selling these kinds of AI services:
education, consulting, and implementation. We're literally still only just getting started. The best part out of all of this is that, as we've proved in this video already, you don't need to be a technical genius to understand AI, and even to build AI agents. You just need to be one step ahead of the businesses that you're going to be helping. So, let me show you the three specific ways that you can start making money with your AI agent skills. As I said, there are basically three types of services that you can provide to businesses in order
to monetize your skills. Firstly, there's education, which involves teaching businesses about AI, running workshops, doing presentations, training their teams, and creating courses for them to watch. Businesses are desperate for someone who can explain what this stuff is in simple terms and, more importantly, what it can do for them. After watching this video—and probably my other huge video that I did on AI agents, which I'll link down below—you will know more than enough to start educating businesses on AI and AI agents. Secondly is consulting. This is where you analyze a business's operations and show them where
AI can help them save time or make more money. You're essentially being their AI strategist. For example, you could go into a business and recommend something like the sales co-pilot system that we just made in order to help their struggling sales department. And third is implementation. This is where you actually build and deploy AI solutions for businesses. Or, better yet, like my agency, you can do all three of these, but it did take us two years to get here. So there is really no rush. You just pick where you want to enter and work your
way up to doing more and more if it makes sense. Believe it or not, there are people with only a few months of experience in the AI space selling all of these right now. The demand from businesses is increasing insanely fast. We're seeing this at Morningside—just so many more businesses reaching out. But here's the thing: you have one small problem, and that's that you don't quite know enough to start moving on this. You are close, but you're not quite there. The way to make money in the AI space—or with any services, really—is to create a
knowledge gap between yourself and the people that you're helping. Your knowledge gap is your money maker, and businesses will pay you in proportion to how much more you know about AI agents and their business applications than they do. Now, while this video has taught you a lot, your knowledge gap is still small. But we can fix that. So let me break down exactly what you need to do next in order to extend your knowledge gap to the point where you can start making money. We can call this video step one. As long as you've taken
notes and followed all the tutorials, building the agents alongside me, you're already ahead of most people who have no idea about what agents are, how they work, or how to build them. So it's a big step forward with this video. But step two is building even more experience with AI agents, so you are more familiar with the platforms and better understand the different ways that they can be used to deliver different kinds of AI agent use cases or even just AI tools in general. I've only really given you a taster here, but I tried to
make it as diverse as possible, as you could probably tell. In order to do this second step of extending your knowledge gap further and building more experience, you can go to my free course on School, where you'll be able to build another five to ten agents following the tutorials that are in there for you. The link to join my free school will be in the description. If you blast through all those tutorials, this is going to further expand your knowledge gap. And remember that the more you know compared to the businesses that you're trying to
help, the more they're going to pay you. So step two is building a few more agents and getting a bit more experience on the tools, seeing different use cases, etc. Once you've done that, you'll have what I call foundational knowledge. You will understand the core AI concepts that we've gone through in this video. You can build basic solutions on these platforms. You know what's possible for businesses with agents right now. And then comes the big decision: do you want to go deeper technically on the building side of getting your hands dirty, or do you want
to start monetizing what you already know? As we've covered, the building and implementation of the AI systems is only one of the services that you can sell. Naturally, the technical skills needed to make money in implementation services—actually building these systems for businesses—are much greater than just having a foundation. But with a good foundation, you're ready to start having a crack at the other two services: AI education and AI consulting. So the decision of what to do next comes down to really knowing who you are and what you are truly interested in. This may sound all
woo-woo, like, "Oh, you got to know yourself and stuff," but I mean it very seriously. If I use myself as an example, I've always loved making things, right? I used to build block houses with kids, brew beer with my grandpa, and I've always loved tinkering with engines. When I hit this foundational level that you guys will be at after completing those extra builds in the free course, I kind of naturally dove deeper into the technical side and into building more stuff. I kept building more and more complex AI systems and building upon those skills. that
I’ve built already, which led me ultimately to starting Morningside AI, where our first service was building AI solutions and systems for clients. But here's the thing: of course, a lot of people aren't like me. They don't get as much of a buzz out of building things. Many of you are going to be much better or enjoy more the teaching aspect or working with people and doing the consulting aspect rather than building stuff. So, in these cases, using the foundational knowledge that you're going to build up to sell AI education to businesses or AI consulting makes
a lot more sense. It goes back to the whole Einstein thing about judging a fish on its ability to climb a tree. If, to you, the building is like a tree and you feel like a fish, and it's not a really good fit, then there's better stuff that you can do, and you can find a way to make money in the AI space that leans more into your strengths. Like, in the case of a fish, it would be swimming, right? So, by being honest with yourself and saying, "Hey, look, that's not really me. Yeah, sure,
I did get it done. I know how that works now, but I don't feel any kind of attraction to doing more of that." While you may see that as a negative, saying, "Oh, I don't have what it takes," it can actually be very empowering if you say, "Bang, I'm stopping it here. I'm stopping the learning. I'm stopping the procrastination. Now, I'm going straight into actually monetizing." It's basically putting a stop on this long learning phase and saying, "No, action starts now. I'm never going to get there, but with this base, I can do a lot,
and I'm going to start taking action with it and making money with it today." So, this self-reflection is what prevents you from getting stuck in an endless learning phase of procrastination when you could be out there making money. So, in summary, the two routes you have and the two options from here are, if you love building and you naturally feel like you want to learn more, like I did when I was at your stage, then just keep going. Go and watch the free course tutorials on my school, and then start going and building your own
projects and ones for friends and family, and whatever you feel drawn toward naturally. Within two to three months, you'll have enough skills and experience to start selling implementation properly. But on the other hand, if you haven't fallen in love with the building aspect, then it’s probably best that you just go into the free course, complete the rest of those tutorials, and finish your foundation, and then just get started on monetizing your skills, either through selling AI education or through selling AI consulting. Once you're clear on what kind of AI services you want to sell, getting
your first few clients is actually pretty straightforward. People try to overcomplicate it, but there are really just two main ways that I'd recommend you do this based on all the success I've seen over thousands of people across my free and paid communities. The first and by far the easiest method is through your warm connections or warm contacts. This means reaching out to people that you already have some kind of relationship with, whether they're friends or family or acquaintances, or even friends of friends that you've met once, kind of thing. All of these people count as
warm connections. So instead of trying to convince complete strangers to trust you with your business, you can start with people you already know or have some previous relationship with and therefore have an increased level of trust with you through that relationship. I've covered this many, many times on the channel before. So, on the school post for this video, I will add in my complete guides for warm outreach, including resources directly from my AAA accelerator program. The second way is using what I call the community content flywheel. This is how you can build long-term momentum beyond
just warm outreach. Here’s how it works: you join the free school community, and you start making content about what you're learning at each stage. This could be through YouTube tutorials, which worked for me, LinkedIn posts, or whatever platform you really prefer to create content on. But here's the key: you share that content back into the community. With over 120,000 members, by posting into the community, you get an instant audience of people who are really interested in the stuff you’re talking about. A perfect example of this is a guy called Rory Ridges, a young man from
the UK who joined my free community and basically followed this exact process that I’ve outlined in this video so far. He took my free course, learned all the basics, built his foundation, and then started posting simple tutorials on relevance AI, which you've seen used in this video already. He literally just started sharing what he’d learned from my videos and making other videos about it. At the start, he was just sharing what he’d learned from my videos. He’d watch a video, then go and create his own video on the same sort of topic. Every time he
made a tutorial, he’d share it in the community, and the community would watch it, give him feedback, and subscribe to his channel. This not only helped him grow faster on YouTube, but it also helped position him as an expert in the community. His authority in the AI agency space is growing by gaining more momentum on YouTube. Now, his YouTube channel brings him in enough leads to support his growing agency. I've recently seen him in the community saying he's hiring, which is usually a good sign that he's making some money off the back of it. He
basically started the same flywheel that took me from zero to where I am now—over $5 million in revenue generated across all my businesses and 450,000-plus subscribers in just two years. The community gives you an audience, and the content gives you credibility; together, this method brings you clients. In the resources for this video on School, I will leave links to my complete guide for creating content to generate leads, just like Rory and I have done successfully. Of course, I'll include a link to Rory's channel in the resources in the School community. Now, the really important thing
to note about both of the methods we've just talked about—the warm outreach and the community content flywheel—is that both of these methods start with giving value first. Whether it's helping your warm connections understand AI or sharing your knowledge through content, you have to give before you start to get. I know all of this business stuff may feel a little overwhelming or out of reach for some of you, but you'll seriously be amazed at what baby steps add up to in the AI space. You've already taken the first step by watching this and following through to
the end of the video, so congratulations on that! I seriously want to give you a pat on the back, and you should give one to yourself. But all you need to do from now is keep this momentum going. The next step for all of you is pretty clear: you need to jump into the free community. That's by far the best place if you're moderately interested in doing any of this. My community is the number one place to go. It is 100% free to join, and once you're in there, drop an introduction post saying who you
are, what you're about, and why you want to do this. Then, start working your way through my free course material. I've poured everything I've learned about AI and AI business into videos like these, and on the free course, they're all there in a nice sequence for you to work through on School. Each time you complete a video and finish the tutorial, you can click the little checkbox so you can keep stacking those small wins and baby steps toward AI literacy and succeeding in the space. All of the resources mentioned in the selling part of this
video will be on the School post for this video. So, you go into School, head to the YouTube Resources tab, and this video will be right there. Don't forget to check all those out. Of course, all of the resources for the tutorials, if you haven't already done them, are included on those posts as well. Finally, if you made it this far, could you please do me a favor? Leave a like on the video and drop a comment down below. Let me know what you liked the most and what you want to see more of. Click
the share button and send it to your friends, family, and loved ones so they can start learning these skills, too. All of these actions really help my video reach more people in the YouTube algorithm. If you subscribe to the channel, you'll be able to see a lot more content like this, helping you understand AI and more importantly, how to build businesses around this incredible opportunity. If you're still hungry for more and want to watch my complete guide to building an AI business, that's going to be linked up here. But that is all for the video.
I'm so excited for you to get cracking on this! I sincerely hope you've gotten something out of it because I put a lot of work into it, as did my team. So, I'm wishing you all the best. I'll see you in the next one!
Copyright © 2025. Made with ♥ in London by YTScribe.com