WEBVTT

00:00.040 --> 00:01.400
Well, this is good news.

00:01.400 --> 00:03.440
You've you've decided to come back for more.

00:03.480 --> 00:06.280
You weren't put off thoroughly by what we did yesterday.

00:06.320 --> 00:07.600
You're back for more.

00:07.640 --> 00:08.520
Welcome.

00:08.520 --> 00:10.000
Welcome to week one.

00:10.040 --> 00:10.720
Day two.

00:10.880 --> 00:13.920
Now, look, I am a a learning by doing type.

00:13.920 --> 00:18.760
The way that that I like to teach is the way that I like to learn myself, which is by going in there

00:18.760 --> 00:20.640
into a product and using it.

00:21.080 --> 00:23.200
But today is a little bit of an odd one out.

00:23.200 --> 00:26.200
Today it's going to be more talking than usual.

00:26.240 --> 00:31.200
I'm going to be giving you some foundational, some some basis for everything that is to come.

00:31.200 --> 00:36.440
We're going to be talking about Agentic, AI and also some of the constructs around ten, but there'll

00:36.440 --> 00:38.400
be a bit of doing as well, never fear.

00:38.640 --> 00:39.840
Let's get started.

00:39.840 --> 00:42.560
Let me tell you more about Agentic AI.

00:42.880 --> 00:47.200
Okay, so diving right in the first topic is AI agents.

00:47.200 --> 00:49.400
Before we go back to Na ten again.

00:49.760 --> 00:52.200
And this is a quick recap of what we already said yesterday.

00:52.200 --> 00:55.240
There are so many ways to define an AI agent.

00:55.240 --> 00:59.360
It's almost become a joke, but some of the the ways that are most common.

00:59.360 --> 01:06.730
Originally, companies like OpenAI described it as systems that can work for you independently, like

01:06.770 --> 01:11.010
the operator agent now GPT ChatGPT agent.

01:11.170 --> 01:18.290
And then there came this this emerging definition, which was about AI systems, where an LLM decides

01:18.290 --> 01:19.570
what to do next.

01:19.610 --> 01:25.170
It generates content and that content describes, hey, let's do A and then B, and then C, or maybe

01:25.210 --> 01:31.370
we should do A and then C and then b, and that, that, that is the output that comes from calling

01:31.370 --> 01:32.170
an LLM.

01:32.170 --> 01:34.930
And we interpret that output and say okay that's what we'll do.

01:35.010 --> 01:41.410
So that idea, that concept where an LLM decides the order of activities, orchestrates the workflow

01:41.530 --> 01:43.650
that became the working definition.

01:43.650 --> 01:50.210
But more recently it has become this idea that that an agent is where you have an LLM running tools

01:50.450 --> 01:52.450
in a loop to achieve a goal.

01:52.730 --> 01:56.570
Okay, let's let's go deeper into agent K.

01:56.730 --> 02:00.890
There's a lot about Agentic AI that feels kind of magical.

02:01.330 --> 02:08.470
But sitting behind all of that, the reality of Agentic AI is actually something that's quite pedestrian.

02:08.670 --> 02:16.230
Most of the magical stuff in AI just comes down to writing good prompts to llms.

02:16.710 --> 02:19.990
The prompt, of course, is just what we call the input.

02:20.030 --> 02:24.270
The text that's sent to an LLM and LLM, a large language model.

02:24.270 --> 02:31.390
As we said, it's this this data science piece of of this algorithm, this bit of statistics that takes

02:31.390 --> 02:34.030
an input and it generates an output.

02:34.030 --> 02:39.790
And the way that it, that it does that is by trying to figure out what's the most likely thing to come

02:39.790 --> 02:44.350
next after this input and this input, we call the prompt.

02:44.550 --> 02:49.390
And when you actually call one of these llms, every call is stateless.

02:49.430 --> 02:51.750
It takes that input, it generates the output.

02:51.750 --> 02:53.630
It doesn't know how it was called before.

02:53.630 --> 02:56.310
It's been called by all sorts of people around the world all the time.

02:56.310 --> 03:01.950
If it's like GPT, it gets an input sequence and it generates an output sequence based on it.

03:01.950 --> 03:05.070
And what we can do with two things that we can do.

03:05.110 --> 03:10.360
We can decide what input to send it, and we can decide what we're going to do with the output.

03:10.360 --> 03:16.040
And most of our genetic AI is about those two activities getting the right input and interpreting the

03:16.040 --> 03:16.640
output.

03:16.680 --> 03:18.120
And that's really it.

03:18.160 --> 03:23.280
Now, I imagine many of you know this already, but typically this input sequence, this input text

03:23.280 --> 03:26.440
that goes to an LLM consists of a number of different parts.

03:26.680 --> 03:30.320
It often starts with something called the system prompt.

03:30.360 --> 03:34.840
And the system prompt is a bit of text that gives the overall context.

03:34.880 --> 03:36.120
It sets the scene.

03:36.120 --> 03:41.800
It tells the LLM what role it's playing, any background information, any style that it should respond

03:41.800 --> 03:42.200
in.

03:42.240 --> 03:44.720
That's that's in the part that's called the system prompt.

03:44.720 --> 03:47.920
And then often after that comes a user prompt.

03:47.920 --> 03:53.920
And that is the specific message which the LLM should respond to in the content it generates.

03:54.160 --> 03:57.880
And you can also have in there the whole conversation so far.

03:57.920 --> 04:00.480
The original user prompt that was like hi there.

04:00.920 --> 04:07.040
The llms response to that, the next user prompt, another response, and finally the user prompt that

04:07.040 --> 04:08.360
it's now responding to.

04:08.520 --> 04:11.650
All of that can go in this one input sequence.

04:11.970 --> 04:18.050
And this works well because when we trained this LLM, when it was given tons of data to analyze so

04:18.050 --> 04:23.050
that it can match patterns in the future, that data was given to train was organized this way.

04:23.090 --> 04:27.890
Typically with this system prompt at the start and then user and an assistant response, another user

04:27.890 --> 04:28.490
message.

04:28.490 --> 04:36.010
And because it's seen lots of data in that format, it's good at generating coherent outputs that sort

04:36.010 --> 04:38.090
of adheres to this structure.

04:38.090 --> 04:41.850
And that's why it works so well, because the training data was organized that way.

04:42.210 --> 04:51.090
And I mentioned this before, but the the key is that we get to decide how to organize that input data,

04:51.090 --> 04:58.010
and we can do all sorts of tricks to it to make it most likely that what the LLM generates, the outputs

04:58.010 --> 05:00.930
that it's pattern matching decides are the right outputs.

05:01.130 --> 05:07.090
It's going to be consistent with our business objective, so we can come up with clever techniques that

05:07.090 --> 05:11.730
we will go through to make it more and more likely that we'll be able to get the right kind of output.

05:12.010 --> 05:17.740
And when I say the right kind of output, we can choose how we interpret that output, and we can interpret

05:17.740 --> 05:23.780
it in different ways at our whim so that it can achieve something, something cool that we want to do.

05:24.140 --> 05:28.580
As I say, I gave the example before that the input could say something like please respond with what

05:28.620 --> 05:30.020
order I should do things.

05:30.020 --> 05:34.620
And then the output might be you should do things in this order, and we can interpret that and use

05:34.620 --> 05:37.980
that to then execute other steps in a process.

05:37.980 --> 05:42.900
In other words, we're treating this text output as if it's controlling a workflow.

05:43.260 --> 05:49.980
So this idea of deciding how we will use this input and how we will interpret the output, this this

05:49.980 --> 05:53.900
is really the sort of secret sauce that makes up a genetic AI.

05:54.100 --> 05:56.700
It all comes down to clever prompting.

05:56.700 --> 05:59.660
And sometimes people have have changed the language a bit.

05:59.700 --> 06:02.820
In the old days we used to talk about prompt engineering, which is a bit old hat.

06:02.860 --> 06:06.500
Now, the idea of figuring out the best way to prompt an LLM.

06:06.700 --> 06:13.340
The new term is context engineering, which is about how best to set up this context in what gets sent

06:13.340 --> 06:18.200
to the LLM to really position it to achieve our business objective.

06:18.240 --> 06:19.480
That's what it's all about.

06:19.800 --> 06:26.680
So most of the magic behind the sky can be explained with five tricks.

06:26.800 --> 06:29.480
Five conjuring tricks that we use.

06:29.680 --> 06:35.280
That's all built around how we prompt and a little bit of how we train LMS.

06:35.560 --> 06:42.480
And then I also want to mention a trap, which is a common pitfall, a common mistake that people can

06:42.480 --> 06:43.880
make with their genetic AI.

06:44.080 --> 06:49.640
And so the five tricks that we will cover there is something called the illusion of memory, which is

06:49.640 --> 06:52.280
a fairly simple one that probably many of you know already.

06:52.480 --> 06:56.800
There's the thinking and reasoning idea and reasoning budgets.

06:57.080 --> 07:02.720
There's chaining LMS together, there's the use of tools, what it is and what it's not.

07:02.720 --> 07:07.600
And then there is the famous agent loop and then the trap.

07:08.040 --> 07:10.200
The trap is what I call the human trap.

07:10.360 --> 07:13.720
And you may not know what on earth I'm talking about, but we will get to it.

07:13.720 --> 07:18.920
Let's let's now cover the five tricks and the one trap of a genetic AI.
