1. Types of AI Agents🤖 - SCAI017
Sloup
1 follower
12 Video Views·Sep 15, 2025
Nate Herk - AI Automation Society Plus\3. Depp Dive Building AI Agents\3. AI Nodes\1. Types of AI Agents🤖 - SCAI017
All right, so let's talk about the actual agent itself.
So when we come in here,
let's add a chat message trigger real quick
so we can add an agent to it.
And we have advanced AI, got different options here.
AI agent, open AI, you've got different chains you can use,
text classifier, all this kind of stuff.
So we're gonna grab an AI agent, of course.
And so from here, first thing to note
is that we have different options
as far as the actual agent we wanna use.
There's six options, tools, conversational, open AI,
plan and execute, react, and SQL.
And so full transparency here,
I pretty much only ever use tools and conversational.
A few times I've been able to get my workflows
to actually work better with a plan and execute
compared to a tools.
But we're gonna go over them at a high level.
They're all a little bit different
with the way that they work
and sort of their prompting and their options.
So we'll cover that.
But before I dive into that,
I just wanted to throw out there.
Tools, always what I go with first.
If maybe I'm making some sort of chatbot
or interfacing agent, I might go with conversational,
depending on how many tools are hooked up.
But tools works most of the time.
And then sometimes if tools isn't working right
and I wanna maybe switch it up,
I'll try a plan and execute or potentially react,
but mainly plan and execute.
I haven't done too much with reacts.
But this just goes back to that aspect
of when you're creating a project
or when you're delivering on a project,
at the end, you've got sort of like you're 80% there
and then bridging that gap between 80% done
and then 100% production.
That last 20% is really tough
when it comes to so much back and forth.
Testing out tons of different inputs,
testing out different models, of course,
like large language models.
And then we're testing out different types of agents.
And then we're testing out different prompting
based on what we get back from the agents
and the way that we see their logs.
So testing out, switching up the different agents
at times is helpful.
But one thing to note, if you have a system message,
if you have a system message and then you switch the agent,
the system message goes away and you lose it.
So copy that before you switch.
Anyways, tools agent.
So the purpose is a general purpose agent
that has various tools
and you're gonna define what those are
and it's instructions of when to use each one,
what the tools do, how it can ultimately achieve
the end goal that you're looking for here.
Like I said, most of the time,
I'm gonna start off with a tools agent
and only switch if I notice that I need to.
Best when you have the agent has access
to different APIs, different tools,
different agents that you built out as workflows,
different workflows that you built out as tools,
that kind of stuff.
And yeah, as far as getting them to work right,
it really just comes down to effective prompting here,
obviously within the system message.
So one thing to understand is the difference
between a system message and a user message.
So I'm not, I think this may be newish
that they threw this in here,
but it's, you know, so the system message
is where you actually prompt the agent
as far as, you know, your helpful assistant.
This is your, the context of the situation you're working in.
This is your goal.
These are the tools you have.
This is when you use each tool
and then here are some examples of, you know,
user messages you may get and then outputs
or the steps that you should take then
and then some outputs like that.
That system message is kind of, you know, more defined.
It's like the persona of the agent
and then the user messages are
what comes in every interaction
every time you chat to the agent.
You know, if I said, let me just quickly connect a model.
Hello.
Okay, yeah, we're good.
If I said hello, we can see in here
that's the user message coming in is hello
and helpful assistant is still your helpful assistant.
So that's a quick difference.
Let's move on to conversational.
This one is gonna be used for more handling
like human-like natural conversation.
That's why it's called conversational.
You maybe, you could optimize this
for chat style interactions
because, you know, it's obviously gonna remember context
and not that other agents can't remember context
but this one's gonna be more conversational.
So if you're building like some general conversational
things like chatbots or customer support,
answering FAQs, conversational user interfaces,
definitely consider testing out a conversational agent
but keep in mind, maybe the more tools you add on
you could wanna try to go back to a tools
or a plan and execute.
One thing to note here is that we have a different option.
We have a human message.
We have a human message and also we lost an option
which was like pass through binary, pass binary images.
So that's one of the changes there.
So we have a human message now as well as a system message.
So let's look into here real quick.
The human message says,
now here are the tools that the assistant can use.
The assistant can use these tools to look up information
to answer the user's original questions.
So this could be, you know, like your database of FAQs,
product information, give it some instructions here.
And then it's interesting because we're also gonna be
feeding in the user input to this conversational agent,
you know, even though it's kind of getting in here
but I guess now we're defining what it is.
So, yeah, so that's an interesting aspect
but then of course we have our system message
which is more of the, you know, normal system message,
what the assistant does, what it's designed to do,
current and constant learning and improving.
It's able to generate its own text
based on the input it receives.
Overall, powerful system that can help
with a wide range of tasks.
So that's sort of the system message here.
Yeah, so conversational agent could be better
test out with human-like conversational aspects.
OpenAI functions agent.
So I've only played around with this one a little bit.
It's got the same options as the tools agent
except for not the binary images part
but system message and max iterations,
return immediate steps.
So from here, when you would wanna use
an OpenAI functions agent,
if you wanna utilize OpenAI's ability
to execute predefined, those predefined functions,
those dynamic OpenAI functions
because obviously this agent's gonna take advantage
of those function calling to trigger specific operations,
obviously, of course, based on the input
that you're getting from user.
Okay, now going on to a plan and execute.
So this is an interesting one
because, you know, this is kind of designed
for more high-level tasks that have multi-steps
of reasoning and planning and then executing.
Executing, executing.
Capabilities of this agent is that
it's going to sort of break down
the main query coming in.
It's gonna understand the tasks,
break them into smaller subtasks,
and then sort of go in a logical order.
So with the video that I just made
where I did, like, I built like a research team
to do newsletter automation,
this could have been a good use case
to use a plan and execute agent.
I just ended up wanting to do a sequential
because it made more sense
because it happens in the same order every single time,
but it had a logical flow.
It had a logical order as far as,
okay, once the form comes in,
we got a newsletter expert that creates
the table of contents based on initial research,
hits it off to the project planner.
Project planner hits it off to the research team.
Research team sends it to the editor.
So that's sort of like a logical linear flow
with something like more of a personal assistant.
Hey, can you grab my events for today?
Send an email to Mark and then do this.
Sure, maybe the logical flow is the order of the query,
but sometimes it's different.
I don't know if you're looking up contact information,
but it's just much more variable
as far as the tools that it has
rather than kind of every time you're gonna do this flow.
So I don't know if this would be hooked up
to something like the trigger here could be
every time a row is updated in CRM
or a new lead comes into the CRM.
And then there's gonna be sort of like,
okay, well, we get a lead.
What do we do with it?
We do this and then we push it into here
and then we send an email and then that kind of stuff.
So I say that because you don't actually
give it really like a prompt.
So here's all that we have.
The only option is a human message template.
As you can see, I clicked add option
and this is the only one that popped up.
So we've got previous steps
and then you have the previous steps.
And this isn't anything that we really touch.
I mean, you can,
but whenever I've tried to sort of fill out some information
and give more detail here,
it just doesn't work as well.
So I would pretty much just like kind of add option
and then leave it when I was testing out with these agents.
But anyways, this is kind of like,
as you can see here, agent scratch pad.
So this is almost more for like the agent
to be able to reference as it's going through the process.
It's like its own sort of like internal log
where, hey, this is what I'm currently doing
because of this is my current objective.
This is what I just did.
And then here's like what I'm gonna do next
based on the tools and their descriptions
and the input that I got.
So yeah, that's pretty much how this one works.
Like I said, I usually don't start here,
but I start with the tools.
And then if I am getting frustrated,
maybe I'll try a plan and execute.
And then these last two, I haven't used too much,
but React, the purpose is like,
they say it's supposed to be sort of
for like a reasoning framework
where the agent reacts to the inputs
and decides the next steps autonomously,
which I kind of also think the tools agent is the same thing.
And as you can see, it's got a few different,
what's it called?
A few different ways that you prompted in here.
And that's why I don't use it
because we don't have like a general system message.
We've got the human message template.
We've got a prefix message,
which it says answer the following questions
as best as you can.
You have access to the following tools.
You get a suffix for the chat model,
and then you also have a suffix message
for the regular model.
And then finally, you know, return the eight steps.
So this is why I haven't played with it too much.
It just seems like a lot to put in here
when a tools agent can get the job done
with just like kind of one refined system prompt.
Maybe these are a lot more powerful
if you really understand like how exactly
to put in these different suffix messages
and prefix messages.
So something I should play around with,
but so far, I mean, everything has been working
with tools and plan and execute.
So that's the React.
And then we obviously have SQL,
which is, you know, kind of obviously designed
to interact with SQL databases.
As you can see, you connect a different source,
Postgres, MySQL.
Haven't done much for SQL Lite.
Connect your account.
And then, you know, you obviously have
to define your input once again.
And then you have different ways
you can, you know, add some options in here
as far as like schemas that you're gonna be looking at,
what to pull back, what to not.
Once again, we have a prefix prompt
and a suffix prompt, and then we have a limit.
So in here, we can see what the prefix prompt is.
You are an agent designed to interact
with the SQL database with, okay,
I guess maybe they want you to pronounce it an SQL
because it is N, but I typically just say a,
or not a, I just typically say SQL
rather than SQL, a SQL, okay, anyways.
Given an input question, creatively,
or create a syntactically correct query to run
and look at the results of the query
and return the answer.
Do not make up any statements.
If the question does not seem related
to the database, just return, I don't know.
So, you know, you've got this, right,
but you could also just kind of create
a natural language to SQL processing agent.
I'm not sure if that's better or worse than this.
I think that the, maybe there's just some sort
of base prompts already put in here about,
hey, like you are always kind of like a SQL.
I mean, it's nice, you've got your data source
really nicely integrated in here
and some other predefined options.
So that's sort of the use case of when you do that.
So those are the six main types of agents
that are in here.
Like I said, 90% of the ones I do are gonna be tools,
play around with conversational,
and then if you maybe are not getting the tools
the way you want it to, and you can see,
it's like a nice logical flow of what's going on
with your tool call based on the input,
maybe try out plan and execute,
but just keep in mind that they're all kind of different
and that they have different ways that you configure them.
So yes, it's nice to understand high level
what they each do, but ultimately based on the use case,
you may have to just run it five times as a tools,
run it five times as a conversational
and just see what outputs you like better
and see the way that it took place in your execution logs.
So that's gonna be it for this one.
We'll keep diving into more about the actual agent
configuration and stuff like that, so.
