#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

#163 in WebAssembly

Download history 38/week @ 2024-08-23 149/week @ 2024-08-30 131/week @ 2024-09-06 114/week @ 2024-09-13 350/week @ 2024-09-20 109/week @ 2024-09-27 29/week @ 2024-10-04 234/week @ 2024-10-11 26/week @ 2024-10-18 165/week @ 2024-10-25 120/week @ 2024-11-01 76/week @ 2024-11-08 49/week @ 2024-11-15 116/week @ 2024-11-22 91/week @ 2024-11-29 141/week @ 2024-12-06

399 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

~235–690KB
~16K SLoC