~ / cmdr2

projects: freebird, easy diffusion

hacks: carbon editor, torchruntime, findstarlink

// Cross-posted from Easy Diffusion’s blog.

tl;dr - Right now, what annoys me the most with Easy Diffusion is the startup time and friction, and how Easy Diffusion isn’t actually “easy” anymore - the default model (SD 1.5) is bad, users take too long to get productive, and new models require a lot of configuration. That’s what v4 aims to bring under control.

Easy Diffusion v4 needs to ship soon, this has gone on long enough.

v4’s scope (note: not everything has shipped yet):

Dropped from v4’s scope:

The main purpose of v4 is modernization, so that ED starts up quickly and makes it easy to use the latest models.

While v4 is an evolutionary upgrade for ED, it is already a huge step forward in terms of its internal engine (30x smaller and lighter than existing PyTorch-based WebUIs). v4 uses stable-diffusion.cpp, which in turn uses ggml - the same engine that powers llama.cpp and most of the open-weights LLM industry. It has excellent support for Vulkan and Quantized weights. No ROCm bullshit. This means excellent AMD/Intel/CPU support, memory-efficient image generation with quantization, and support for even smaller and older hardware.

The pieces planned for v4 will keep being released incrementally (as they’ve already been). That is, each piece will be released as soon as it’s ready, tested in beta with users, and finally merged to main once stable.

Parts of v4 (e.g. early sdkit3 integration) are already available to test (by choosing sdkit3 as the backend in the Settings tab).

The mental model for me is that ED is a living piece of software (a “Ship of Theseus”, if you will). I keep fixing/replacing the parts that annoy me/users on an ongoing basis. v4/v5 etc are external milestones, for communication and focusing purposes. To signify that something significant has happened.