And with that, it gives me enormous pleasure to introduce you to this week's business challenge.
This week, of course, all about accelerating your business or your client's business.
And this is such a classic, classic use case, such as something that you can immediately go out there
and implement for clients.
The setup is we need to build an expert that is more than more than a chatbot.
This has got to be something that can answer detailed, in-depth questions for your client about their
business and the client in this case for this setup, has a lot of information about a lot of products
in a big Google Sheet, huge document, and they want something that can quickly answer questions that
pertain to any of this information.
And of course, we'll be working with a fairly big but not massive massive.
The idea is this needs to be scalable so that you could be working with so much data.
You could be working with enterprise level data if you wanted, or if you're a startup, then your company,
your clients data.
so it could be able to work with huge quantities of data.
Classic Rag business setup.
Okay, so for our solution, as I mentioned yesterday, we're going to be using this managed database
provider called Superbase.
There are easier ways we could do this.
There are built in databases and with with nodes that make life much easier for us.
And I've made life a bit harder for us by choosing Superbase.
And I had a reason for that, which is that Superbase is very popular.
It's a great third party database, and it's something that many other people use.
And so by giving you the skills to integrate with Superbase, it's like a big tick in the integrations
list for you to have worked with Superbase.
And it means that it's another set of credentials that will be set up, and it's something that you'll
be able to use and extend for many other purposes.
So I think it's an important infrastructure step.
And that's why I picked a slightly harder challenge in saying we would integrate with a Postgres database
on Superbase.
It has one downside, which is there is going to be one point where we have to run some code, which
I'm going to give you and which you will execute in supabase to set up the database, and you will be
in your rights to think, ah, this is meant to be a low code.
No code course.
How would I be able to do this myself?
And I will talk you through that.
At the time, I'm not going to talk through the code.
I'm going to explain how you could generate this yourself.
And it's super easy and how you could handle things like problems with it.
But that's so that's just going to be an obstacle for us to get through.
But apart from that, Supabase is going to be fabulous.
And it's certainly very much a heavyweight, scalable solution.
And when I say heavyweight, I mean in the kind of like enterprise grade sense, it's actually quite
a lightweight, easy to use platform.
Supabase I think you're gonna like it.
All right.
Today is all about data ingest.
And look, in one way, I'm going to dive in a bit deeper and build up some of your skills.
We're going to do some data transformation using a node in an called edit fields used to be called set.
Uh.
And it's such a crucial node and this is really good core skills.
So I've I've done well there in another way.
I'm taking a bit of a shortcut in that the source of data we're going to use is going to be a Google
sheet.
And you know we've done this a few times now.
We've used Google Sheets as our input data a lot.
And you might be thinking, ah, that's a bit boring.
Like I was originally thinking.
It would be pretty cool to have it.
So there'd be a Google Drive folder, and every time you drop documents into that Google Drive folder,
it would automatically kick off our data ingest pipeline.
And so that would indeed be cooler.
Uh, but it turns out there is a little bit of lift associated with that particularly there's some credentials
authentication stuff.
It's a big OAuth two thing which which I think would be too much of a distraction right now.
We're going to do all of that next week.
We're going to set it up so that you can do that.
And so you could absolutely then come back and beef this up so that it's just got that extra step that
you don't just update a Google sheet, but rather you can just drop a document in a Google Drive in
a folder and that would automatically kick off your workflow.
And I do think that would be quite cool.
So so I would encourage you, after we've, we've built up those skills next week, that you could come
back and further improve this, but for now, it seemed to me like that was it was too much of a distraction.
It would be like a one hour sidebar to get all of that set up, and I would rather we focus on Rag and
get this thing done.
So the sort of shortcut is that our source of data is going to be Google Sheet, which we already know
how to do.
So that part's going to be easy.
And we're going to be spending our main time focusing on the Agentic rag build out.
And tomorrow we will also, of course, add in the question answering part of this.
So that we've done the data in yesterday, we've added the question answering tomorrow and that will
complete a genetic rag, a commercial build.
And for sure we're going to add in a voice agent tomorrow.
And then it's also going to connect with you.
I think it will land as to why I've talked about building the the business logic in N810 and then having
11 labs be built as the voice agent that drives the workflow.
I think that's going to make a lot of sense.
We're doing that that second approach for how we integrate 11 labs with N810.
The N810 workflow focuses on the business logic.
All right, enough with the talk.
Time for the doing.
Let's go and set up our data ingest.
Okay.
Let me start by introducing you to some data.
The data that is sitting right here this.
This is a Google sheet that your client has shared with you.
In our example.
And it's a sheet full of the products that they sell in their online store selling computer accessories.
And you can see the names of the products, their their categories, their SKUs, uh, and the price
and what they, what they are description.
And there's a bunch of them.
There is, in fact, not that many.
There's 60 because I don't want to, like, like, uh, do something that's super.
That's expensive in any way.
I want to give this as an example.
The point I want to show you is that this is 60, but it could easily be 60,000.
What we're going to do is going to be incredibly scalable.
And that's the point.
And should you wish to, to generate more data or use your own, I would love that.
That's very much to be encouraged.
We're using Google Sheets for this, as I say, because it's something we've already integrated with.
So it's super easy for us to pull in this data.
There would of course, be more, uh, definitely a more advanced mission for you would be to try an
already solve that that next step problem of have it be any document dropped in a shared Google Drive.
That would be really cool.
But it's also great just to imagine you've been given this sheet.
It's the kind of thing that really happens.
And so that's what we're working with.
This is the data we've got.
And we should get used to it, because we're going to be reading it in and analyzing it and doing stuff
with it.
Let's go and get started with that right now.
Okay.
So we're going over to Nate and I.
And we're going to press the sign in button.
Come into our workspace here.
And here we are in the home screen.
And we're going to create a brand new workflow.
Okay.
So first of all what's going to trigger this workflow.
Well there are a lot of interesting things we could do to trigger this workflow.
Like when a sheet changes when a file is dropped in the Google Drive, I'm going to keep it quite boring
and trigger it manually.
We're going to have plenty of time to add more interesting triggers in the future, but we're focusing
on Rag today, so we're just going to focus on the data pipeline.
But feel free.
You can make it so that when you send a slack message or a telegram message, that's what wakes it up.
Whatever we want, this is going to kick off our data, ingest pipeline, load in the data from that
Google sheet and put it in super base in a vector store.
That's what we're building right now.
And at this point I'm, I'm going to to roll up my sleeves because we're about to get deep into some
data, which I always enjoy doing.
And so should you.
Uh, if you're wearing a short sleeve t shirt, then you can just imagine you can just go through the
motion as we get into our data set.
And we're going to start by having a Google Sheets in here.
We are going to want to read our rows.
Uh, so that is get rows in sheets.
If you remember this.
Well we're going to get rows.
I'll, I'll fill this in so that we can pull in all of the stuff in that product sheet.
Here we go.
So I've selected products from here.
And now it's obviously there is only one sheet.
It's sheet one.
And this all sounds great okay.
That is going to get the rows from our Google Sheet.
Let's press Execute Workflow.
And if you've got this this manual when clicking on Execute workflow this manual trigger you just press
the button and it runs.
And we've just loaded this in.
And so if we double click here you can see that it's run.
And you see here an example the 60 items that were indeed 60 items.
And this would be one of them.
Uh, the Nova key tactile keyboard coming in like this.
Uh, so, uh, great.
We've brought in our data.
What next?
Well, this, of course, is the extract stage of ETL extract transform load, which means the next
step is transform.
And so we want to just massage this data to be in the format that's going to make most sense for what
we have to do.
And to do that we need to look up a node.
In the previous version of this used to be called set.
In the new version it is called edit Fields and look they put set in brackets afterwards because that's
what it used to be called.
This used to be the set node.
Now it's the edit fields node.
And so what we see here is that on the left we've got the data coming in.
Uh and on the right is whatever we're going to massage it to uh, which would be the best possible format
for our knowledge base.
And so that that mapping is what we're going to do now.