WEBVTT

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

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

s1
00:00:12.800 --> 00:00:15.440
How's everybody doing?

s2
00:00:15.440 --> 00:00:16.720
Day what is it?

s3
00:00:16.720 --> 00:00:20.160
4 400 something.

s4
00:00:20.160 --> 00:00:23.920
Thank you for bearing with us as we had a little technical difficulty getting started.

s5
00:00:23.920 --> 00:00:25.519
But I am Jeremy Adams.

s6
00:00:25.519 --> 00:00:27.359
I'm from Neo4j.

s7
00:00:27.359 --> 00:00:28.880
You might have seen our booth.

s8
00:00:28.880 --> 00:00:31.439
It's kind of right over that way.

s9
00:00:31.439 --> 00:00:34.960
And we're all about graphs and graph databases.

s10
00:00:34.960 --> 00:00:40.320
Today I'm going to expand that a little bit to a side project I've been playing with.

s11
00:00:40.320 --> 00:00:51.280
Uh who here has done something with uh open claw or Hermes agent or any of your kind of claw of choice.

s12
00:00:51.280 --> 00:00:51.600
Okay.

s13
00:00:51.600 --> 00:00:56.800
So a lot of some folks but most folks are kind of new to the space which is cool.

s14
00:00:56.800 --> 00:01:01.199
How about uh things that are more like edge devices, hardware?

s15
00:01:01.199 --> 00:01:04.640
Um thinking about like you know offline mode kind of stuff.

s16
00:01:04.640 --> 00:01:04.879
Yeah.

s17
00:01:04.879 --> 00:01:05.119
Okay.

s18
00:01:05.119 --> 00:01:06.400
Some interest there.

s19
00:01:06.400 --> 00:01:10.960
Um how about who's experienced with graph in general?

s20
00:01:10.960 --> 00:01:13.119
A little bit of graph some graph people.

s21
00:01:13.119 --> 00:01:13.680
Cool.

s22
00:01:13.680 --> 00:01:20.080
And how who's been doing like building agents with memory and things like that?

s23
00:01:20.080 --> 00:01:20.400
Okay.

s24
00:01:20.400 --> 00:01:20.720
Whoa.

s25
00:01:20.720 --> 00:01:20.960
Cool.

s26
00:01:20.960 --> 00:01:23.759
That's the the biggest group so far.

s27
00:01:23.759 --> 00:01:24.799
And I want to keep it going.

s28
00:01:24.799 --> 00:01:33.520
We're going to try and do more things that have to do with uh statistics of some sort uh as we get to some findings that we're going to do in a little bit.

s29
00:01:33.520 --> 00:01:43.920
So, um what I'm going to do in this talk today is talk about this agent memory project that I did that involves a bit of hardware that you can see on my chest.

s30
00:01:43.920 --> 00:01:53.759
And um as we go through it, we're going to talk about how I also built up some software for agent memory and how that all went.

s31
00:01:53.759 --> 00:02:00.960
So, this is like the livest of the live demos I've done with this so far because I'm like literally assembling the pieces in front of you.

s32
00:02:00.960 --> 00:02:01.759
So, let's see.

s33
00:02:01.759 --> 00:02:05.840
We're I have a microphone, little extra microphone.

s34
00:02:05.840 --> 00:02:09.520
Yes, I'm going to be using this to talk to my claw in a second.

s35
00:02:09.520 --> 00:02:11.440
It's not It's not yet powered on.

s36
00:02:11.440 --> 00:02:13.120
So, this is really crazy.

s37
00:02:13.120 --> 00:02:21.520
And I've got this uh I've got like a capture a video capture from my HDMI, which is over here.

s38
00:02:21.520 --> 00:02:24.000
I'm going to plug that in.

s39
00:02:24.000 --> 00:02:24.400
Whoa.

s40
00:02:24.400 --> 00:02:25.680
Somewhere.

s41
00:02:25.680 --> 00:02:26.640
Plug that in.

s42
00:02:26.640 --> 00:02:27.200
Okay.

s43
00:02:27.200 --> 00:02:28.959
It's not on yet.

s44
00:02:28.959 --> 00:02:33.840
I'm also going to This is the receiver for the USB for the mic.

s45
00:02:33.840 --> 00:02:37.360
So, we hope this works too today.

s46
00:02:37.360 --> 00:02:38.560
If I can see where it goes.

s47
00:02:38.560 --> 00:02:39.519
There we go.

s48
00:02:39.519 --> 00:02:42.080
Plug that in.

s49
00:02:43.280 --> 00:02:44.800
Guess that's why they made USBC.

s50
00:02:44.800 --> 00:02:46.560
You have to keep flipping the thing over.

s51
00:02:46.560 --> 00:02:47.040
Okay.

s52
00:02:47.040 --> 00:02:48.640
So, there that goes in.

s53
00:02:48.640 --> 00:02:53.680
And now gonna try and sync these two mics.

s54
00:02:53.680 --> 00:02:54.720
Okay, they're green.

s55
00:02:54.720 --> 00:02:55.280
That's okay.

s56
00:02:55.280 --> 00:02:56.640
So, I got a mic there.

s57
00:02:56.640 --> 00:02:58.480
Now for some power.

s58
00:02:58.480 --> 00:03:01.120
Good old good old battery power.

s59
00:03:01.120 --> 00:03:01.519
All right.

s60
00:03:01.519 --> 00:03:07.519
So, what I'm going to do really quick, just for fun before we get into the main presentation.

s61
00:03:07.519 --> 00:03:09.040
I'm going to show you this trick.

s62
00:03:09.040 --> 00:03:23.280
So, with this weird video capture situation I've got going on, I'm going to go over here to my QuickTime player, and I'm going to say that I want a

s63
00:03:23.440 --> 00:03:26.000
I want something that it will not let me do right now.

s64
00:03:26.000 --> 00:03:31.360
Let me quit QuickTime Player and let's reopen it.

s65
00:03:31.440 --> 00:03:33.040
All right, here we go.

s66
00:03:33.040 --> 00:03:37.360
And let's try and do a f a new movie recording.

s67
00:03:37.360 --> 00:03:38.640
All right, we can see there we go.

s68
00:03:38.640 --> 00:03:40.000
You see the claw?

s69
00:03:40.000 --> 00:03:41.440
All right, we don't want to see that.

s70
00:03:41.440 --> 00:03:43.680
We want to see what's on the claw.

s71
00:03:43.680 --> 00:03:52.319
So, what I'm going to do instead is I'm going to use the source will be from my from the output of this video here.

s72
00:03:52.319 --> 00:03:52.560
All right.

s73
00:03:52.560 --> 00:03:57.360
So, let's power it up and I'll try my best.

s74
00:03:57.360 --> 00:03:57.920
There we go.

s75
00:03:57.920 --> 00:04:00.799
To catch it during the boot sequence.

s76
00:04:00.799 --> 00:04:01.120
All right.

s77
00:04:01.120 --> 00:04:13.760
So, I'm going to go here to my I'm going to change to this USB3 capture device and I'm going to move this around a little bit so we can see it.

s78
00:04:13.760 --> 00:04:23.440
And hopefully, I mean, I can't give you any guarantees, but hopefully what's going to happen is as this guy goes, we're going to see something actually happen.

s79
00:04:23.440 --> 00:04:28.000
So, I'm going to give a little reset to that and back to that.

s80
00:04:28.400 --> 00:04:31.360
Oh, and let me push power on this.

s81
00:04:31.360 --> 00:04:32.479
Okay, there we go.

s82
00:04:32.479 --> 00:04:32.880
All right.

s83
00:04:32.880 --> 00:04:38.400
So, again, hopefully I see power is now flowing through into here.

s84
00:04:38.400 --> 00:04:38.560
Okay.

s85
00:04:38.560 --> 00:04:40.320
Oh, something's happening.

s86
00:04:40.320 --> 00:04:40.960
Okay.

s87
00:04:40.960 --> 00:04:50.320
And um this gives me high confidence because I've done this only like one million times as you can imagine, hacking on this silly thing.

s88
00:04:50.320 --> 00:04:50.639
Okay.

s89
00:04:50.639 --> 00:04:52.000
Raspberry Pi desktop.

s90
00:04:52.000 --> 00:04:52.800
Oh, yeah.

s91
00:04:52.800 --> 00:04:57.520
So, this is a Raspberry Pi 4B, not the latest model.

s92
00:04:57.520 --> 00:04:57.919
Okay.

s93
00:04:57.919 --> 00:05:07.440
So, um, but very serviceable, and I was running a 32-bit operating system for a long time until I realized it was 64-bit ARM capable.

s94
00:05:07.440 --> 00:05:08.400
It's pretty cool.

s95
00:05:08.400 --> 00:05:12.639
Um, you can't run everything on this thing, but you can run quite a bit.

s96
00:05:12.639 --> 00:05:19.680
And, um, we're going to get into exactly what I did put on this to end up getting this presentation together.

s97
00:05:19.680 --> 00:05:20.400
Okay, cool.

s98
00:05:20.400 --> 00:05:20.720
All right.

s99
00:05:20.720 --> 00:05:26.080
So, it's alive and I've got a little extra Bluetooth keyboard and that's how I can drive things on here.

s100
00:05:26.080 --> 00:05:29.680
And we will do that um in a second.

s101
00:05:29.680 --> 00:05:36.240
But I mostly just kind of wanted to show you the setup so you could, you know, believe that it actually is a real thing.

s102
00:05:36.240 --> 00:05:39.120
And uh there we go.

s103
00:05:39.120 --> 00:05:39.440
All right.

s104
00:05:39.440 --> 00:05:41.280
So, now I'm going to get into the presentation.

s105
00:05:41.280 --> 00:05:41.919
We'll come here.

s106
00:05:41.919 --> 00:05:42.240
There we go.

s107
00:05:42.240 --> 00:05:47.919
I'll come back to this Pi here in just a second after I open up.

s108
00:05:47.919 --> 00:05:48.639
There we go.

s109
00:05:48.639 --> 00:05:55.759
And just to give you a a flavor, uh, this one has nano claw, but it also has Docker on here.

s110
00:05:55.759 --> 00:05:58.400
And I'm running Neo Forj on on here.

s111
00:05:58.400 --> 00:06:00.960
I've got a little Docker based Neo Forj database.

s112
00:06:00.960 --> 00:06:07.120
Okay, now let's continue with the talk and we'll get back to the claw in a minute.

s113
00:06:07.120 --> 00:06:09.039
So small claw.

s114
00:06:09.039 --> 00:06:11.600
What did I I I said small claws are beautiful.

s115
00:06:11.600 --> 00:06:13.120
What did I mean by that?

s116
00:06:13.120 --> 00:06:19.840
Well, there was a lot of hype happening and still is about these personal agents, but I did not want one that was on my laptop.

s117
00:06:19.840 --> 00:06:20.479
I'm sorry.

s118
00:06:20.479 --> 00:06:21.759
I'm a little conservative.

s119
00:06:21.759 --> 00:06:24.639
I come from the old kind of cisadmin devops space.

s120
00:06:24.639 --> 00:06:28.639
I'm like, I want to wait for this stuff to be really solid before I do something like that.

s121
00:06:28.639 --> 00:06:33.360
But I I also wanted to be cheap, open, hackable, right?

s122
00:06:33.360 --> 00:06:38.000
And for me, I wanted to understand what was happening more than it being featurerich.

s123
00:06:38.000 --> 00:06:39.360
That was more important to me.

s124
00:06:39.360 --> 00:06:42.720
And so I went and I saw like lo I live in Portland, Oregon.

s125
00:06:42.720 --> 00:06:43.919
I looked on Craigslist.

s126
00:06:43.919 --> 00:06:47.440
Somebody's selling a Mac Mini with OpenClaw pre-installed.

s127
00:06:47.440 --> 00:06:48.960
I'm already like pre-installed.

s128
00:06:48.960 --> 00:06:50.400
That's a red flag.

s129
00:06:50.400 --> 00:06:57.600
And you know, Mac Mini could be cool, but um I know now it's not going to be 600 anymore with the recent price increases, right?

s130
00:06:57.600 --> 00:07:00.560
So that's not a small claw as far as I'm concerned.

s131
00:07:00.560 --> 00:07:09.199
So then I reached back and this is uh I did I think it's pandemic or at the end of the pandemic I did something where I was hacking with this very Raspberry Pi

s132
00:07:09.199 --> 00:07:15.039
doing something like measuring the weight of the dishes in your sink to tell you you should wash the dishes.

s133
00:07:15.039 --> 00:07:18.400
Anyway, you could check out the video there if you like that kind of nonsense.

s134
00:07:18.400 --> 00:07:19.759
But that's this exact guy.

s135
00:07:19.759 --> 00:07:22.400
And I saw I said I have this in the closet.

s136
00:07:22.400 --> 00:07:23.520
Will it claw?

s137
00:07:23.520 --> 00:07:24.160
I don't know.

s138
00:07:24.160 --> 00:07:25.840
I should try it and see.

s139
00:07:25.840 --> 00:07:28.639
And uh yeah, it claws real good.

s140
00:07:28.639 --> 00:07:32.319
It was and um that that that little that it's not a sticker.

s141
00:07:32.319 --> 00:07:41.680
It's like more like me, you know, photoshopping a a claw on there just like, you know, oh, maybe someday I could actually, you know, uh do something really cool with this.

s142
00:07:41.680 --> 00:07:43.520
And uh but you see my old setup.

s143
00:07:43.520 --> 00:07:45.919
I have this external monitor.

s144
00:07:45.919 --> 00:07:47.440
I've got my external keyboard.

s145
00:07:47.440 --> 00:07:49.520
There's a mouse off screen and everything.

s146
00:07:49.520 --> 00:07:51.599
This guy, this is a game changer right here.

s147
00:07:51.599 --> 00:07:54.160
I'm like so it's so sleek now.

s148
00:07:54.160 --> 00:07:57.759
Uh, it's got onboard Wi-Fi, which is great, or you can plug into wired.

s149
00:07:57.759 --> 00:07:59.759
So, hopefully I'm actually on the network.

s150
00:07:59.759 --> 00:08:01.599
We'll have to check that in a second.

s151
00:08:01.599 --> 00:08:03.360
Um, okay.

s152
00:08:03.360 --> 00:08:07.599
And then addition, uh, I used nano claw.

s153
00:08:07.599 --> 00:08:09.360
So, I didn't use open claw.

s154
00:08:09.360 --> 00:08:18.560
I found this other project that more suited my tastes because it was like 15 source files and it was quite compact and small number of lines of code.

s155
00:08:18.560 --> 00:08:21.759
It just used Docker containers to run the agent processes.

s156
00:08:21.759 --> 00:08:24.000
So they couldn't run a mock on the system.

s157
00:08:24.000 --> 00:08:26.240
I was like, okay, this is my kind of thing.

s158
00:08:26.240 --> 00:08:27.919
So I said, I'm going for it.

s159
00:08:27.919 --> 00:08:31.039
Uh, and so I like the other boxes that check for me.

s160
00:08:31.039 --> 00:08:32.719
I could run Linux on here.

s161
00:08:32.719 --> 00:08:33.680
It's got a Docker.

s162
00:08:33.680 --> 00:08:34.880
I understand.

s163
00:08:34.880 --> 00:08:42.320
Uh, it was based on cloud agent SDK, nano clause, and I could and they actually encourage you modify it.

s164
00:08:42.320 --> 00:08:43.200
Use cloud code.

s165
00:08:43.200 --> 00:08:44.320
We got skills in there.

s166
00:08:44.320 --> 00:08:45.040
Hack on it.

s167
00:08:45.040 --> 00:08:46.240
Make it work for you.

s168
00:08:46.240 --> 00:08:49.839
And it use messaging like, you know, Telegram if you want.

s169
00:08:49.839 --> 00:08:53.120
But I was like, well, I had WhatsApp on my phone, so I'll just use WhatsApp.

s170
00:08:53.120 --> 00:08:54.000
Perfect.

s171
00:08:54.000 --> 00:09:04.880
So, the initial architecture was something like this to go from my iPhone uh or my MacBook WhatsApp, you know, and then go through and talk to NanoClaw on this Raspberry Pi.

s172
00:09:04.880 --> 00:09:05.360
That's it.

s173
00:09:05.360 --> 00:09:07.120
And you just had to get like a credential.

s174
00:09:07.120 --> 00:09:09.519
You go on the NanoClon, you get it to register.

s175
00:09:09.519 --> 00:09:11.440
So, now you know WhatsApp's in the cloud.

s176
00:09:11.440 --> 00:09:14.080
And this thing can pull messages down from it.

s177
00:09:14.080 --> 00:09:18.399
And of course, you know, on board, I said we're using Claude stuff in the background.

s178
00:09:18.399 --> 00:09:19.760
So you got all the power.

s179
00:09:19.760 --> 00:09:23.279
There's no inference, no LLM inference happening on this thing.

s180
00:09:23.279 --> 00:09:25.920
I am using the CL the cloud for all that.

s181
00:09:25.920 --> 00:09:31.040
So I've got a big brain though it's over over a wire to the cloud, right?

s182
00:09:31.040 --> 00:09:33.279
But then uh I said well what can I do with this?

s183
00:09:33.279 --> 00:09:39.040
You know uh I I've got also in the claw in the cloud I also have Neo forj.

s184
00:09:39.040 --> 00:09:41.200
I've got Neo Forj database up there.

s185
00:09:41.200 --> 00:09:45.760
And for the folks here that have never done graph before this is your graph 101.

s186
00:09:45.760 --> 00:09:47.920
There is a small graph and this is a graph.

s187
00:09:47.920 --> 00:09:50.480
Can you see which ones are the nodes, right?

s188
00:09:50.480 --> 00:09:51.200
The round ones.

s189
00:09:51.200 --> 00:09:54.000
And you see the relationships, the edges between them.

s190
00:09:54.000 --> 00:09:57.440
So, there's two person nodes and a movie node.

s191
00:09:57.440 --> 00:10:03.600
And Tom Hanks, the person acted in Horus Gump and Robert Zmechus directed it.

s192
00:10:03.600 --> 00:10:04.080
Pretty easy.

s193
00:10:04.080 --> 00:10:04.480
That's it.

s194
00:10:04.480 --> 00:10:05.760
Now, you know, graphs.

s195
00:10:05.760 --> 00:10:13.040
So, I asked in a WhatsApp message once I had this database full of movies and I had my claw connected.

s196
00:10:13.040 --> 00:10:16.079
I'm like, "Hey, tell me what movies Tom Hanks acted in."

s197
00:10:16.079 --> 00:10:24.320
and it went through there with an MCP server connecting into my Neoforj instance with the movie database in there, right?

s198
00:10:24.320 --> 00:10:26.079
And then it responded back to me.

s199
00:10:26.079 --> 00:10:29.200
It's like, "Oh, well, first your stuff's not set up right.

s200
00:10:29.200 --> 00:10:29.839
It's broken."

s201
00:10:29.839 --> 00:10:31.040
I'm like, "Oh, okay.

s202
00:10:31.040 --> 00:10:32.000
Let me fix it."

s203
00:10:32.000 --> 00:10:37.120
So, I got on the claw, made sure O was working, and then I got a bunch of results back on the right there.

s204
00:10:37.120 --> 00:10:46.800
And those all came right out of pulling data from the database, feeding it back up through the cloud agent SDK, forming a response, and sending it back through the WhatsApp channel.

s205
00:10:46.800 --> 00:10:47.519
Got it?

s206
00:10:47.519 --> 00:10:49.760
So then I was like, well, what else could I do with this?

s207
00:10:49.760 --> 00:10:57.519
And I'm on the airplane, and I found that even without paying for Wi-Fi, I could use the messaging stuff and WhatsApp was working.

s208
00:10:57.519 --> 00:11:00.480
I was like, oh my god, I could talk to Claw right now.

s209
00:11:00.480 --> 00:11:03.920
So I was like, hey, could I do memory?

s210
00:11:03.920 --> 00:11:14.560
And I said, well, I'm not exactly sure what I want, but I was reading blog posts about this thing called poll plus O. So, this is a way of doing memory where you just think of like person, object,

s211
00:11:14.560 --> 00:11:18.399
location, event, uh, uh, an organization, right?

s212
00:11:18.399 --> 00:11:28.000
And it's this actually came from the European policing and you know those folks have been drawing graphs for a long time and every every one of your favorite cop shows that does a string diagram, right?

s213
00:11:28.000 --> 00:11:29.600
And so then I just was on the plane.

s214
00:11:29.600 --> 00:11:33.360
I'm like, hey, could we build a memory system using pole plus o?

s215
00:11:33.360 --> 00:11:34.800
And then it's like, "Yeah, sure.

s216
00:11:34.800 --> 00:11:35.440
Yeah, we can do it.

s217
00:11:35.440 --> 00:11:36.959
I'm your right of skill for that right now.

s218
00:11:36.959 --> 00:11:38.399
I've got this mount point.

s219
00:11:38.399 --> 00:11:40.160
It'll persist even when you reboot me.

s220
00:11:40.160 --> 00:11:40.720
No problem."

s221
00:11:40.720 --> 00:11:42.240
I was like, "This is amazing."

s222
00:11:42.240 --> 00:11:45.680
And so now I have this thing where I've got Neo4j in the cloud.

s223
00:11:45.680 --> 00:11:58.880
I've got this new memory database with this super advanced schema memories and related things very early, you know, before Carpathy's, you know, wiks and be after Obsidian, but you know, you get the idea.

s224
00:11:58.880 --> 00:12:00.320
It's it's that kind of thing.

s225
00:12:00.320 --> 00:12:10.720
And this is what ends up being in Neo forj memory nodes that show like places I was going and as I went to do little Devril events I was having this thing record it for me and all that.

s226
00:12:10.720 --> 00:12:14.240
So then we can like actually jump in and look at this database.

s227
00:12:14.240 --> 00:12:24.240
So I'm going to go over here to um to the web browser which I'm already in but I'm going to go over to this other tab and over here I've got Neo forj Aura

s228
00:12:24.240 --> 00:12:26.000
and I've got this demo instance.

s229
00:12:26.000 --> 00:12:27.760
I'm going to connect to it in query.

s230
00:12:27.760 --> 00:12:31.680
And this is where I've been storing all this information kind of over time.

s231
00:12:31.680 --> 00:12:36.240
And so I'm going to jump in and show you the memory nodes.

s232
00:12:36.240 --> 00:12:37.120
I got a bunch of stuff.

s233
00:12:37.120 --> 00:12:40.800
It's kind of a dumping ground in here, I admit.

s234
00:12:40.800 --> 00:12:44.000
And um here's all the here's the memories.

s235
00:12:44.000 --> 00:12:47.680
So he these are those original memory types that I had in here.

s236
00:12:47.680 --> 00:12:50.000
And I actually want to show you the memories.

s237
00:12:50.000 --> 00:12:55.440
I want to show you all the memories uh as they're connected to other things.

s238
00:12:55.440 --> 00:12:56.959
And I'm going to run that.

s239
00:12:56.959 --> 00:12:59.680
So you can see more like the connected graph.

s240
00:12:59.680 --> 00:13:09.200
And as I zoom in on this thing, you can see there's like me going to there's, you know, talking to a person going to the snowflake office in Menllo Park.

s241
00:13:09.200 --> 00:13:17.120
Menlo Park is itself a location in that framework and then I was at a certain AI meetup event, right?

s242
00:13:17.120 --> 00:13:22.160
So it follows and there's people in here like Rebecca, like Jeremy, there's different people, right?

s243
00:13:22.160 --> 00:13:23.920
So this is one way of doing it.

s244
00:13:23.920 --> 00:13:29.200
So then going back over here, we see that we can definitely store memories.

s245
00:13:29.200 --> 00:13:29.839
Well, what else?

s246
00:13:29.839 --> 00:13:39.200
I was thinking can I fit on this physical claw and somebody was doing like they had a microphone out their window and they were recording all the bird song in the backyard

s247
00:13:39.200 --> 00:13:43.360
and they could there was a bird net model that that could tell you that.

s248
00:13:43.360 --> 00:13:44.720
And I was like, "Oh, whoa.

s249
00:13:44.720 --> 00:13:45.360
I want to do that."

s250
00:13:45.360 --> 00:13:46.160
And then I was like, "Oh, wait.

s251
00:13:46.160 --> 00:13:47.920
Or maybe I could do voice to text.

s252
00:13:47.920 --> 00:13:48.959
Is that possible?"

s253
00:13:48.959 --> 00:13:53.680
So then I was like, "Sure enough, let me hook up a USB microphone, right, and do something like that."

s254
00:13:53.680 --> 00:13:57.040
And then do some voice to text and and do something like that.

s255
00:13:57.040 --> 00:14:06.320
So, um, and just to get ahead of it, just for fun, I'm going to go ahead and try and use Oh, that's funny.

s256
00:14:06.320 --> 00:14:06.959
Oh, there it is.

s257
00:14:06.959 --> 00:14:08.160
The button fell off.

s258
00:14:08.160 --> 00:14:13.279
So, I I made this button and it's connected into into some pins.

s259
00:14:13.279 --> 00:14:18.720
This is me getting ahead a little bit, but just in the interest of time, I'm going to go ahead and plug this back in.

s260
00:14:18.720 --> 00:14:25.360
And what this allows me to do is trigger that model and I'm going to do some quick recording.

s261
00:14:25.360 --> 00:14:33.279
I'm saying I am actually on stage at AI Engineer World delivering the talk I've been preparing for, right?

s262
00:14:33.279 --> 00:14:35.519
And so I you see the little lights went on.

s263
00:14:35.519 --> 00:14:36.959
So it did some recording.

s264
00:14:36.959 --> 00:14:41.519
Hopefully we'll be able to look and see if we actually if I'm actually online, if we got a message and so forth.

s265
00:14:41.519 --> 00:14:42.800
But this is the dream, right?

s266
00:14:42.800 --> 00:14:46.800
And I started doing it with all sorts of microphones, playing around with it.

s267
00:14:46.800 --> 00:14:52.399
And then I was like, "Oh, I want to bring this to AI engineer and I want to like walk around, right?

s268
00:14:52.399 --> 00:14:56.959
And with these recording little LEDs on it, and I want to like record something.

s269
00:14:56.959 --> 00:14:59.279
I don't know what I want what I want to record."

s270
00:14:59.279 --> 00:15:00.560
And I was like, I know what I'll do.

s271
00:15:00.560 --> 00:15:06.079
I'll go booth to booth and I'll record what messaging people have up at their booths.

s272
00:15:06.079 --> 00:15:08.240
And then I was like, let me build this thing.

s273
00:15:08.240 --> 00:15:13.040
And then I actually started working on, you know, adding in that kind of capability for recording.

s274
00:15:13.040 --> 00:15:16.480
And then I was like, okay, well, the booths, they got numbers and names.

s275
00:15:16.480 --> 00:15:18.079
Okay, I had to map this out.

s276
00:15:18.079 --> 00:15:21.600
So I was like, I'm just going to like create a very simple data model.

s277
00:15:21.600 --> 00:15:24.639
It's just exhibitors and they're not even connected.

s278
00:15:24.639 --> 00:15:26.079
They're just there in the database.

s279
00:15:26.079 --> 00:15:29.839
So I tried to get as many as I could and there was some data cleaning to do.

s280
00:15:29.839 --> 00:15:31.839
And now then then uh I was worried.

s281
00:15:31.839 --> 00:15:35.120
I was like, "Oh god, conference Wi-Fi is terrible typically."

s282
00:15:35.120 --> 00:15:36.959
So I need like an offline mode.

s283
00:15:36.959 --> 00:15:38.480
So then I had this other thing.

s284
00:15:38.480 --> 00:15:54.639
I put Neo forj running on here and then I was like, well I I could have this thing so if I'm offline it'll use some reaxes and stuff and parse out of the audio voice to text the booth number and maybe it can write a query to insert it in this local database.

s285
00:15:54.639 --> 00:16:03.360
And you know again if this if this thing is uh if this thing is up which I at this point I'm not even I'm not even sure.

s286
00:16:03.360 --> 00:16:06.240
Um, we're going to try cipher.

s287
00:16:06.240 --> 00:16:09.519
Uh, my cipher shell browser.

s288
00:16:09.519 --> 00:16:10.959
Oh, I should spell right.

s289
00:16:10.959 --> 00:16:11.600
Let's go.

s290
00:16:11.600 --> 00:16:13.600
Cipher.

s291
00:16:13.839 --> 00:16:14.800
Shell browser.

s292
00:16:14.800 --> 00:16:23.680
So, this is like a little program I wrote to talk to Neoforj databases without a very expensive guey and things like that.

s293
00:16:23.680 --> 00:16:28.240
And I should be able to match all my exhibitors and return those.

s294
00:16:28.240 --> 00:16:31.920
So, this is talking to the database that's running in here around my neck.

s295
00:16:31.920 --> 00:16:37.360
And as I go in here and I look, I could say, "Oh, yeah, there's Microsoft, Minmax, CI, right?"

s296
00:16:37.360 --> 00:16:40.959
And so this is me and I had on these like my raw notes.

s297
00:16:40.959 --> 00:16:43.279
It's like, "Oh, this is like the raw notes that I took.

s298
00:16:43.279 --> 00:16:46.079
I'm at this booth and blah blah blah."

s299
00:16:46.079 --> 00:16:46.399
Right?

s300
00:16:46.399 --> 00:16:54.800
So I and I took that data and then I uploaded it later up into Neo4j in the cloud.

s301
00:16:54.800 --> 00:17:00.800
And in the cloud, um, it looks a little bit different because I've now enriched it.

s302
00:17:00.800 --> 00:17:07.679
And so if we look at this, let's see if I can just move back into Neo forj for a second.

s303
00:17:07.679 --> 00:17:11.039
And here I'm going to look for exhibitors, right?

s304
00:17:11.039 --> 00:17:12.720
And here are my exhibitors.

s305
00:17:12.720 --> 00:17:15.120
And the exhibitors, I can click on one.

s306
00:17:15.120 --> 00:17:18.240
And you can see they're actually connected to something else.

s307
00:17:18.240 --> 00:17:20.319
So I did load all their data in.

s308
00:17:20.319 --> 00:17:23.839
So here's, you know, got the notes all cleaned up now on them.

s309
00:17:23.839 --> 00:17:26.559
But you'll notice that these other things are connected to.

s310
00:17:26.559 --> 00:17:33.840
And the things that they're connected to is I'm going to put in here they're connected to all sorts of other things.

s311
00:17:33.840 --> 00:17:38.640
And I'm going to put a path through them and return the path.

s312
00:17:38.640 --> 00:17:42.799
And we end up with something like this.

s313
00:17:42.799 --> 00:17:47.600
This shows how they're all connected to some other theme nodes.

s314
00:17:47.600 --> 00:17:52.240
So at some point I figured out, oh look, there's some themes that exist here.

s315
00:17:52.240 --> 00:17:54.320
Evaluation and observability.

s316
00:17:54.320 --> 00:17:55.919
Build kite has that theme.

s317
00:17:55.919 --> 00:17:57.840
Lang chain has that theme, right?

s318
00:17:57.840 --> 00:18:06.160
So I I was like, okay, I've got I've actually generated some knowledge that was maybe novel that maybe nobody has any, right?

s319
00:18:06.160 --> 00:18:07.360
So are there themes?

s320
00:18:07.360 --> 00:18:08.160
Yes, there are themes.

s321
00:18:08.160 --> 00:18:14.720
So these this is the data dump that I collected by walking around the booth and figuring out what the themes were.

s322
00:18:14.720 --> 00:18:16.960
So there's a whole bunch out there.

s323
00:18:16.960 --> 00:18:20.400
And um I know I'm just about at my time.

s324
00:18:20.400 --> 00:18:30.880
The thing uh I will point out for folks that are interested uh in talking more, I did subsequently upgrade the agent memory that I have using the agent memory service.

s325
00:18:30.880 --> 00:18:39.120
Basically, I wanted to load all of the WhatsApp messages that I ever had in all and it's been a while I've been talking to it as you see.

s326
00:18:39.120 --> 00:18:44.000
I wanted to upload all of those in there and see if I could get some kind of insights out of those.

s327
00:18:44.000 --> 00:18:47.600
And sure enough, I use this Neo Forj agent memory service.

s328
00:18:47.600 --> 00:18:57.039
And if you log into this sort of thing, at some point I just connected it up and that allowed me to get a whole bunch of memories from the conversations

s329
00:18:57.039 --> 00:18:59.760
and then it distilled them out.

s330
00:18:59.760 --> 00:19:06.640
And you can see here that uh I've got all these different things, these conversations that I've had and so forth.

s331
00:19:06.640 --> 00:19:17.120
And this will allow me to browse those memories and um for example, all the people I've spoken to or the locations, the concepts, whatever.

s332
00:19:17.120 --> 00:19:29.760
So this these are all the things that I've been doing talking about with my claw and they're all distilled out into memories that are now accessible via an MCPU server from this very claw.

s333
00:19:29.760 --> 00:19:33.760
So anyway, that gives you some flavor of how this stuff works.

s334
00:19:33.760 --> 00:19:36.320
Please come see us at booth P3 over there.

s335
00:19:36.320 --> 00:19:37.840
I can tell you a lot more.

s336
00:19:37.840 --> 00:19:45.440
If you're just getting started with graph, you can go to Graph Academy, which is this link right there, and we've got all these hands-on courses.

s337
00:19:45.440 --> 00:19:47.280
It's all totally free to use.

s338
00:19:47.280 --> 00:19:51.039
So, please either uh visit us there or even better at the booth.

s339
00:19:51.039 --> 00:19:53.600
Thank you so much.

s340
00:20:07.178 --> 00:20:09.178
[music]
