alexcrichton opened issue #14937:
Since its inception (I think at least) the
wasmtime-wasi-nncrate andwasi:nnhas been developed in-tree in Wasmtime. The activity in this area has been pretty reduced as of late, however, and there have additionally been some historical difficulties with this setup which are starting to come up again. For example:
- Right now there's a RUSTSEC advisory for a transitive dependency of
wasmtime-wasi-nnwhich is as-of-now unresolvable. This is a many-levels-deep transitive dependency which requires multiple dependency updates which hasn't happened yet.- In general the dependency tree of
wasmtime-wasi-nnis quite large and deep in contrast with other dependencies in Wasmtime. This is the diff created from removingwasmtime-wasi-nnlocally, for example, meaning that all of these dependencies are exclusively used bywasmtime-wasi-nn:<details>
-name = "aes" -name = "base64ct" -name = "byteorder" -name = "bzip2" -name = "bzip2-sys" -name = "cipher" -name = "constant_time_eq" -name = "crunchy" -name = "der" -name = "deranged" -name = "half" -name = "hmac" -name = "inout" -name = "matrixmultiply" -name = "ndarray" -name = "num-complex" -name = "num-conv" -name = "openvino" -name = "openvino-finder" -name = "openvino-sys" -name = "ort" -name = "ort-sys" -name = "password-hash" -name = "pbkdf2" -name = "pem-rfc7468" -name = "powerfmt" -name = "rawpointer" -name = "safetensors" -name = "sha1" -name = "smallvec" -name = "socks" -name = "tar" -name = "tch" -name = "time" -name = "time-core" -name = "torch-sys" -name = "ureq" -name = "ureq-proto" -name = "utf-8" -name = "wasmtime-wasi-nn" -name = "webpki-root-certs" -name = "windows" -name = "windows-core" -name = "windows-implement" -name = "windows-interface" -name = "xattr" -name = "zip" -name = "zstd" -name = "zstd-safe"</details>
- Testing of
wasmtime-wasi-nnhas caused a lot of flakiness and issues historically. Right now it is disabled and there's as of yet no movement towards re-enabling it.- The implementation currently has a known CVE with it which we don't consider a CVE for Wasmtime since it's not tier 1, but it's still a significant issue.
Overall I subjectively feel that wasi-nn's development hasn't kept up with the rest of Wasmtime and I think it might be best to move development of it out-of-tree. For example a new bytecodealliance/wasmtime-wasi-nn repository could be created and development could move over there. This would lose integration with the
wasmtimeCLI but I'm not sure how broadly such integration is currently used.cc @jlb6740 and @rahulchaphalkar as y'all are the current maintainers of wasi-nn and I'm curious what your thoughts on this would be.
alexcrichton added the wasi-nn label to Issue #14937.
jlb6740 commented on issue #14937:
Hi @alexcrichton, thanks for expressing the concerns here and the suggestion. You are right, over the past year there has not been new development of wasi-nn nor a push to move to a higher phase. This has been for practical reasons only and should not be seen as an indictment of our support for the project. During this time, our best option and goal has simply been best-effort support while we figure out next moves. We do recognize and appreciate the support the core wasmtime team has shown during this period. We also recognized that questions would come and the grace period for figuring out how to handle wasi-nn moving forward would eventually end. Though I do think the individual issues you highlight could be resolved, your sentiment is the point and I agree with it. @rahulchaphalkar and I chatted earlier and in general we are supportive of the suggestion to move it out of tree. We do expect, beyond experimentation, that there are users of wasi-nn's integration with wasmtime, but to what extent we are not sure. So yeah, in support of reducing wasmtime dependencies and maintenance issues, let's explore your suggestion further.
alexcrichton commented on issue #14937:
@tschneidereit would you be able to make a bytecodealliance/wasmtime-wasi-nn repository to move the implementation into?
tschneidereit commented on issue #14937:
That already existed, and had Andrew as an admin. Maybe this plan had come up before?
In any case, I added @bytecodealliance/wasmtime-core, @jlb6740, and @rahulchaphalkar as admins and @bytecodealliance/wasmtime-wasi-reviewers as maintainers.
Johnnie and Rahul, would you be up for taking on the next step here, of seeding this repo with the result of extracting the implementation from the Wasmtime repo? Once you're happy with the state of things here, you can then open a PR against Wasmtime to remove the implementation there. One thing Alex and I talked about is that it might make sense to have a one-release deprecation period, where we'd print a warning if someone enables wasi-nn. I think that's relatively easy to do, but Alex would know for sure.
alexcrichton commented on issue #14937:
Warning should be easy yeah, it'd go around here
ChihweiLHBird commented on issue #14937:
I am interested in working on maintaining/contributing to the wasi-nn implementation, either in-tree or out-of-tree.
jlb6740 commented on issue #14937:
Hi @tschneidereit .. Yes we will work on .. likely can start the middle of next week. The plan for a deprecation period in this repo sounds good.
jlb6740 commented on issue #14937:
7\. I am interested in working on maintaining/contributing to the wasi-nn implementation, either in-tree or out-of-tree.
Hi @ChihweiLHBird Thanks for the show of interest and support, it is welcomed.
Last updated: Oct 31 2026 at 23:03 UTC