0:02 Hello, my name is Taylor Stersz and this
0:03 video will be a very quick walkthrough
0:05 of my CS50 final project which I've
0:07 called the portfolio chatbot. Uh here's
0:09 my GitHub username, edex username, my
0:11 name, where I'm from, and the date the
0:13 video is recorded. Uh I've restarted the
0:15 server because I updated my database. So
0:18 I want to make sure that's fresh.
0:20 Okay, so uh let me jump over here and
0:21 say thanks real quick to the entire
0:23 staff. I've learned a lot despite having
0:25 a good deal of experience. Uh, one of
0:27 the things I learned was Python and I
0:29 wanted to put that to work in an AI
0:31 engineering project and this final
0:34 project was a great ex uh, excuse that.
0:37 Um, so this is a my final project is a
0:39 re resource augmented generation chatbot
0:41 uh that I put on my personal website. So
0:43 we've got my Python app here um, which
0:45 is a flask app that exposes a prompt
0:48 endpoint. Uh, I've got a lang chain
0:49 agent that uses some tools to augment
0:52 its responses. I implemented the chatbot
0:56 in my uh personal website. Um the Python
0:59 app is hosted in hugging face uh spaces
1:02 which is free. It's a ephemeral server.
1:05 Um I've got some vector uh embeddings
1:07 stored in Chrome cloud which is nearly
1:10 free. And then Google's cheapest model.
1:13 Uh so that's also nearly free. I'm
1:15 talking about a couple of cents a month.
1:18 So, I come over here and let's refresh
1:22 my personal site and I'll say hello
1:26 and it'll give me some information.
1:29 Then I'll say tell me about monkeys and
1:30 it won't be able to tell me about
1:32 monkeys because it can only tell me
1:34 about Taylor St. So I'll say tell me
1:37 about Taylor's Python experience of
1:39 which I have a tiny bit but I I learned
1:44 a lot in this class. So um yeah. Oh, I
1:46 think I added those recently. So, I jump
1:48 over here. This is the hugging face
1:51 space. Um, I expected to see some logs
1:54 there. Um, but I'll see some logs over
1:57 here. This is the Netlefi function
1:59 wrapper that I use to offiscate the
2:03 hugging face API token. Um, and Netlefi
2:06 is where I host the website itself. Uh,
2:08 this is the Chrome database. Uh I have
2:10 one collection stored with the uh
2:12 basically the information from these
2:14 docs which is my resume, some explicit
2:16 facts about me, some video game credits
2:19 since I work at Blizzard and my uh
2:22 GitHub profile. Uh this is my personal
2:25 website uh repo which last 10 commits or
2:27 something are me updating it. Uh and
2:29 this is the brand new repo I created for
2:33 the hugging face uh chatbot. Uh so let
2:35 me go ahead and uh just note like let's
2:37 say 240 is the first ID here. And I'll
2:40 just note that because uh I'll show how
2:42 I make the uh database.
2:45 This is a manual process to uh just save
2:48 me money basically and I only need to do
2:50 it sometimes. So created and populated
2:51 after it would have deleted everything
2:53 that was in there and we see that the
2:56 IDs change. So that's a quick walk