Spent some more time on the v4 experiments for Easy Diffusion (i.e. C++ based, fast-startup, lightweight). stable-diffusion.cpp
is missing a few features, which will be necessary for Easy Diffusion's typical workflow. I wasn't keen on forking stable-diffusion.cpp, but it's probably faster to work on a fork for now.
For now, I've added live preview and per-step progress callbacks (based on a few pending pull-requests on sd.cpp). And protection from GGML_ASSERT
killing the entire process. I've been looking at the ability to load individual models (like the vae) without needing to reload the entire SD model.
sd.cpp for Flux in ED in 3.5?
As a side-idea, I could use sd.cpp as the Flux and SD3 backend for the current version of Easy Diffusion. The Forge backend in ED 3.5 beta is a bit prone to crashing, and I'm only using it for Flux.
Long-term considerations side, it might be an interesting experiment to try sd.cpp in ED 3.5 and see if it's more stable than Forge for that purpose.
I could write a simple web server with a similar API as Forge and ship it.