WasmEdge Plug-ins
For those workloads which are too heavy to compile into WebAssembly, it would be more appropriate to build them into native host functions. To satisfy the portability of WebAssembly runtime, WasmEdge introduced the plug-in mechanism to make the host functions loadable and portable.
The plug-in mechanism for WasmEdge is an easy way to extend the host modules from loadable shared libraries. With the plug-ins, users can load and instantiate the host functions from the shared libraries released by WasmEdge official or even by other developers.
Official Released Plug-ins
The following lists are the WasmEdge official released plug-ins. Users can install them easily by the installer.
Plug-in | Description | Platform Support | Guest Language Support | Build From Source |
---|---|---|---|---|
WASI-Logging | Logging API for WebAssembly program to log messages. | manylinux2014 (x86_64, aarch64) ubuntu 20.04 (x86_64) darwin (x86_64, arm64) (since 0.13.0 ) | Rust | Steps |
WASI-Crypto | APIs that a runtime can expose to WebAssembly modules in order to perform cryptographic operations and key management. | manylinux2014 (x86_64, aarch64) ubuntu 20.04 (x86_64) (since 0.10.1 ) | Rust | Steps |
WASI-NN (OpenVINO backend) | AI inference using OpenVINO models. | ubuntu 20.04 (x86_64) (since 0.10.1 ) | Rust, JavaScript | Steps |
WASI-NN (Pytorch backend) | AI inference using Pytorch models. | manylinux2014 (x86_64) ubuntu 20.04 (x86_64) (since 0.11.1 ) | Rust, JavaScript | Steps |
WASI-NN (TensorFlow-Lite backend) | AI inference using TensorFlow-Lite models. | manylinux2014 (x86_64, aarch64) ubuntu 20.04 (x86_64) (since 0.11.2 ) | Rust, JavaScript | Steps |
WASI-NN (Ggml backend) | AI inference using LLM interfaces. | manylinux2014 (x86_64, aarch64) ubuntu 20.04 (x86_64) darwin (x86_64, arm64) (since 0.13.4 ) | Rust | Steps |
WASI-NN (Piper backend) | AI inference using Piper models. | manylinux_2_28 (x86_64, aarch64) ubuntu 20.04 (x86_64) (since 0.14.1 ) | Rust | Steps |
WASI-NN (Whisper backend) | AI inference using Whisper models. | manylinux2014 (x86_64, aarch64) ubuntu 20.04 (x86_64) darwin (x86_64, arm64) (since 0.14.1 ) | Rust | Steps |
WASI-NN Burn.rs backend (Squeezenet) | AI inference using Squeezenet models in Burn.rs. | ubuntu 20.04 (x86_64) (since 0.14.1 ) | Rust | |
WASI-NN Burn.rs backend (Whisper) | AI inference using Whisper models in Burn.rs. | ubuntu 20.04 (x86_64) (since 0.14.1 ) | Rust | |
WasmEdge-ffmpeg | manylinux2014 (x86_64, aarch64) ubuntu 20.04 (x86_64) darwin (x86_64, arm64) (since 0.14.0 ) | |||
WasmEdge-Image | A native library to manipulate images for AI inference tasks. | manylinux2014 (x86_64, aarch64) ubuntu 20.04 (x86_64) darwin (x86_64, arm64) (since 0.13.0 ) | Rust (0.3.0) | Steps |
WasmEdge-LLMC | manylinux2014 (x86_64, aarch64) ubuntu 20.04 (x86_64) (since 0.14.1 ) | |||
WasmEdge-OpenCV | Very popular utility functions to process images and videos for AI input/output. | manylinux2014 (x86_64, aarch64) ubuntu 20.04 (x86_64) darwin (x86_64, arm64) (since 0.13.3 ) | ||
WasmEdge-Process | Allows WebAssembly programs to execute native commands in the host operating system. It supports passing arguments, environment variables, STDIN /STDOUT pipes, and security policies for host access. | manylinux2014 (x86_64, aarch64) ubuntu 20.04 (x86_64) (since 0.10.0 ) | Rust | Steps |
WasmEdge-StableDiffusion | manylinux2014 (x86_64, aarch64) ubuntu 20.04 (x86_64) darwin (x86_64, arm64) (since 0.14.1 ) | |||
WasmEdge-Tensorflow | A native library for inferring TensorFlow models. | manylinux2014 (x86_64, aarch64) ubuntu 20.04 (x86_64) darwin (x86_64, arm64) (since 0.13.0 ) | Rust (0.3.0) | Steps |
WasmEdge-TensorflowLite | A native library for inferring TensorFlow-Lite models. | manylinux2014 (x86_64, aarch64) ubuntu 20.04 (x86_64) darwin (x86_64, arm64) (since 0.13.0 ) | Rust (0.3.0) | Steps |
WasmEdge-zlib | ??? | manylinux2014 (x86_64, aarch64) ubuntu 20.04 (x86_64) darwin (x86_64, arm64) (since 0.13.5 ) | ||
WasmEdge-eBPF | A native library for inferring eBPF applications | manylinux2014 (x86_64, aarch64) ubuntu 20.04 (x86_64) (since 0.13.2 ) | Rust | Steps |
WasmEdge-rustls (DEPRECATED) | A native library for inferring Rust and TLS Library | manylinux2014 (x86_64, aarch64) ubuntu 20.04 (x86_64) darwin (x86_64, arm64) (since 0.13.0 , until 0.13.5 ) | Rust | Steps |