WEBVTT

NOTE Sentence-level transcript of https://www.youtube.com/watch?v=Sir59K8ZDPU

NOTE One cue per sentence. Cue ids are the line anchors on /transcripts/Sir59K8ZDPU.html. A cue ends where the next begins, or 2 s after its last word.

s1
00:00:01.309 --> 00:00:03.309
[music]

s2
00:00:12.880 --> 00:00:15.240
Um, okay, we're going to launch here.

s3
00:00:15.240 --> 00:00:17.520
So, my name is Frank Coyle.

s4
00:00:17.520 --> 00:00:21.280
Um, I'm I'm an educator and teaching at Berkeley now.

s5
00:00:21.280 --> 00:00:26.800
I've been doing this computer science stuff for oh, 30, 35 years.

s6
00:00:26.800 --> 00:00:28.165
And um

s7
00:00:28.165 --> 00:00:28.360
[snorts]

s8
00:00:28.360 --> 00:00:34.040
I'm intro and right now it's kind of a critical time for uh poor computer science students.

s9
00:00:34.040 --> 00:00:36.720
Used to be the used to be the only game in town.

s10
00:00:36.720 --> 00:00:40.800
Degree was a guaranteed job, and now thanks to AI, it's not.

s11
00:00:40.800 --> 00:00:43.440
But then again, 5,000 people are here.

s12
00:00:43.440 --> 00:00:48.000
So, AI and and agents are um seem to be the way to go.

s13
00:00:48.000 --> 00:00:54.720
So, the question is how do we leverage this new universe that we are moving quickly into.

s14
00:00:54.720 --> 00:01:00.680
And so, I want to talk about how agents and ontologies will big word fit together.

s15
00:01:00.680 --> 00:01:09.680
But before you do before I do that, I wanted to um wanted to give you my uh my educational philosophy.

s16
00:01:09.680 --> 00:01:13.320
And this comes [clears throat] from uh someone called Sister Corita Kent.

s17
00:01:13.320 --> 00:01:19.840
And it was made popular by John Cage, who is a uh an avant-garde musician.

s18
00:01:19.840 --> 00:01:23.360
And you got to think about this little bit.

s19
00:01:23.360 --> 00:01:25.480
Nothing is a mistake.

s20
00:01:25.480 --> 00:01:26.960
There is no win.

s21
00:01:26.960 --> 00:01:28.280
There's no fail.

s22
00:01:28.280 --> 00:01:30.280
There's only make.

s23
00:01:30.280 --> 00:01:33.360
And more and more today, that's what's important.

s24
00:01:33.360 --> 00:01:38.640
Get down and make stuff, and that's how you're going to learn, not by necessarily reading.

s25
00:01:38.640 --> 00:01:41.440
I'm also a big fan of writing.

s26
00:01:41.440 --> 00:01:43.400
My early career was in neuroscience.

s27
00:01:43.400 --> 00:01:50.960
I'm kind of coming back into it now that Agent AI is bringing uh kind of cognitive science back.

s28
00:01:50.960 --> 00:01:53.120
But engage your senses.

s29
00:01:53.120 --> 00:01:54.280
Get a notebook.

s30
00:01:54.280 --> 00:01:56.960
Get a pen, a pencil.

s31
00:01:56.960 --> 00:02:00.040
Draw pictures, write stuff down.

s32
00:02:00.040 --> 00:02:06.240
Just don't type because when you type you when you're typing your brain is thinking about the letters on the keyboard.

s33
00:02:06.240 --> 00:02:16.840
When you're writing in a book, your whole brain, your your whole all your all your sensory systems are engaged and you're going to learn faster that way.

s34
00:02:16.840 --> 00:02:18.360
Okay.

s35
00:02:18.360 --> 00:02:20.800
On to our talk.

s36
00:02:21.560 --> 00:02:22.600
Agents and ontology.

s37
00:02:22.600 --> 00:02:27.920
So, there are two lineages here and I want to talk about both, give you a little philosophical background.

s38
00:02:27.920 --> 00:02:32.160
Um agents, when did we start talking about agents?

s39
00:02:32.160 --> 00:02:36.240
Well, goes goes back to the early initial days of AI.

s40
00:02:36.240 --> 00:02:43.360
People like John McCarthy, uh uh uh uh uh Selfridge, Marvin Minsky, Society of Mind.

s41
00:02:43.360 --> 00:02:55.400
People started thinking about the fact that this new computing technology was going to lead us into some kind of artificial intelligence, which is a term that came in 1956

s42
00:02:55.400 --> 00:03:00.800
when all these characters got together and tried to figure out where the future was going.

s43
00:03:00.800 --> 00:03:01.360
Okay?

s44
00:03:01.360 --> 00:03:09.400
And the concept of an agent finally evolved, things that perceive and decide and then act and that's what we're seeing now.

s45
00:03:09.400 --> 00:03:10.680
Now, what about ontologies?

s46
00:03:10.680 --> 00:03:13.880
Well, it turns out ontologies are not that new.

s47
00:03:13.880 --> 00:03:14.200
Okay?

s48
00:03:14.200 --> 00:03:22.160
It was actually Aristotle who first came up with the concept of we need a philosophy of of being.

s49
00:03:22.160 --> 00:03:23.720
Like, whoa, kind of heavy.

s50
00:03:23.720 --> 00:03:33.560
Um but came up with categories of being and this kind of relates to what people are doing now with graph databases and knowledge representation.

s51
00:03:33.560 --> 00:03:36.720
And there are a couple of other people who kind of formalized it.

s52
00:03:36.720 --> 00:03:42.160
Uh Von Quine was a philosopher and then this guy Gruber, 1993.

s53
00:03:42.160 --> 00:03:51.120
And I think this captures what knowledge and uh graph technology really represents.

s54
00:03:51.120 --> 00:03:56.960
It is a a formal specification of a shared conceptualization.

s55
00:03:56.960 --> 00:03:59.160
And that's what we want to give to our agents.

s56
00:03:59.160 --> 00:04:05.880
We want to give them our concept our conceptualization of the universe, our universe, our domains.

s57
00:04:05.880 --> 00:04:06.600
Okay?

s58
00:04:06.600 --> 00:04:22.480
And now, what's happening is you're getting the convergence of something that is probabilistic, the agents, the LLMs, with the the more formal representations that you have with ontologies.

s59
00:04:22.480 --> 00:04:29.240
And so, this term is now being used you hearing this a lot, neuro-symbolic AI.

s60
00:04:29.240 --> 00:04:46.440
Sounds pretty fancy, but it's really neural networks tied into symbolic AI, which rule-based systems come under that category, um as do the knowledge graphs that we're that we're assembling.

s61
00:04:46.440 --> 00:05:02.760
And so, what I'd like to argue is that neuro-symbolic AI sort of represents a way to keep the LLM on its guardrails, because LLMs are by nature probabilistic.

s62
00:05:02.760 --> 00:05:06.919
People worry about hallucinations, but that's the feature.

s63
00:05:06.919 --> 00:05:09.480
That's actually a feature of large language models.

s64
00:05:09.480 --> 00:05:11.360
It's who we are.

s65
00:05:11.360 --> 00:05:12.919
We hallucinate in a way.

s66
00:05:12.919 --> 00:05:17.360
We imagine things that may not exist, and then we turn them into reality.

s67
00:05:17.360 --> 00:05:20.960
And that's what large language models do in in a way.

s68
00:05:20.960 --> 00:05:21.400
Okay?

s69
00:05:21.400 --> 00:05:27.240
So, let's just quickly overview what ontologies are.

s70
00:05:27.240 --> 00:05:28.880
It's not They're not complicated.

s71
00:05:28.880 --> 00:05:35.680
They're basically a representation of entities and their relationships to other entities.

s72
00:05:35.680 --> 00:05:38.240
And these entities have properties.

s73
00:05:38.240 --> 00:05:53.520
And this whole concept of graph databases arose when people began to realize that relational databases sticking data into tables was too restrictive.

s74
00:05:53.520 --> 00:05:59.480
You wanted to add something new to a relational database, so you have to add a new column.

s75
00:05:59.480 --> 00:06:02.440
Man, I had then then you have to redo the whole structure.

s76
00:06:02.440 --> 00:06:05.720
With a with a graph database, you can just attach another item.

s77
00:06:05.720 --> 00:06:07.240
You can just attach a property.

s78
00:06:07.240 --> 00:06:09.120
You can attach a relationship.

s79
00:06:09.120 --> 00:06:09.880
Okay?

s80
00:06:09.880 --> 00:06:12.960
So, the question often arises, okay, I I get it.

s81
00:06:12.960 --> 00:06:19.960
I need to have an ontology to represent in a formal way what my organization is doing.

s82
00:06:19.960 --> 00:06:21.120
How do I do it?

s83
00:06:21.120 --> 00:06:21.840
Okay?

s84
00:06:21.840 --> 00:06:23.760
There are a couple of ways you can approach it.

s85
00:06:23.760 --> 00:06:26.840
You can have a top-down approach or a bottom-up approach.

s86
00:06:26.840 --> 00:06:35.000
Top-down approach is you get the experts together and they sit down and analyze the domain, come up with the entities.

s87
00:06:35.000 --> 00:06:35.600
What do we have?

s88
00:06:35.600 --> 00:06:42.400
We have purchase orders, we have customers, we have customer representatives, and we're going to structure them.

s89
00:06:42.400 --> 00:06:43.360
They have properties.

s90
00:06:43.360 --> 00:06:44.919
These are the relationships.

s91
00:06:44.919 --> 00:06:46.000
Okay, that's one way.

s92
00:06:46.000 --> 00:06:51.560
And this models what we were doing back in the '80s when I was involved in expert systems.

s93
00:06:51.560 --> 00:06:54.800
Everybody thought expert systems was the way to do AI.

s94
00:06:54.800 --> 00:06:57.600
Symbolic AI was the way to go.

s95
00:06:57.600 --> 00:07:01.360
Companies rose, millions of dollars were spent.

s96
00:07:01.360 --> 00:07:09.080
Uh the the Japanese created this uh future world project in the late '80s.

s97
00:07:09.080 --> 00:07:16.360
People in America were my my son was taking Japanese in school because of these expert systems.

s98
00:07:16.360 --> 00:07:19.160
And but they couldn't scale.

s99
00:07:19.160 --> 00:07:23.680
They couldn't scale, and then we went into a kind of AI winter.

s100
00:07:23.680 --> 00:07:25.680
Where did neural networks came come from?

s101
00:07:25.680 --> 00:07:41.800
Neural networks were put out there in the '60s, but they couldn't scale because we didn't happen to have Nvidia who was off making GPUs to make make reality of the of the video games fantastic,

s102
00:07:41.800 --> 00:07:47.920
and then someone said, let's turn these things over to the neural networks, and of course, that's kind of why we're here now.

s103
00:07:47.920 --> 00:07:56.920
So, the other way you can that that people are adding to or creating ontologies is is from the bottom up.

s104
00:07:56.920 --> 00:08:01.160
For example, customer reactions.

s105
00:08:01.160 --> 00:08:03.240
What are the things the customers are involved in?

s106
00:08:03.240 --> 00:08:04.400
Wait.

s107
00:08:04.400 --> 00:08:08.160
Do you these entities, these relationships, let's add this to our ontology.

s108
00:08:08.160 --> 00:08:11.440
Let's Let's add this information to the graph.

s109
00:08:11.440 --> 00:08:22.760
Now, as as a help, it's helpful to be aware that there are existing taxonomies that people have been working on for the last 15 to 20 years.

s110
00:08:22.760 --> 00:08:29.560
Things like schema.org, which has a whole set of terms and relationships, so you don't have to reinvent the wheel.

s111
00:08:29.560 --> 00:08:34.880
In fact, you it's to your advantage to use some of these ontologies.

s112
00:08:34.880 --> 00:08:40.080
FOAF, Friend of a Friend, for modeling social networks.

s113
00:08:40.080 --> 00:08:50.560
The Dublin Core, which was an early an early attempt to come up with terms for describing uh research papers and books and so forth.

s114
00:08:50.560 --> 00:08:52.400
So, there's a whole series of things.

s115
00:08:52.400 --> 00:08:57.240
In fact, Wikipedia is based on an ontology called DBpedia.

s116
00:08:57.240 --> 00:09:02.520
So, when you do a search on Wikipedia, it's looking things up in its giant graph database.

s117
00:09:02.520 --> 00:09:07.640
So, this stuff has been out there underlying a lot of what we already do.

s118
00:09:07.640 --> 00:09:12.560
So, take advantage of these things that already exist.

s119
00:09:12.839 --> 00:09:13.480
Okay.

s120
00:09:13.480 --> 00:09:15.839
Now, what do you do when you build your ontology?

s121
00:09:15.839 --> 00:09:17.240
Okay, so what?

s122
00:09:17.240 --> 00:09:22.160
I know what these entities are, I know what their relationships are, they have properties.

s123
00:09:22.160 --> 00:09:24.560
How can I do anything with them?

s124
00:09:24.560 --> 00:09:29.800
Well, there are other augmenting technologies, auxiliary technologies.

s125
00:09:29.800 --> 00:09:35.080
Things that we call the things like RDFS, which is a technology, and OWL, which I'll talk more about.

s126
00:09:35.080 --> 00:09:40.800
So, these have these kind of sit over to the side of your graph.

s127
00:09:40.800 --> 00:09:48.760
So, I'm not going to talk about on I mean ontology is a big word and it's often confusing and used in many ways, but think of it as a graph data structure.

s128
00:09:48.760 --> 00:09:50.000
Okay?

s129
00:09:50.000 --> 00:09:55.560
And you have the entities and relationships, but you want to apply some control over them.

s130
00:09:55.560 --> 00:09:58.240
Or you want to be able to make inference over them.

s131
00:09:58.240 --> 00:10:05.920
So, for example, there is uh some terms in this technology called RDFS.

s132
00:10:05.920 --> 00:10:07.360
Domain and range.

s133
00:10:07.360 --> 00:10:13.600
So, if I say teaches has a domain of teacher.

s134
00:10:13.600 --> 00:10:21.520
That means if I say Bob teaches Scooter in my text, I can infer that Bob is a teacher.

s135
00:10:21.520 --> 00:10:29.840
And if I say all teachers are persons, then this statement lets me know if I say Bob teaches Scooter, now I know Bob is a person, Bob is a teacher.

s136
00:10:29.840 --> 00:10:31.120
What about Scooter?

s137
00:10:31.120 --> 00:10:38.640
If I say teaches has a range of student, that means the the right side of the verb, then Scooter is a student.

s138
00:10:38.640 --> 00:10:43.040
And now I have this extra information into my system.

s139
00:10:43.040 --> 00:10:51.000
OWL also has a series of of of properties that allow you to make some inferences.

s140
00:10:51.000 --> 00:10:59.880
So, a transitive property transitive property says, if Sue is an ancestor like ancestor is a transitive property.

s141
00:10:59.880 --> 00:11:07.200
If Sue is an ancestor of Mary and Mary is an ancestor of Ann, then Sue is an ancestor of Ann.

s142
00:11:07.200 --> 00:11:08.040
Okay?

s143
00:11:08.040 --> 00:11:19.640
This was not initially into my graph system, but with applying these functional properties, I can then add and augment the system with this extra data.

s144
00:11:19.640 --> 00:11:21.440
So, that's very useful.

s145
00:11:21.440 --> 00:11:28.760
Then there's some properties called functional properties, which means only one.

s146
00:11:28.760 --> 00:11:32.680
So, has father is a functional property.

s147
00:11:32.680 --> 00:11:34.920
You can only have one father.

s148
00:11:34.920 --> 00:11:36.240
You can only have one mother.

s149
00:11:36.240 --> 00:11:38.720
That is a functional property.

s150
00:11:38.720 --> 00:11:39.200
Okay?

s151
00:11:39.200 --> 00:11:42.680
So, that's that can serve as a constraint.

s152
00:11:42.680 --> 00:11:59.520
So, when if you say Bob is my Bob is Jim's father, BB is Jim's father, well, the inference here is that Bob and BB are two ways of representing the same individual because

s153
00:11:59.520 --> 00:12:01.120
that is a functional property.

s154
00:12:01.120 --> 00:12:02.160
Can only have one.

s155
00:12:02.160 --> 00:12:14.000
So, these derivations and constraints that don't sit in the graph, they sit sort of on the side and they can help as we're going to see, I'm going to propose,

s156
00:12:14.000 --> 00:12:17.880
when we deal with agents, how they can they can help us out.

s157
00:12:17.880 --> 00:12:21.160
So, what about agents?

s158
00:12:21.800 --> 00:12:25.960
Everybody's talking about agents now and everybody's talking about loops.

s159
00:12:25.960 --> 00:12:28.840
Loops, loops, loops everywhere.

s160
00:12:28.840 --> 00:12:31.040
Loops have been around for a long time.

s161
00:12:31.040 --> 00:12:35.800
Back in the '60s, people were debating who has the best programming language?

s162
00:12:35.800 --> 00:12:36.760
Fortran or COBOL?

s163
00:12:36.760 --> 00:12:37.960
No, mine is better.

s164
00:12:37.960 --> 00:12:38.920
No, mine is better.

s165
00:12:38.920 --> 00:12:40.040
Oh, you don't know anything.

s166
00:12:40.040 --> 00:12:42.600
You don't know what you're talking about.

s167
00:12:42.600 --> 00:12:51.760
Bohm and Jacopini in 1966 came out and said, "Okay, there is no real difference in programming languages if they have three aspects.

s168
00:12:51.760 --> 00:12:52.480
Sequence.

s169
00:12:52.480 --> 00:12:55.800
I can put statement A, statement B, statement C. Fine.

s170
00:12:55.800 --> 00:12:56.680
I have conditionals.

s171
00:12:56.680 --> 00:12:58.480
I can have if then.

s172
00:12:58.480 --> 00:13:01.440
And the last piece, I have a loop.

s173
00:13:01.440 --> 00:13:09.160
If I have a loop, if I have iteration, if I take these three things, the the language is what's called Turing complete.

s174
00:13:09.160 --> 00:13:19.320
Can do any can compute anything that a can be computed by computational devices from the work of Alan Turing.

s175
00:13:19.320 --> 00:13:20.280
Okay?

s176
00:13:20.280 --> 00:13:24.120
And now we're seeing this in agentic AI.

s177
00:13:24.120 --> 00:13:25.880
Agents are now have loops.

s178
00:13:25.880 --> 00:13:40.240
Loops give us the last piece in the equation of giving us a technology that is capable of doing anything that computational devices can do.

s179
00:13:40.240 --> 00:13:45.200
The danger though of loops is that they can break.

s180
00:13:45.200 --> 00:13:49.960
If you're If you're a programmer, you know, you've all go into infinite loop.

s181
00:13:49.960 --> 00:13:51.880
Not good.

s182
00:13:51.880 --> 00:13:59.120
Loops can drift as agents start talking to each other, things get all go off off the rails.

s183
00:13:59.120 --> 00:14:02.920
And loops can cost you money.

s184
00:14:02.920 --> 00:14:06.520
Token counts crank up as the loops continue.

s185
00:14:06.520 --> 00:14:09.640
So, you don't you need to be careful, okay?

s186
00:14:09.640 --> 00:14:14.840
But in a way we are revisiting some of the early stuff with symbolic AI.

s187
00:14:14.840 --> 00:14:20.040
I would argue we're going back to the world of expert systems.

s188
00:14:20.040 --> 00:14:22.560
Which is the symbolic part of the whole thing.

s189
00:14:22.560 --> 00:14:27.600
So, I want to show you a little example using Claude agent.

s190
00:14:27.600 --> 00:14:29.120
So, little code here.

s191
00:14:29.120 --> 00:14:38.920
Don't get scared, but I know nobody does Python anymore, but you got to look at what the agent's giving you and you got to you got to move in and and manipulate it.

s192
00:14:38.920 --> 00:14:44.080
So, here's a here's a loop while true, classic Python loop.

s193
00:14:44.080 --> 00:14:44.480
Okay?

s194
00:14:44.480 --> 00:14:46.120
And so, we have a client.

s195
00:14:46.120 --> 00:14:55.920
So, we're actually So, the first little chunk here that you see, r e s p, the response, this is just some code where we have a model and we have

s196
00:14:55.920 --> 00:15:10.440
uh we have a prompt, that's part of part of the messages, and we have a tool, and we're we're asking the LLM to solve this problem using a tool.

s197
00:15:10.440 --> 00:15:14.000
Now, here's the here's the catch.

s198
00:15:14.000 --> 00:15:16.320
LLMs can't do anything.

s199
00:15:16.320 --> 00:15:20.440
All they can do is give us the next word with a high probability.

s200
00:15:20.440 --> 00:15:24.880
Amazingly, we can now have these conversations it, but they can't do anything.

s201
00:15:24.880 --> 00:15:36.040
But, we can give it a tool, and we can give it what we want, and say, "How do you think this tool can help us get what we want?"

s202
00:15:36.040 --> 00:15:46.160
And then the LLM will set up the parameters, and come back to us, and say, "Okay, here's my response.

s203
00:15:46.160 --> 00:15:49.800
I can't execute this tool, but I know what the input parameters are.

s204
00:15:49.800 --> 00:15:53.400
I know what your context is.

s205
00:15:53.400 --> 00:15:54.800
I know what your prompt is.

s206
00:15:54.800 --> 00:16:00.280
So, here is the call that you need to make of the tool, because I can't do it.

s207
00:16:00.280 --> 00:16:01.120
I'm the LLM.

s208
00:16:01.120 --> 00:16:03.360
I'm just locked in this box.

s209
00:16:03.360 --> 00:16:03.920
Okay?

s210
00:16:03.920 --> 00:16:09.600
So, the second box the second chunk is stop reason.

s211
00:16:09.600 --> 00:16:15.200
So, stop reason means the LLM has stopped for some reason.

s212
00:16:15.200 --> 00:16:21.600
The The reason here is that it can't do anything, and if the reason is tool use, ah, now it's time.

s213
00:16:21.600 --> 00:16:23.200
Let's go execute that tool.

s214
00:16:23.200 --> 00:16:25.560
So, that second line, get tool.

s215
00:16:25.560 --> 00:16:32.560
It takes the response, which is formulating the the parameters, and triggering the action.

s216
00:16:32.560 --> 00:16:32.960
Okay.

s217
00:16:32.960 --> 00:16:34.560
Now, I have this stuff in red here.

s218
00:16:34.560 --> 00:16:41.839
This is where I think the LLMs and other uh I'm sorry, not LLMs.

s219
00:16:41.839 --> 00:16:43.839
The ontologies and stuff can come in.

s220
00:16:43.839 --> 00:16:52.280
So, if you look down there, after the the tool is called, it said tool runs.

s221
00:16:52.280 --> 00:16:56.520
This is where ontologies could come in.

s222
00:16:56.520 --> 00:16:59.600
The tool's going to give us information.

s223
00:16:59.600 --> 00:17:16.079
We put the information in a form that our our our our validator can use, and think about the validator as operating with this these ontologies about our domain, then we can

s224
00:17:16.079 --> 00:17:23.360
make some sense of whether the response of the LLM is reasonable.

s225
00:17:23.360 --> 00:17:24.720
So, this is the loop.

s226
00:17:24.720 --> 00:17:28.360
Call a tool, check the stop reason.

s227
00:17:28.360 --> 00:17:32.000
If it's a reasonable result, then let's go with it.

s228
00:17:32.000 --> 00:17:34.680
If it's not reasonable, go back to the LLM.

s229
00:17:34.680 --> 00:17:37.080
Say, "Oh, this is this is not working."

s230
00:17:37.080 --> 00:17:39.680
Or get a human in the loop.

s231
00:17:39.680 --> 00:17:44.600
But the idea is to surround the input with checks.

s232
00:17:44.600 --> 00:17:52.560
Now, I've got this something that you that you should be at least taking a look at if you're doing some of this coding is something called Pydantic.

s233
00:17:52.560 --> 00:18:00.360
Pydantic is a way to specify the types of what you want the types of the parameters to be.

s234
00:18:00.360 --> 00:18:06.080
Those of you who who do know Python, know Python is a unstructured type language.

s235
00:18:06.080 --> 00:18:10.600
So, you can have a variable x = 20, x = hello, no problem.

s236
00:18:10.600 --> 00:18:12.280
There's no typing.

s237
00:18:12.280 --> 00:18:14.120
Pydantic adds typing to that.

s238
00:18:14.120 --> 00:18:21.760
So, you want to check your types with Pydantic and then check your results with the ontology.

s239
00:18:23.720 --> 00:18:32.680
So, Pydantic at the door, ontology at the ledger, and pure agents and by the way, your agents should try to have no side effects.

s240
00:18:32.680 --> 00:18:34.000
That helps the whole logic.

s241
00:18:34.000 --> 00:18:40.680
Meaning, they're not running off doing something that they're they're changing they're changing things in the database not yet.

s242
00:18:40.680 --> 00:18:44.560
You want to run them through the ontology first and make sure that works.

s243
00:18:44.560 --> 00:18:45.520
Okay.

s244
00:18:45.520 --> 00:18:48.360
I only got an I've got I've got another I've just a short time.

s245
00:18:48.360 --> 00:19:01.720
I'm going to try to show you some of the things that um that you can some logical constructs from from something called OWL, the uh the web object language for for objects.

s246
00:19:01.720 --> 00:19:05.440
So, you have these functional properties, disjoint properties.

s247
00:19:05.440 --> 00:19:10.040
I'll just put these you can look at the slides, but essentially the errors it can catch.

s248
00:19:10.040 --> 00:19:12.520
Look over in the the right-hand column.

s249
00:19:12.520 --> 00:19:18.720
A second refund on the same order is a is is a problem.

s250
00:19:18.720 --> 00:19:23.200
But ontologies could catch it, whereas it's it's very tricky to do that in in English.

s251
00:19:23.200 --> 00:19:26.560
A payout sent to the support desk instead of the buyer.

s252
00:19:26.560 --> 00:19:27.240
Okay?

s253
00:19:27.240 --> 00:19:33.720
You can catch that with an owl disjoint property where customer and support rep are two separate entities.

s254
00:19:33.720 --> 00:19:34.960
Okay?

s255
00:19:34.960 --> 00:19:40.080
Uh one of may a made-up value like probably shipped.

s256
00:19:40.080 --> 00:19:44.680
You can specify you must have certain kinds of value.

s257
00:19:44.680 --> 00:19:50.280
So, uh the status paid, shipped, or refunded, nothing else.

s258
00:19:50.280 --> 00:20:02.360
And when you're in the pure text world, this can get this can get funky because the the LLMs are again probabilistic and um return some crazy stuff.

s259
00:20:02.360 --> 00:20:03.080
Okay.

s260
00:20:03.080 --> 00:20:15.040
Uh so, really what the point I want to make here is use these re- you can have a reasoner built on ontology to check keep the LLM on track,

s261
00:20:15.040 --> 00:20:17.240
have guardrails to keep it honest.

s262
00:20:17.240 --> 00:20:18.640
Okay?

s263
00:20:18.640 --> 00:20:28.760
And for the guardrails, I'm referring to these concepts re- these support technologies with RDFS and owl.

s264
00:20:28.760 --> 00:20:37.080
And my my bottom line is and nothing is a mistake, there's no win, no fail, only a make.

s265
00:20:37.080 --> 00:20:37.680
Okay.

s266
00:20:37.680 --> 00:20:40.560
Feel free to reach out to me coil@burkly.

s267
00:20:40.560 --> 00:20:44.080
I've got a I've got a I've got a little website codesupreme.ai.

s268
00:20:44.080 --> 00:20:51.440
I'm a big fan of if you're John Coltrane has a has a some jazz called uh called Love Supreme.

s269
00:20:51.440 --> 00:20:54.040
So, I've named my site Code Supreme.

s270
00:20:54.040 --> 00:20:57.000
And if you go there, I've got some music and it's all good.

s271
00:20:57.000 --> 00:20:57.600
Okay.

s272
00:20:57.600 --> 00:20:58.520
Thanks very much.

s273
00:20:58.520 --> 00:20:59.579
20 minutes.

s274
00:20:59.579 --> 00:21:01.579
[applause]

s275
00:21:15.299 --> 00:21:17.299
[music]

s276
00:21:17.760 --> 00:21:19.760
Woo!
