wasi-nn VS llama.cpp

Compare wasi-nn vs llama.cpp and see what are their differences.

wasi-nn

Neural Network proposal for WASI (by WebAssembly)

llama.cpp

LLM inference in C/C++ (by ggerganov)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
wasi-nn llama.cpp
3 775
402 57,463
4.7% -
5.6 10.0
7 days ago 2 days ago
Rust C++
- MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

wasi-nn

Posts with mentions or reviews of wasi-nn. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-11-21.
  • Self-Hosting Open Source LLMs: Cross Devices and Local Deployment of Mistral 7B
    6 projects | news.ycombinator.com | 21 Nov 2023
    I really like the post that they mention (https://www.secondstate.io/articles/fast-llm-inference/). The reasons for avoiding python all resonate with me. I'm excited to play with WASI-NN (https://github.com/WebAssembly/wasi-nn) and that rust code is very readable to load up a GGUL model.
  • Run LLMs on my own Mac fast and efficient Only 2 MBs
    5 projects | news.ycombinator.com | 12 Nov 2023
    Mmm…

    The wasm-nn that this relies on (https://github.com/WebAssembly/wasi-nn) is a proposal that relies of arbitrary plugin backends sending arbitrarily chunks to some vendor implementation. The api is literally like set input, compute, set output.

    …and that is totally non portable.

    The reason this works, is because it’s relying on the abstraction already implemented in llama.cpp that allows it to take a gguf model and map it to multiple hardware targets,which you can see has been lifted here: https://github.com/WasmEdge/WasmEdge/tree/master/plugins/was...

    So..

    > Developers can refer to this project to write their machine learning application in a high-level language using the bindings, compile it to WebAssembly, and run it with a WebAssembly runtime that supports the wasi-nn proposal, such as WasmEdge.

    Is total rubbish; no, you can’t.

    This isn’t portable.

    It’s not sandboxed.

    If you have a wasm binary you might be able to run it if the version of the runtime you’re using happens to implement the specific ggml backend you need, which it probably doesn’t… because there’s literally no requirement for it to do so.

    There’s a lot of “so portable” talk in this article which really seems misplaced.

  • The Promise of WASM
    4 projects | dev.to | 26 May 2022
    in machine learning (https://github.com/WebAssembly/wasi-nn)

llama.cpp

Posts with mentions or reviews of llama.cpp. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-05-04.

What are some alternatives?

When comparing wasi-nn and llama.cpp you can also consider the following projects:

wasmer - 🚀 The leading Wasm Runtime supporting WASIX, WASI and Emscripten

ollama - Get up and running with Llama 3, Mistral, Gemma, and other large language models.

distroless - 🥑 Language focused docker images, minus the operating system.

gpt4all - gpt4all: run open-source LLMs anywhere

wagi - Write HTTP handlers in WebAssembly with a minimal amount of work

text-generation-webui - A Gradio web UI for Large Language Models. Supports transformers, GPTQ, AWQ, EXL2, llama.cpp (GGUF), Llama models.

WasmEdge-WASINN-examples

GPTQ-for-LLaMa - 4 bits quantization of LLaMA using GPTQ

ggml - Tensor library for machine learning

alpaca.cpp - Locally run an Instruction-Tuned Chat-Style LLM

FastChat - An open platform for training, serving, and evaluating large language models. Release repo for Vicuna and Chatbot Arena.

rust-gpu - 🐉 Making Rust a first-class language and ecosystem for GPU shaders 🚧