[Music] Hi everyone, I'm Abel Padia software engineer at Akawave and today we are going to head the data layer for AI together with Pcoin and Akaw. Now before we move ahead with this workshop, let's discuss the goals of this workshop. The goals of these workshops are learning decentralized storage concepts, learning how Filecoin and Akawe works and how does AA complement Filecoin, what is Akawavee and Akawave 03, how to interact with your data in an agentic way, next steps and what to build with Filecoin and Akawe during ETH global rag hackathon. Now before we dive into this workshop, I would like to ask a question. Why do we even need decentralized storage for the app?
So it's quite simple. Traditional storage is fragile. It's it's centralized, prone to failure and easily censored. In AI, we are generating tons of value valuable sensitive data and it needs better protection. So what do we gain from decentralized storage?
What we gain is resilient and fault tolerant storage, content addressing over location based addressing, data sovereignty that is you own and control your own data, censorship resistance and participation in decentralized data economy that is you actually get paid to store data and sell your data. Now let's clear a common misconception before moving moving ahead. IPF filecoin is not IPFS. Now what do I mean by that? Let's differentiate between IPFS and Filecoin.
IPFS the purpose of IPFS is decentralized file sharing and retrieval. Whereas the purpose of filecoin is reliable and permanent decentralized storage with incentives. So the storage mechanism in IPFS is storage of file across network of nodes. But in file coin storage of files across the node that provide storage for a payment incentives to run IPFS node. Uh you don't get an incentive.
it's uh completely on voluntary participation whereas when you participate in filecoin uh the storage is incentivized and you are paid in cryptocurrency that is filecoin so data persistence in IPFS as the participation is voluntary there is no guarantee that the storage provider would store your data but in filecoin as it's incentivized the spa's incentive to store your data. Now let's see where does AAB fit in all of this. So as we discussed ahead Filecoin introduces a incentive based storage layer. On top of that FBM complements it with a programmatic storage that is you can write smart contract that can interact with the state of your storage directly. Now how does a complement what's already built on Filecoin?
So on filecoin when you store your data it's sealed and this sealed data is hard to retrieve because of uh the compute costs in unsealing. So it takes some time to get this data back. So we also call this uh form of storage warm storage. But a cave is a hot storage layer. We do not seal the data.
We just uh everything is client side. You can encrypt your data and store it on a cab as it is. We do not make any changes to data and it is highly accessible data layer. You can connect to the node closest to you and retrieve your data really quickly. Uh comparable to cloud storage infrastructures.
Now a delivers the best of blockchain plus web to compatibility. Now what does a offer? Cave offers an S3 compatible API that works with all your web 2 applications that already uses uh S3 packages up to 80% cost savings because of no eress uh no or low egress costs onchain indexing that is your data is 100% traceable on a cave chain itself data wallets as AI agents come into play uh the data itself is linked to a wallet. So your AI agent can have access to a wallet that can control the data. So AI agents can act agentically on data.
Now let's see how this all works. How AAI works under the hood. So when your data enters through a client application, be it AA 03, AAV CLI, AAV JS wrapper or AA link, it goes through our Go SDK. Then the object itself is stored on our contracts and the data is chuned and it is coded across all our hot storage layers that is a cover nodes and after these nodes collect 32 gigs of data they seal it and store it on filecoin. So your data is erasia coded and then backed up on filecoin.
So there's no way you're going to lose your data. Now let's look at data security framework. This is just to zoom in into this specific part. So if you look here when you upload your file it's split into 32 megabits chunks. Each chunk is split into uh data block less which is less than or equal to 1 mgabit.
Now this is encrypted using encryption key or your private key which is client side. Now this uh this data blocks are eraser coded that is parity blocks are added to this and stored on a nodes. So if a few of the nodes do go down we can recover the original data itself using read solommen recovery and get the original file back is a 03. A 03 is our S3 compatible decentralized object storage layer. It brings the best of web 2 compatibility with web3 transparency.
Benefits of Akavo3 are plug and play for any apps via S3 API, low egress cost, onchain indexing, everything that we talked before in a familiar way. Now let's look at Akave 03 demo. Before starting 03 demo, I'd like to point out you guys to docs.acave.xyz.
XYZ or docs.acave.ai and you can go through a 03 setup to set up your CLI. Uh for this workshop itself, I'll be assuming that the uh AWS S3 CLI has been installed and Akave 03 environment has been set up. So I'll go ahead with the 03 demo assuming the following.
Okay. So also one more thing to get this access key ID and a cave secret key you can visit our booth uh at e global or ping us on discord channel. We'll reach out to you and provide those credentials as it is still uh in release candidate phase. So, I'll move myself here. Now, as you can see here, I'm using AAVE 03 with AWSS3 CLI.
So, it works similarly to AWSS3. Just replace the endpoint URL with AAVE 03's endpoint URL and it just works. So these are all the buckets I currently have. Let's make a new bucket. Let's make bucket named E global [Music] demo.
And we have successfully created the bucket. Let's list the buckets again to verify that. So as you can see here we have the global bucket created. We can also create some random file to upload to that bucket. as I I'm creating a unique random file of 10 1 MB.
Let's do ls. As you can see here, we have 1 MB file right here. Let's upload this file to the newly created bucket agave S3. pp/ test.txt.
Okay, as you can see here the data is being uploaded. See though, so the data has been successfully uploaded to a cavi. So that's it. uh is it's as easy as using AWS S3 but instead of using cloud infrastructure you are using now decentralized cloud infrastructure. So let's list the files in the bucket and we can see right here the test txt that we just uploaded.
Now I'll make a download directory and download the newly created file to that download directory to show that the download command works. So every every single command that I'm using here is uh similar to AWSS3. There are millions of documentation out there. So you can search for every single command you need or you can go to Akave and see every single command that is supported by Akave. So that's all about Akave and let's move ahead with our workshop.
So before going through MCP demo, I'll recommend everyone to go through this model context protocol documentation developed by anthropic uh to learn more about MCP. So now I'll be demoing MCP with a local LLM. So your data never leaves your PC and all the compute is local. Now for this prerequisites are having Ola installed and having a low a small model that can run on your PC like quen 2.5 with 7 billion parameter already pulled.
If you don't know how to do that you can go to.com and can download models from there or download Oola first then pull the models from here. Okay. uh to run an MCP server but you can go through our code at akawave AI/ Aav MCP wrapper where you can find uh stepbystep guideline or how you add it to desktop. I'll just be doing this usage with local part.
So before starting we'll need an MCP configuration. So I'll use this configuration. Let's see what exactly is in this configuration. As you can see this is just a normal JSON within npxy AAV MCPJS with all your uh AAV credentials here. This is just a test credential.
So, uh please do not copy this. Uh if you need this credentials, you can reach out to us on discord and we'll provide you with fresh one. Now, I can just go ahead and [Music] run this um MCP host. So what we are doing right here is utilizing a local LLM to run an MCP client. MCP server comes from NPX that is AA MCPJS that is a published package already.
You can go to npmjs and take a look at it. inp MCPJS. So this is where we are pulling the uh the MCP server code from. So all you need to run this MCP client is this JSON file. Installing MCP host.
These steps are given over here. You just need to do a go install of MCP host and have all my installed. That's it. And you are ready to learn a run a local LLM that can connect with your uh onchain storage. Let's see.
Now let's ask this AI list the kits I have in Akavi. So as you can see the assistant has respond with following buckets and we can also see ETH global demo that we just created using 03 API thus proving that it is connected to the same uh 03 instance that I was using with AWSS3 CLA. Now we can ask it to go in my blocks look for files and this bucket as you can see it has listed all the files in the bucket that is these three files I'll take one of these files and ask it to read it read file as you can see it has returned the contents of brief blog post txt it shows how you can interact with your data in an agentic manner the sky is limit you can go ahead and forc a mcp repo and take it further create multiple features that even I cannot think of so go ahead and help with it if you have any questions reach out to us on akav telegram or any questions related to filecoin you can ask it on field builder channel thank [Music]
Automatic transcript — names and jargon may be misspelled.