STORY
Pitch: DoorMan
AUTHOR
Joined 2023.07.07
PROJECT
DATE
VOTES
sats
COMMENTS

Pitch: DoorMan

DoorMan wraps the popular open-source gen-ai user interface and image-gen model (Automatic1111).

By wrapping the frontend it can attach sats and route requests to lightning-gated workers running a compatible backend on per-job basis.

With a simple npm install, you can launch the industry standard workbench locally, fund a remote worker, and submit jobs to it. Or by running with the --bossman flag, set it up to run on your gaming PC and start earning sats.

πŸ’° Value Proposition

  • Prompters bypass hardware requirements and sysadmin savoire-faire without needing to used closed source api's or services

  • Prompters don't pay for idle time like on the cloud; and they can easily pay for parallel batch processing on multiple workers.

  • Workers can earn on GPU idle time, and model curation.

  • Workers can earn on serving proprietary models.

  • Access to [multiple] ai apps, and new models without install and storage.

πŸ“ΊVideo

In first 5 minutes of our Pitch Video we lay out the case for why we want to use existing open source repo's and communities when adding bitcoin into open source AI. Using this approach we can:

  • The user interface is already well known and used

  • We can pull from upstream and continue to stay on the edge of AI capabilities and ui features

The ultimate idea of DoorMan is this same technique can be deployed to incorporate other open-source AI models: both image ones like InvokeAI, but also language models like LLaMA and GPT4All.

πŸ›£οΈ App Walk Thru

Doorman contains two main screens:

  • AI-Workbench - chose workers, monitor credits and create art

  • Admin Panel - used to monitor workers and add funding to them.

AI-Workbench:

  • Will show your total available credits.

  • Allow you to select a 'Preferred' worker to send jobs to.

  • Will show a log of previous generations.

Admin-Panel:

  • Will show details on your workers.

  • Allow you to add funding to them.

  • Coming soon: manage worker-based fees and supported models.

See the final two minutes of our video for a lightning demo of funding and using multiple workers, getting them to send images when payment is valid (and refusing to send image when payment is invalid).

πŸ’― Features

  • DoorMan client, and BossMan Server.

  • Admin Panel for viewing workers and adding funding to them.

  • Cloned AI-Workbench UI, enabling user to run the UI without installing a backend or models.

  • SQL transaction based approach to gating requests with paid invoices server-side, sql based lookup of available credits and job routing client side.

  • Client-side download/save of assets created on workers

πŸ“Š Architecture

Ultimately we're building a client, DoorMan, and server, BossMan that talk each other.

The client needs to proxy requests from the browser based workbench and admin panel up to the server, attaching sats onto the requests and route them to an available worker. The server needs to check those payments for validity and pass that request into their ai backend and respond to the client.

There are several hacks needed to get this to work with Automatic1111 as it stands, which are handled in the communication intercept points of Bossman/Doorman, and will maintain compatibility between separate machines running the UI and the AI-Engine. Check out minutes 7-12 where we walk through this more thoroughly.

πŸ§‘β€πŸ’» Tech stack

  • Typescript Express + SQLite App

    • Vanilla client-side javascript for interface with AI-Workbench

    • EJS templates for Admin Panel

    • Axios for inter-process communication

  • Automatic1111

    • Websocket proxying for reverse engineering API

    • Cloning Frontend UI

    • Running Backend on Workers

  • LNbits Wallet with LND for:

    • invoice generation

    • payment checking polling

  • Google Compute Engine for Worker Deployment

    • running Stable Diffusion on T4's

🌐 Team

  • Will @Dev10 - Backend, Frontend

  • Brandon @Voltage - Design, Frontend