abrown opened PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/tests/example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [ ] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verifywasmtime-wasi-nn
works- [ ] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [ ] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown edited PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/tests/example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [ ] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [ ] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [ ] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown requested sunfishcode for a review on PR #2208.
abrown requested alexcrichton and sunfishcode for a review on PR #2208.
abrown requested alexcrichton, pchickey and sunfishcode for a review on PR #2208.
alexcrichton submitted PR Review.
sunfishcode submitted PR Review.
sunfishcode submitted PR Review.
sunfishcode created PR Review Comment:
Is this copy of SECURITY.md file still needed? Does this come from wasi-nn-rust-bindings previously living in its own repository?
sunfishcode created PR Review Comment:
For my curiosity, what is a .bdsignore file?
sunfishcode created PR Review Comment:
Is anyhow used in the witx-generation macros, or could it be a dev-dependency?
abrown submitted PR Review.
abrown created PR Review Comment:
Nope, comes from living in its own repository--removed.
abrown submitted PR Review.
abrown created PR Review Comment:
It's from Black Duck Protex, which we have to use in scanning code we release... I'll remove them.
abrown submitted PR Review.
abrown created PR Review Comment:
If I remove it:
error[E0433]: failed to resolve: use of undeclared type or module `anyhow` --> crates/wasi-nn/src/lib.rs:9:1 | 9 | / wasmtime_wiggle::wasmtime_integration!({ 10 | | // The wiggle code to integrate with lives here: 11 | | target: witx, 12 | | // This must be the same witx document as used above: ... | 25 | | missing_memory: { witx::types::Errno::MissingMemory }, 26 | | }); | |___^ use of undeclared type or module `anyhow` | = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
So it looks like it needs to be included?
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/tests/example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [ ] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [ ] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [ ] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/tests/example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [ ] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [ ] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [ ] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown edited PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/tests/example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [ ] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [ ] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown edited PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/tests/example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [ ] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/tests/example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [ ] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown edited PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [ ] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [ ] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown edited PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown edited PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown has marked PR #2208 as ready for review.
abrown requested alexcrichton and pchickey for a review on PR #2208.
abrown requested alexcrichton, pchickey and sunfishcode for a review on PR #2208.
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
abrown updated PR #2208 from wasi-nn-rebased
to main
:
This change adds a crate,
wasmtime-wasi-nn
, that useswiggle
to expose the current state of the wasi-nn API andopenvino
to implement the exposed functions. It includes an end-to-end test demonstrating how to do classification using wasi-nn:
crates/wasi-nn/examples/classification-example
contains Rust code that is compiled to thewasm32-wasi
target and run with a Wasmtime embedding that exposes the wasi-nn calls- the example uses Rust bindings for wasi-nn contained in
crates/wasi-nn/tests/wasi-nn-rust-bindings
; this crate contains code generated bywitx-bindgen
and eventually should be its own standalone crateThis change does not wire up wasi-nn to Wasmtime in any way that an external user would be able to observe.
Things to discuss:
- [x] the end-to-end classification test contains a 95MB model weight file which adds considerable weight to a
git clone
--what to do? Removing the test would mean that the CI could not verify thatwasmtime-wasi-nn
works- [x] the
openvino
crate is not yet published but should be when https://github.com/openvinotoolkit/openvino/pull/2342 is merged; this means that builds of this PR will fail until then [edit: I ended up publishing them prior to merging that PR; we are still trying to figure out where that code will end up]- [x] the
wasi-nn-rust-bindings
crate should probably be its own repository but I cannot move it there until I wade through Intel's external release process (for reference, it took me several weeks for theopenvino
crate); it could be moved to its own repository in a separate PR- [x] the last time we talked about this, the consensus was to hide the wasi-nn functionality behind a Cargo feature; I will check this item off once I figure out how to do that correctly but I wanted to get feedback on the current approach
alexcrichton submitted PR Review.
alexcrichton merged PR #2208.
Last updated: Dec 23 2024 at 12:05 UTC