๐ Lilypad Project Report: August 21, 2023
Building strong foundations, lilySAAS, starting a research simulator & pushing forward on IPC integration, join the open data hack!
> lilypad run sdxl:v0.9-lilypad1 "purple jellyfish in the sky"
If you're wondering about our image - we used this in a live meetup demo last week - it's crowdsourced! ;)
๐ Overview
This week was spent working on the foundations of Lilypad and planning for the future (excuse the 90s throwback gif...)
The Game Theory Simulator, which will be used to test and optimise for various scenario's in Lilypad's trustless distributed compute network is well under way - with Kai & Levi pairing up on this.
Meanwhile, work towards Larana - the testnet built on IPC continues.
โ๏ธ Lilypad Engineering Update
There are three main threads currently for the Lilypad engineering effort.
๐ง LilySaaS - AI API & web frontend
We're hard at work on a new frontend for the Lilypad network which is an API you can send requests to and get AI inferences and fine-tuning results back from.
This API will have a web application frontend that you can sign up for, get an API key, send requests and get responses.
The web application frontend will also allow us to showcase all sorts of cool stuff you can do with the models directly in the browser.
By building a great AI API frontend, we hope to drive demand on the network so that (a) users can easily buy easy-to-use AI compute that is lower cost due to the decentralized infrastructure it runs on and (b) node operators will have more traffic of jobs to service on the network.
And yes, we need a better name than LilySaaS ๐
๐ IPC/FVM compatibility
We've had quite an adventure trying to write a minimal reproducer for the filters issue we've seen on IPC, which is blocking us from launching the Larana testnet on IPC. For those who don't know, IPC is the name for Interplanetary Consensus, a scaling solution for Filecoin that enables the creation of smaller, L2 chains with much faster block times and lower gas costs that "roll up" to the top level Filecoin network for security. Exactly what we need to run a high performance on-chain scheduler for compute jobs!
The current blocker for running our code on IPC is an issue where the code in Lilypad which interacts with the smart contracts depends on being able to create server-side filters in order to be notified when new events show up on the contract. The entire system is event-driven and so this is core to the operation of the network.
The issue we were having was that when creating and then subscribing to a filter on the IPC subnet, we were just getting null
back from the RPC endpoint. The python library was instead expecting a list type, and so it was blowing up. Furious debugging ensued, and after lots of collaboration with both the IPC and FVM teams, we narrowed it down to the issue being that filters weren't supported via HTTP. We switched to websockets - and presto! - we hit the next problem ๐ (progress, at least).
Well, the next problem is that the websocket connections die with ping timeout
after 60 seconds. So we set to work creating a reproducer. Set up a minimal contract to emit an event. Write the code to deploy it, create a filter, call a function.
It only goes and bloody works.
OK, so it must be the size of the contract -- the Modicum contract we're using is significantly bigger. Nope - drag in the entire Modicum contract and it still works (this time, it works against IPC but not Calibration!)
So, we are now faced with the dilemma of which piece of complexity in the real codebase to bring into the minimal reproducer next. To be continued...
๐ฑ What's next: Testnet rewrite
As well as continuing to run down issues with IPC compatibility, we have in store a complete rewrite of the Testnet code in Go (rather than the current codebase's Python), based on the updated architecture that's being determined through the simulator and the game theory work. We're excited about the benefits to performance and development velocity that will come from the rewrite, and painfully aware of the cost of second system syndrome.
Work will begin on this in earnest shortly.
๐ Lilypad Research Update
We're currently working on two main branches:
Simulator
The simulator is a digital twin of the Lilypad network, written in Python. Its primary utility is in modeling the complexities of the economics of the system, while avoiding the complicated cryptography, networking, and other unrelated issues. This has inspired many long conversations about the best approaches to designing the two-sided marketplace, which we are substantially upgrading from the testnet based on Modicum. We've spent most of the last two weeks building the plumbing of the simulation, including the actors in the system, the attributes they need, and making them all extensible.
v1 Docs
The v1 docs will provide a basic introduction to a number of topics related to the game theory of the network. This includes a brief introduction to verifiable computation, an overview of select prior verification-via-replication protocols, an explanation of the first-principles approach that we're taking, and a list of some of the mechanisms that we want to test in simulation. Some of these approaches are based on the existing academic literature on verification-via-replication anti-cheating protocols, others are based on common themes in cryptoeconomics, and others are based on some original thinking.
๐ Lilypad "All the Things" Update
Chainlink x Filecoin Meetup at RMIT University Melbourne
Last week, Alison Haire joined a joint Meetup with Chainlink at RMIT Melbourne discussing the future of web3 cross-chain protocols, computation and more.
Turn out was good with more than 50 interested developers joining in the conversation and folks were very interested in the kind of capability Lilypad had for the future of AI & ML research and academic operations as well.
Whilst there isn't a recording, the slides are available to peruse here.
Protocol Labs All Hands Update
Want a 2 minute update? We got you!
CODwg Live Jam Session 03
This session we hosted Simon Worthington as a guest to talk about his work with both early Lilypad (he helped build Lilypad v0!) and also Bacalhau and Expanso.
This was an inspiring talk covering how we make #OSS and #DeSci viable models for the future where Data can be both privacy protected and shared.
The recording is available on the Filecoin YouTube.
๐ฎ What's Next?
We keep building! We're also supporting the Open Data Hack with a 6k Bounty and we'll be in Iceland for FIL:Dev Summit at the end of September (bonus - it's a great time for the Northern Lights!)
Open Data Hack
๐ 30 August - 20 September
๐ https://www.encode.club/open-data-hack
๐ฐ $6000 Bounty (Lilypad Integrations!)
FIL:Dev Iceland
Mark your calendar for FIL:Dev Singapore & Fil:Dev Iceland! Several of the Lilypad team will be attending & talking at this upcoming event & we'd love to chat with you too! Reach out if you want to get in touch with us.
Join FIL:Dev Summit here!
โ๏ธ Contact Us
๐ฌ Chat to us on Slack: bit.ly/bacalhau-project-slack #bacalhau-lilypad