#wasm-edge #diffusion #stable #wasi #executed #model #function

wasmedge_stable_diffusion

A Rust library for using stable diffusion functions when the Wasi is being executed on WasmEdge

7 releases

0.3.2 Oct 28, 2024
0.3.1 Oct 11, 2024
0.3.0 Sep 26, 2024
0.2.2 Sep 24, 2024
0.1.0 Aug 21, 2024

#169 in WebAssembly

Download history 161/week @ 2024-09-01 162/week @ 2024-09-08 78/week @ 2024-09-15 385/week @ 2024-09-22 72/week @ 2024-09-29 217/week @ 2024-10-06 43/week @ 2024-10-13 21/week @ 2024-10-20 187/week @ 2024-10-27 106/week @ 2024-11-03 72/week @ 2024-11-10 116/week @ 2024-11-17 113/week @ 2024-11-24 24/week @ 2024-12-01 164/week @ 2024-12-08 55/week @ 2024-12-15

358 downloads per month
Used in llama-core

Apache-2.0

38KB
1K SLoC

WasmEdge Stable Diffusion

A Rust library for using stable diffusion functions when the Wasi is being executed on WasmEdge.

Set up WasmEdge

git clone https://github.com/WasmEdge/WasmEdge.git
cd WasmEdge
cmake -GNinja -Bbuild -DCMAKE_BUILD_TYPE=Release -DWASMEDGE_BUILD_TESTS=OFF -DWASMEDGE_PLUGIN_STABLEDIFFUSION=On
cmake --build build
cmake --install build

Download Model

Download the weights or quantized model from the following command.
You also can use our example to quantize the weights by yourself.

stable-diffusion v1.4: second-state/stable-diffusion-v-1-4-GGUF
stable-diffusion v1.5: second-state/stable-diffusion-v1-5-GGUF
stable-diffusion v2.1: second-state/stable-diffusion-2-1-GGUF

curl -L -O https://huggingface.co/second-state/stable-diffusion-v-1-4-GGUF/resolve/main/sd-v1-4.ckpt

curl -L -O https://huggingface.co/second-state/stable-diffusion-v-1-4-GGUF/resolve/main/stable-diffusion-v1-4-Q8_0.gguf

Run the example

cargo build --target wasm32-wasi --release
wasmedge --dir .:. ./target/wasm32-wasi/release/wasmedge_stable_diffusion_example.wasm

Then you can see the three new files.

  1. sd-v1-4-Q8_0.gguf: is the quantization of sd-v1-4
  2. output.png: an image with a cat
  3. output2.png: an image of a cat with blue eyes.

Dependencies

~255–720KB
~17K SLoC