๐ Lilypad Project Report: July 24, 2023
โฏ lilypad run sdxl:v0.9-lilypad1 "a corgi shot into space"
๐ Overview
Hello Friends! You might have noticed we missed a week in our Project Report.
This report is worth the wait though, because we are excited to announce that....
๐ The Lilypad v1 Testnet is now live!!! ๐
We announced this minimal testnet at Filecoin Unleashed in Paris. You can watch the replay here
You can also access the slides for this presentation in the docs here
The current Lilypad Testnet runs on a geth devmode network, however, in future, the contracts will run on the IPC network (which targets 1s tx finality time on subnets!)
We also spent time the last week supporting AugmentHack and the ETHGlobal Paris hack.
โ๏ธ Lilypad Engineering Update
We had a tremendous push to get the first Lilypad testnet live, and got it running just hours before the first hackathon started ๐ Conference-driven development at its finest!
๐ฉโ๐ป Simple developer experience
We have got installing Lilypad down to a simple one-liner:
curl -sSL -O https://bit.ly/get-lilypad && sudo install get-lilypad /usr/local/bin/lilypad
From there, you need to export a PRIVATE_KEY
environment variable for a wallet which has funds on our testnet (metamask instructions, faucet).
Then it's as simple as running:
lilypad run sdxl:v0.9-lilypad1 "a corgi shot into space"
And you'll see our cool animated job status as the job gets submitted to the smart contract, matched with a resource offer on the network, run and then the results made available through IPFS:
And then you can see the image on IPFS, inside the "outputs" folder of the resulting CID:
You can also fix the seed by passing a yaml value instead of a simple string, specifically:
lilypad run sdxl:v0.9-lilypad1 "{prompt: a corgi shot into space, seed: 42}"
(If you're paying close attention, the cover image for this blog post is actually the seed=42
version of the space corgi -- yes, we made SDXL deterministic!)
๐ Triggering jobs from smart contracts
What's more, you can trigger Lilypad jobs from a smart contract (docs), as shown in this demo:
๐ง GPU support
Adding GPU support to Lilypad was one of the goals for this initial testnet release and, as you can see from the above AI examples, we got it working! This was despite some fairly nasty hacks needed to make GPU identification in Bacalhau work from inside a container, since lilypad packages bacalhau to run inside docker, with the docker socket mounted. For now, don't look too closely ๐
โ Determinism for GPU workloads
Being able to run the same job twice, with the same inputs, and get the same outputs is essential for our verification & incentive design to work. Therefore, all the modules that are published with Lilypad will need to be deterministic. We've done some work to ensure that the SDXL module is deterministic, and it's a bit fiddly but doable. Thanks to the excellent diffusers docs on the topic!
๐ Examples you can try today
Releasing a testnet meant also releasing examples for folks to use!
So far there are 2 main examples you can run on Lilypad - on both the CLI & from a smart contract.
Cowsay - the "Hello, World!" of Lilypad
Stable Diffusion (SDXL 0.9) - a high quality text to image generative AI model
We're also working on several other examples and will aim to regularly release new modules for folks - feel free to get in touch with us if there's something you would like to see on this list (or make your own module!):
LLM model - thanks to a community member from AugmentHack, a deterministic LLM model will also be added to the Lilypad Modules
Finetuning models with LoRA
Filecoin Data preparation
Arbitrary WASM jobs
โฉ What's next
Deploy a GPU verifier on the network
Merge GPU scheduling, to make sure that GPU jobs only land on GPU nodes
Make LoRA fine-tuning deterministic (giving it the same treatment we gave SDXL)
Test whether different GPU type give the same results - if not, we'll need to make GPU type part of the job spec & scheduling constraints
Lots more!
๐ Lilypad Research Update
Excited to announce that the Lilypad Litepaper is now live! You can read it in our docs here:
In upcoming versions of the Litepaper, we will provide greater context for readers unfamiliar with distributed computing, comparisons with solutions commonly used in industry, as well as more analyses of prior distributed computing protocols.
On the topic of anti-cheating mechanisms and pricing models, in the upcoming weeks, we will be focusing on implementing our research in the code base. Initially, this will involve building out the two-sided marketplace, including the orderbook, structure of resource offers, bidding and matching mechanisms, and so on. Further down the line, we will build a simulator so that we can model and test these mechanisms in order to enable rapid iteration.
FYI - Catch up with Levi at Algovera's mini conference this week - where he'll be discussing Autonomous Agents in Distributed Computing!!
๐ Lilypad "All the Things" Update
๐๏ธ Event Talks at Filecoin Unleashed & Filecoin Builders Day.
Catch the replay for Filecoin Builders on the Filecoin Youtube here
Keep an eye out for the video on the Filecoin Foundation Youtube!
๐ฆพ AugmentHack
๐ฉโ๐ป ETHGlobal Paris
๐บ Compute Over Data WG
Psst, the 2nd COD wg Live stream is also happening tomorrow!
We'll be talking to Pablo from DefiKicks & Cem from Decentralised Yield Collector about their recent experiences building on Lilypad and their future plans.
Tune in here at 7pm CEST 27th July!
๐ฏ๐ต WebX Japan DePIN Panel
Taka from Protocol Labs also spoke about Lilypad & Waterlily.ai at a Panel on DePIN at WebX Japan!
๐ฎ What's Next?
Now that we've launched a testnet, we're going to chill out... wait, no that's not right! We're moving full steam ahead to keep researching, building out modules and trustlessness and specifically, implementing a testnet on IPC.
We're also hoping to build in some time to upgrade some of Waterlily.ai features (specifically finetuning models on SDXL 0.9 or even 1.0)
โ๏ธ Contact Us
๐ฌ Chat to us on Slack: https://bit.ly/bacalhau-project-slack #bacalhau-lilypad
Subscribe to my newsletter
Read articles from Alison Haire directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
Alison Haire
Alison Haire
Let's talk about the real things. Founder @ Lilypad Compute Network prev-@Protocol Labs | @Filecoin | @Lilypad_Tech PM | Advisor @GodwokenRises | prev-@IBM TechJam Podcast Co-Host | coder, engineer, dog lover ๐, global citizen ๐, entrepreneur ๐ฉโ๐ป, aspiring francophone ๐ฅ